2011-06-08 107 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