Xcode 與 C99 標準

寫程式時,迴圈是個避免不了的東西,而幾乎每個迴圈都會有個 counter。在大部分的情況下,這個 counter 是用過即丟的,因此我們常常會寫如下的 code:

for(int i=0; i<something; i++) {
some code here…
}

但是在 Xcode 下,這邊會跳出一個 C99 的 Error,原因是 gcc 預設的編譯規則是 C89,而早期的 C 規定所有的變數必須在一開頭宣告,不能在述句中宣告,因此這邊會跳出錯誤。不過對於這種用過即丟的 counter,我覺得事先宣告反而麻煩,因為會造成這個 counter 超出它所應用的 scope,事後反而容易造成問題。解決之道就是讓 gcc 改用 C99 規則。

要在 Xcode 中讓 gcc 改用 C99,請在 Groups & Files 中選取 project 名稱,然後按下 ⌘i 或工作列上的 Info,如下:
在跳出來的視窗右邊的搜尋欄位直接填入 C99,可以找到 C Languang Dialect 這項設定:

然後在 value 的選單中選取 C99 [-std=c99] 就可以了。

Contents

comments powered by Disqus