By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,220 Members | 1,633 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,220 IT Pros & Developers. It's quick & easy.

Difference between C and advanced C

P: n/a
hello sir,

Sir will please tell me the exact difference between
C and advanced C...what are the extra features or funcions...etc added
in this advanced one.
Sep 24 '08 #1
Share this Question
Share on Google+
11 Replies


P: n/a
su***************@gmail.com writes:
Sir will please tell me the exact difference between
C and advanced C...what are the extra features or funcions...etc added
in this advanced one.
There is no standard definition of "advanced C," nor is any such
name in common usage. If you see someone referring to "advanced
C," then you will have to ask him what he means.
--
Ben Pfaff
http://benpfaff.org
Sep 24 '08 #2

P: n/a
su***************@gmail.com said:
hello sir,

Sir will please tell me the exact difference between
C and advanced C...
The exact difference is the word "advanced" followed by an extra space.
what are the extra features or funcions...etc added
in this advanced one.
None. C is C.

It occurs to me that you may mean the revision to the Standard that
occurred in 1999. If so, bear in mind that the jury is still out on
whether this constitutes an "advance" and that implementation support for
C99 is minimal, but the major changes it introduced are:

- restricted character set support via digraphs and <iso646.h>
(originally specified in AMD1)
- wide character library support in <wchar.hand <wctype.h>
(originally specified in AMD1)
- more precise aliasing rules via effective type
- restricted pointers
- variable-length arrays
- flexible array members
- static and type qualifiers in parameter array declarators
- complex (and imaginary) support in <complex.h>
- type-generic math macros in <tgmath.h>
- the long long int type and library functions
- increased minimum translation limits
- additional floating-point characteristics in <float.h>
- remove implicit int
- reliable integer division
- universal character names (\u and \U)
- extended identifiers
- hexadecimal floating-point constants and %a and %A printf/scanf
conversion specifiers
- compound literals
- designated initializers
- // comments
- extended integer types and library functions in <inttypes.hand
<stdint.h>
- remove implicit function declaration
- preprocessor arithmetic done in intmax_t/uintmax_t
- mixed declarations and code
- new block scopes for selection and iteration statements
- integer constant type rules
- integer promotion rules
- macros with a variable number of arguments
- the vscanf family of functions in <stdio.hand <wchar.h>
- additional math library functions in <math.h>
- floating-point environment access in <fenv.h>
- IEC 60559 (also known as IEC 559 or IEEE arithmetic) support
- trailing comma allowed in enum declaration
- %lf conversion specifier allowed in printf
- inline functions
- the snprintf family of functions in <stdio.h>
- boolean type in <stdbool.h>
- idempotent type qualifiers
- empty macro arguments
- new struct type compatibility rules (tag compatibility)
- additional predefined macro names
- _Pragma preprocessing operator
- standard pragmas
- _ _func_ _ predefined identifier
- VA_COPY macro
- additional strftime conversion specifiers
- LIA compatibility annex
- deprecate ungetc at the beginning of a binary file
- remove deprecation of aliased array parameters
- conversion of array to pointer not limited to lvalues
- relaxed constraints on aggregate and union initialization
- relaxed restrictions on portable header names
- return without expression not permitted in function that returns a value
(and vice versa)

--
Richard Heathfield <http://www.cpax.org.uk>
Email: -http://www. +rjh@
Google users: <http://www.cpax.org.uk/prg/writings/googly.php>
"Usenet is a strange place" - dmr 29 July 1999
Sep 24 '08 #3

P: n/a
On Tue, 23 Sep 2008 22:05:15 -0700, Ben Pfaff wrote:
There is no standard definition of "advanced C," nor is any such
name in common usage. If you see someone referring to "advanced
C," then you will have to ask him what he means.

I think he is an Indian student. My friend is computer teacher in Punjab
(INDIA) . Many students asked him "Sir, we want to learn advance C" . I
think by "advance C" they refer to the many of Indian books whihc are
titled by "Advanced C", quite different from "Learning C".

--
www.lispmachine.wordpress.com
my email is @ the above blog.
Google Groups is Blocked. Reason: Excessive Spamming

Sep 24 '08 #4

P: n/a

"Richard Heathfield" <rj*@see.sig.invalidwrote in message
news:w5******************************@bt.com...
su***************@gmail.com said:
> Sir will please tell me the exact difference between
C and advanced C...
It occurs to me that you may mean the revision to the Standard that
occurred in 1999. If so, bear in mind that the jury is still out on
whether this constitutes an "advance" and that implementation support for
C99 is minimal, but the major changes it introduced are:

- restricted character set support via digraphs and <iso646.h>
(originally specified in AMD1)
.....
- return without expression not permitted in function that returns a value
(and vice versa)
This sounds like a list of enhancements you might get when an application
goes from version 5.103 to 6.000.

Even then, it's debatable whether there are enough 'killer' features to
warrant the major version change.

--
Bartc

Sep 24 '08 #5

P: n/a
su***************@gmail.com wrote:
>
Sir will please tell me the exact difference between C and
advanced C...what are the extra features or funcions...etc added
in this advanced one.
There is no such thing as 'Advanced C'. C is described by the ISO
standards. See the following for information:

Some useful references about C:
<http://www.ungerhu.com/jxh/clc.welcome.txt>
<http://c-faq.com/ (C-faq)
<http://benpfaff.org/writings/clc/off-topic.html>
<http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf(C99)
<http://cbfalconer.home.att.net/download/n869_txt.bz2(C99, txt)
<http://www.dinkumware.com/c99.aspx (C-library}
<http://gcc.gnu.org/onlinedocs/ (GNU docs)
<http://clc-wiki.net/wiki/C_community:comp.lang.c:Introduction>

--
[mail]: Chuck F (cbfalconer at maineline dot net)
[page]: <http://cbfalconer.home.att.net>
Try the download section.
Sep 24 '08 #6

P: n/a
CBFalconer <cb********@yahoo.comwrites:
su***************@gmail.com wrote:
>>
Sir will please tell me the exact difference between C and
advanced C...what are the extra features or funcions...etc added
in this advanced one.

There is no such thing as 'Advanced C'. C is described by the ISO
standards. See the following for information:

Some useful references about C:
<http://www.ungerhu.com/jxh/clc.welcome.txt>
<http://c-faq.com/ (C-faq)
<http://benpfaff.org/writings/clc/off-topic.html>
<http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf(C99)
<http://cbfalconer.home.att.net/download/n869_txt.bz2(C99, txt)
<http://www.dinkumware.com/c99.aspx (C-library}
<http://gcc.gnu.org/onlinedocs/ (GNU docs)
<http://clc-wiki.net/wiki/C_community:comp.lang.c:Introduction>
If you'll change the tag for n869_txt.bz2 from "C99" to "pre-C99",
I'll stop bugging you about it.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
Nokia
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Sep 24 '08 #7

P: n/a
Keith Thompson wrote:
CBFalconer <cb********@yahoo.comwrites:
>su***************@gmail.com wrote:
>>>
Sir will please tell me the exact difference between C and
advanced C...what are the extra features or funcions...etc added
in this advanced one.

There is no such thing as 'Advanced C'. C is described by the ISO
standards. See the following for information:

Some useful references about C:
<http://www.ungerhu.com/jxh/clc.welcome.txt>
<http://c-faq.com/ (C-faq)
<http://benpfaff.org/writings/clc/off-topic.html>
<http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf(C99)
<http://cbfalconer.home.att.net/download/n869_txt.bz2(C99, txt)
<http://www.dinkumware.com/c99.aspx (C-library}
<http://gcc.gnu.org/onlinedocs/ (GNU docs)
<http://clc-wiki.net/wiki/C_community:comp.lang.c:Introduction>

If you'll change the tag for n869_txt.bz2 from "C99" to "pre-C99",
I'll stop bugging you about it.
If the result will fit into my (self-imposed) line length limits, I
will. :-) Meanwhile the downloader gets a package with a short
header describing exactly what it is, and an extension describing
the compression algorithm. He also gets the original name, n869,
which should provide a clue.

--
[mail]: Chuck F (cbfalconer at maineline dot net)
[page]: <http://cbfalconer.home.att.net>
Try the download section.
Sep 25 '08 #8

P: n/a
CBFalconer <cb********@yahoo.comwrites:
Keith Thompson wrote:
>CBFalconer <cb********@yahoo.comwrites:
[...]
>>Some useful references about C:
<http://www.ungerhu.com/jxh/clc.welcome.txt>
<http://c-faq.com/ (C-faq)
<http://benpfaff.org/writings/clc/off-topic.html>
<http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf(C99)
<http://cbfalconer.home.att.net/download/n869_txt.bz2(C99, txt)
<http://www.dinkumware.com/c99.aspx (C-library}
<http://gcc.gnu.org/onlinedocs/ (GNU docs)
<http://clc-wiki.net/wiki/C_community:comp.lang.c:Introduction>

If you'll change the tag for n869_txt.bz2 from "C99" to "pre-C99",
I'll stop bugging you about it.

If the result will fit into my (self-imposed) line length limits, I
will. :-) Meanwhile the downloader gets a package with a short
header describing exactly what it is, and an extension describing
the compression algorithm. He also gets the original name, n869,
which should provide a clue.
How does the name "n869" provide a clue to anyone who isn't already
following the C standard process?

Just change "(C99, txt)" to "(pre-C99)". The "txt" part really is
implicit in the file name.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
Nokia
"We must do something. This is something. Therefore, we must do this."
-- Antony Jay and Jonathan Lynn, "Yes Minister"
Sep 25 '08 #9

P: n/a
Keith Thompson wrote:
CBFalconer <cb********@yahoo.comwrites:
>Keith Thompson wrote:
>>CBFalconer <cb********@yahoo.comwrites:

[...]
>>> <http://cbfalconer.home.att.net/download/n869_txt.bz2(C99, txt)
<http://www.dinkumware.com/c99.aspx (C-library}
....
>>>
If you'll change the tag for n869_txt.bz2 from "C99" to "pre-C99",
I'll stop bugging you about it.

If the result will fit into my (self-imposed) line length limits, I
will. :-) Meanwhile the downloader gets a package with a short
header describing exactly what it is, and an extension describing
the compression algorithm. He also gets the original name, n869,
which should provide a clue.
.... snip ...
>
Just change "(C99, txt)" to "(pre-C99)". The "txt" part really is
implicit in the file name.
Done.

--
[mail]: Chuck F (cbfalconer at maineline dot net)
[page]: <http://cbfalconer.home.att.net>
Try the download section.
Sep 25 '08 #10

P: n/a
Richard Heathfield <rj*@see.sig.invalidwrote:
>
It occurs to me that you may mean the revision to the Standard that
occurred in 1999. If so, bear in mind that the jury is still out on
whether this constitutes an "advance" and that implementation support for
C99 is minimal
I'd say "limited" rather than "minimal" at this point.
--
Larry Jones

I must have been delirious from having so much fun. -- Calvin
Sep 28 '08 #11

P: n/a
On Wed, 24 Sep 2008 05:24:29 +0000, Richard Heathfield
<rj*@see.sig.invalidwrote:
<snipthe major changes [C99] introduced are:
(at least, assuming you trust its foreword <G>)
- restricted character set support via digraphs and <iso646.h>
(originally specified in AMD1)
- wide character library support in <wchar.hand <wctype.h>
(originally specified in AMD1)
I personally wouldn't call those 'introduced' in C99, but rather
something like 'incorporated' (into the base document).

<snip much>
- return without expression not permitted in function that returns a value
(and vice versa)
The 'vice versa' part is probably a (tiny) mistake; valued-return in
void-function was already a constraint violation in C89.

(And that's not even getting into the mathesophical debate about
whether 'void' does not have any value or has a nonexistent value.)

- formerly david.thompson1 || achar(64) || worldnet.att.net
Oct 6 '08 #12

This discussion thread is closed

Replies have been disabled for this discussion.