J'essaie d'obtenir Visual Studio pour appliquer la norme ANSI C lors de la compilation d'un projet, mais je n'arrive pas à le faire fonctionner. Des astuces? J'ai lu tous les tutoriels, j'ai activé l'option/Za, et nommé mon fichier comme .c (pas .cpp). Toutefois, le programme suivant se construit encore avec succès:Appliquer la norme ANSI C dans Visual Studio 2015
#include <stdio.h>
void main(void)
{
for (int i = 0; i < 10; i++)
{
}
int f = 0;
}
Mais il ne devrait pas. Il devrait être comme celui-ci à respecter la norme ANSI C:
#include <stdio.h>
void main(void)
{
int i;
int f = 0;
for (i = 0; i < 10; i++)
{
}
}
je voudrais l'équivalent des options du CCG « -ansi » et « -Wpedantic ». Est-ce encore possible en VS?
Le premier programme entièrement (à l'exception du bit «void main») est conforme à la norme ANSI C actuelle qui est la même que la norme ISO c courante, communément appelée C11. VS2015 ne le supporte pas. Il ne prend en charge qu'une norme * ancienne *, C99, à laquelle ce programme est également conforme. Si vous souhaitez vous conformer à d'autres normes comme C89/90, vous devez rétrograder votre jeu d'outils à quelque chose comme v100 (VS2010) ou utiliser un autre compilateur. Il n'y a rien comme le drapeau '-std' dans MSVC. –