4 ms·
ANSI C is not C89 anymore. Where's my prize? 8-)} The term "ANSI C" is still very commonly used to refer to the language described by the 1989 ANSI C standard.
by _kst_ 10y ago
ANSI C is not C89 anymore. Where's my prize? 8-)}
The term "ANSI C" is still very commonly used to refer to the language described by the 1989 ANSI C standard. This usage is strictly incorrect, but too firmly entrenched to ignore.
The 1990 ISO C standard describes the same language, and was officially adopted by ANSI, making the 1989 standard obsolete. The 1999 and 2011 ISO standards, both also officially adopted by ANSI, each officially made all earlier standards obsolete. If you want to refer to the language defined by the 1989 ANSI C standard (and described in K&R2), call it "C89" or "C90".
C11 might get more traction than C99 did, since gcc defaults to C11 plus GNU extensions starting with release 6. (But Microsoft's C compiler is still behind the times.)
- Paul_S 10y agoAll the compilers I ever used in my professional career could do C99 but most companies limit themselves to ANSI C (good luck convincing anyone that the term is incorrect!) for "compatibility" reasons and it's got nothing to do with Microsoft (who uses their compilers for C anyway?). Your prize for pointing out that the usage of ANSI C is incorrect is: disappointment in humanity.
- to3m 10y agoI used to use VC++ to build C code sometimes. People write software in C, and if you use VC++ you might want to compile it. C and C++ are not the same, and the fixing-up process can be time-consuming and error-prone, even assuming the code didn't go full C99 with anonymous aggregates and designated initializers. Fortunately, these days VS2013+ do an OK job of C99.
- deleted 10y ago[deleted]
- marssaxman 10y agoMy experience is that C99 has been universal outside the Microsoft world for years now - even for embedded programming. I can't remember the last time there was any trouble using it.
- Gibbon1 10y agoFar as I get Microsoft is a C++ shop which is why they didn't care about C after 89. For embedded stuff, my memory is hazy but I think much of what became C99 was available a number of years before the standard was released. Any event, 1999 was 17 years ago.