Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is C99 support really still not widespread?

I was reading through some of the best practices for the GNOME project, and one thing that they kept stressing was avoiding C99 features, as support was still not widespread. Some of the things they mentioned were features like single-line comments and declaring variables in the middle of a block. It made me wonder, is C99 support, even for basic features like // comments, really still not widespread? It's been almost 15 years now since the standard was adopted, and we've even had a new standard come out in that time. Is this really still an issue?

like image 945
Rose Kunkel Avatar asked Jun 04 '13 02:06

Rose Kunkel


People also ask

Is C99 still used?

Today ANSI-C is now far more widely available and accepted than was old C, and the C99 standard is rapidly gaining wider use. C is again being required for many government tenders and being used in all universities and significant information technology-based companies.

Is C99 old?

The standard underwent further revision in the late 1990s, leading to the publication of ISO/IEC 9899:1999 in 1999, which was adopted as an ANSI standard in May 2000. The language defined by that version of the standard is commonly referred to as "C99".

Should I use C99?

Bottom line: use C99 unless you need to support MSVC, in which case you're stuck with C89. Note that VLAs were made optional in C11, due to implementation difficulty.

What is the difference between C99 and C11?

C11 is the latest ANSI C specification, ISO/IEC 9899:2011. C11 looked to address the issues of C99 and to more closely match the C++ standard, C++11. It changes some C99 features required to optional. Some of the features include variable length arrays and complex numbers.


1 Answers

http://en.wikipedia.org/wiki/C99#Implementations

Seems like it still is a bit of an issue, even in GCC, though it looks like some commercial compilers have implemented the entire standard.

Microsoft have said repeatedly there are no plans to implement the C99 standard at any point in the future which is a shame for C programming on Windows.

like image 119
Nobilis Avatar answered Sep 23 '22 10:09

Nobilis