sunny said:
Hi All
What is C99 Standard is all about.
It takes a long time for standards to become widely adopted in the field.
It is portable among systems implementing the standard, if you can find
any.
i mean i saw
-std=C99 option in GCC
GCC is working towards C99 conformance, but it's not complete.
but there is no such thing in VC++.?
And Microsoft reports having no plans to implement this standard.
which one is better ANSI C / C99?
Which one is better, ketchup or mustard?
can i know the major difference between C99 & ANSI C standards?
What qualifies as "major" is a matter of opinion. Some important
differences
.. Identifiers have increased significant length
.. "//" style comments are allowed
.. Variable arguments in macros
.. Inline functions
.. Restricted pointers (can be "restricted" from pointing to the same
object.)
.. a _Bool type
.. Vars can be declared anywhere in a block
.. Functions no longer return 'int' by default
.. Last data member of a struct can be an array of unspecified size
.. Complex number type
.. Repeated type qualifier is folded into a single qualifier. (Though a
special case is made for "long long" which provides a 64 bit integer type.
The "restricted pointer" (two pointers cannot reference the same memory
address) allows compiler implementors to perform certain optimizations:
http://www.accu.informika.ru/accu/events/public/c_news.htm
Complex (and a distinct "Imaginary") type will have applications in
signal processing and number-theoretic algorithms. With Complex numbers
being a language feature, implementations may be able to optimize
arithmetic operations, so that for instance, library calls will not be
necessary for arithmetic.
Some of these standards are already de-facto standards in many systems,
like "//" comments, long identifiers, inline functions, 64-bit "long
long", incomplete array in a struct.
Some are no doubt going to lead to more obfuscation opportunities.
Vararg macros? I can see very useful application for that, but I can
see more potential for abuse.
Read "The Rationale for the C99 Standard"
http://std.dkuug.dk/JTC1/SC22/WG14/www/C99RationaleV5.10.pdf