mil*_*sma 3 c c++ compiler-construction gcc
我编写了一段时间的C++.现在我想编写ANSI C程序,不希望代码中有任何"仅C++"功能.我正在使用安装了gcc的cygwin 64位.如果遇到C++功能,是否有任何设置让gcc提示编译错误?比如stl.
先感谢您.
以下内容摘自gcc文档:
最初的ANSI C标准(X3.159-1989)于1989年批准并于1990年出版.该标准于1990年后期被批准为ISO标准(ISO/IEC 9899:1990).这些出版物之间没有技术差异,虽然ANSI标准的部分重新编号并成为ISO标准的条款.从其批准之日起,该标准通常称为C89,或偶尔称为C90.ANSI标准,但不是ISO标准,也带有基本原理文档.要在GCC中选择此标准,请使用以下选项之一-ansi,-std = c90或-std = iso9899:1990; 要获得标准所需的所有诊断,您还应指定-pedantic(或-pedantic-errors,如果您希望它们是错误而不是警告).
因此,使用以下标志进行编译:
gcc myfile.c -ansi -pedantic-errors
Run Code Online (Sandbox Code Playgroud)
请注意,-ansi和-std = c90是同义词.有关选项的完整列表,请参阅选项控制C方言.