What is the difference between C and C99?

1

I saw C99 in text and I was curious is there any difference between normal C and C99?

    
asked by anonymous 02.05.2018 / 21:04

1 answer

6

C is the language. At 84, if I'm not mistaken it became officially ANSI.

At 89 it has had its spec ratified worldwide and some people call it C89. In 99 there was an update of this specification called C99 and finally had another in 2011 called C11.

Compilers should conform to one of the specifications and say this.

A draft of it.

Obviously, every revision brings new features (well, C11 left some before mandatory as optional, and made some others obsolete).

Some examples of new features added to it:

  • Online Functions
  • Removing restrictions on the location of the variable declaration (as in C ++)
  • Addition of several new data types, including long long int (to minimize problems in the 32-bit to 64-bit transition), an explicit boolean data type (called _Bool), and a complex type that represents complex numbers
  • Variable-length data vectors (the vector may have a different size at each run of a function, but does not grow after it is created)
  • Official support for line comments initiated by //, borrowed from the C ++ language
  • Several new library functions, such as snprintf ()
  • Several new header files, such as stdint.h

More .

    
02.05.2018 / 21:27