2011-04-09 66 views
0

當我使用Xcode(3.1.4 Leopard)以純C編寫代碼(使用創建「main.c」的「標準工具」模板)時,編譯器的行爲類似於編譯器。它允許單行註釋(比如「// comment here」),它允許在for循環初始化器中聲明一個變量(例如「for(int i = 0; ...)」),它甚至允許內聯函數(但是然後鏈接器報告該符號無法找到,很好)。Xcode:strict C編譯?

我該如何設定它更嚴格?我擔心不小心編寫C++,並且一旦我在不同的系統上編譯它,就必須糾正很多代碼。

另外,當你不編寫Objective C時,Xcode不會自動關閉括號是正常的嗎?

感謝您的任何建議! :)

回答

2

所有這些所謂的「C++功能」實際上都是C的一部分。所有這三個都是在C99中添加的。

如果您使用GCC進行編譯,您可以使用-std=c89來強制編譯器進入C89/C90模式。

+0

謝謝!我不知道有除K&R和ANSI C以外的其他版本,所以如果C99已經存在超過10年了,我想它應該是安全的:) – user699737 2011-04-09 08:46:00