2011-06-08 71 views
0

我可以设置gcc编译器只编译C代码吗?我主要关心的是,如果我尝试使用任何C++语法,或者甚至尝试使用STL,我的想让得到编译器错误。由于我使用的是Codeblocks,如果您可以指出如何在那里更改它,那将是非常好的,但我相信我会弄清楚这一点。gcc编译器配置:否C++!

+0

不得不认识到,选择“C”作为项目语言是有用的。然而,如果你可以“手动”改变这个问题,那么你仍然会留下这样的问题,比如说你不小心为你的项目选择了C++,现在你想把它改成C. – AudioDroid 2011-06-08 15:06:18

回答

0

使用-std选项,例如gcc -std = c89表示您希望它的行为就像编译C89代码一样。你也可能想使用-pedantic选项,并给你的文件.c扩展名,而不是.cpp。另外,gcc喜欢允许自己的扩展,它们不是C或C++的一部分,并且-pedantic会将其中大部分扩展掉。

+0

为什么'-pedantic'?他试图远离C++,不遵循标准的字母。 – cnicutar 2011-06-08 15:07:51

+0

@cnicular查看我的编辑。遵循标准的信件是一件好事。 – 2011-06-08 15:10:56

+0

@Neil Butterworth我想我明白你的观点。不过,我*喜欢* c99的某些功能。 – cnicutar 2011-06-08 15:15:26