如何知道 VS2019 编译器支持哪个版本的 C?我查看了项目 C/C++ 和 Linker 命令行,发现没有 -std=Cxx 标志。以下代码编译:
for (int i = index; i < nb_users - 1; i++) {
users[i] = users[i + 1];
}
所以我猜根据 this 是 C99,但是有没有办法在 VS2019 的某个地方检查它?
最佳答案
VS2019 支持 ANSI C90 以及 C++ 所需的一些后续标准中的一些其他功能。
例如,您可以通过以下代码判断 MSVC 不完全支持 C99,这将无法编译:
int foo(int n, char *s)
{
char s2[n];
strcpy(s2, s);
return !strcmp(s, s2);
}
MSVC 不支持此特定功能(可变长度数组),而您提到的功能(
for
循环初始声明)是。关于c - VS2019 编译器支持哪个版本的 C?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57965155/