2015-11-25 47 views
1

我最近在我的Mac上安裝了xcode命令行工具。它的操作系統是10.9.5版本。爲了測試出G ++編譯器我創建了一個簡單的「Hello World」 C++程序,把它稱爲program.cpp並把它放在我的桌面上:g ++編譯器給終端帶來奇怪的錯誤

#include <iostream> 

using namespace std; 

int main() 
{ 
    cout<<「Hello World」; 
    return 0; 
} 

然後,我打算創建program.cpp的編譯版本,打開終端,改變了我的目錄到桌面,並輸入以下命令:

g++ -o program program.cpp 

我收到以下編譯錯誤:

program.cpp:7:11: error: non-ASCII characters are not allowed outside of 
     literals and identifiers 
    cout<<「Hello World」; 
     ^
program.cpp:7:14: error: use of undeclared identifier 'Hello' 
    cout<<「Hello World」; 
     ^
program.cpp:7:25: error: non-ASCII characters are not allowed outside of 
     literals and identifiers 
    cout<<「Hello World」; 
        ^
3 errors generated. 

這是使用命令行工具或索姆問題還有什麼?任何幫助,將不勝感激。

+0

確定你輸入的方法是英文的,如果你輸入上面的代碼 – Ra1nWarden

回答

3

您沒有使用雙引號字符:

「Hello World」 

是不一樣的:

"Hello World" 

我想這是由於複製和粘貼從PDF或什麼的,像Word這樣的程序喜歡將「」改爲「」。

另外,如果您使用的是Xcode命令行工具,則實際上使用的是clang而不是g ++。

+0

我在文本編輯中鍵入代碼,但是我沒有意識到雙引號字符的問題,我會在atom中再試一次。至於g ++ clang的差異,我試着在別人的mac上都運行,所以這可能不是問題。 –

+0

如果英語不是你的第一語言,那麼你可能知道mor Ë關於這些問題如何發生。鏗鏘評論與問題無關,因此您需要知道您實際上並未使用GNU產品(例如,鍵入'g ++ --version')。 – trojanfoe

+0

@OrrenRavid不要在TextEdit中編寫代碼,也不要在用於編寫「普通」文本的任何其他代碼中編寫代碼。使用(程序員)文本編輯器 - 有許多可供選擇 - 或者像XCode這樣的IDE。 – molbdnilo

0

有可能是一個「美國國際 - PC」輸入法Mac上的設置(假設你是在Mac),以及具有重音字符,這導致「」當你希望插入「'

enter link description here