【发布时间】:2013-06-03 06:15:08
【问题描述】:
是否为 -std=c99 提供了子选项,以便我可以通过这些子选项并避免通过 -std=c99?
例如:
int main()
{
for(int i=0;i<10;i++)
{
i++;
}
return 0;
}
我会通过传递任何子选项来用 gcc 编译这段代码。
$ gcc -sub-option-for-c99 a.c
谢谢
编辑:我只想从 C99 中选择一个特性,同时将编译器的其余部分保持在 C89(或其他)模式。
【问题讨论】:
-
什么是子选项?
-
我完全不明白 -
-std=c99的子选项是什么?还有为什么要避开路过-std=c99(或许你想用std=gnu99?) -
@Prof.Falken 是 c99 的最小版本,它解决了 c99 提供的特定结构。
-
所以您只想从 C99 中选择一个特性,同时将编译器的其余部分保持在 C89(或其他)模式下?
-
C99 对功能的子设置没有太多规定(基本上没有子设置)。 C11 确实对此有一些规定。但是,实现的细节往往由实现控制,而不是程序员可以通过诸如
-std=c11或-std=gnu11之类的整体开关来更改的东西。这是说“不”的冗长方式。
标签: c gcc compiler-construction c99