Some seem to say that one should avoid C99 features in C code as compilers don't really support those features. C99 is a standard from 1999, shouldn't these features be quite widespread now?Should one avoid using C99 features in new code? In legacy code? I happen to use some C99 features quite often, should I stop doing that or be more careful with the use of those features?
Should one avoid or be careful with C99 features in C code?
programming languages;c;standards;c99
Depends on how portable your code needs to be. C compilers support C99 features to a very different degree, and that can be a problem. See here for details: http://en.wikipedia.org/wiki/C99#ImplementationsPersonally, I would stick with C89/C90 unless I was certain I would always compile the code with the same compiler.