Quelqu'un a mentionné le compilateur Intel a support C99. Il y a aussi le Comeau compilateur C/C++ qui prend totalement en charge du C99. Ce sont les seuls que je suis au courant de.
C99 fonctionnalités que je n'utilise pas parce qu'ils ne sont pas bien pris en charge comprennent:
- tableaux de longueur variable
- les macros avec un nombre variable de paramètres.
C99 fonctionnalités que j'utilise régulièrement et qui semblent être assez bien pris en charge (sauf par Microsoft):
stdint.h
-
snprintf()
- MS a un non-standard _snprintf()
qui a de sérieuses limitations de ne pas toujours null de la fin de la mémoire tampon et en n'indiquant pas la taille de la mémoire tampon doit être
Pour contourner Microsoft de soutien, j'utilise un domaine public stdint.h
de MinGW (que j'ai modifié à travailler sur VC6) et un près de domaine public snprintf()
de Holger Weiss
Les éléments qui ne sont pas pris en charge par Microsoft, mais encore l'utiliser sur d'autres compilateurs en fonction du projet comprennent:
- mixte déclarations et le code
- les fonctions inline
-
_Pragma()
- ce qui rend la pragmas beaucoup plus utilisable