[英]C++ run error when using endl
我最近開始學習C ++,並且正在嘗試編譯和運行一個非常簡單的程序。
#include <iostream>
using namespace std;
int main() {
cout << "Hello World!" << endl;
cout << "Hello Again!";
return 0;
}
程序本身可以進行編譯,沒有任何錯誤,但是,當程序運行時,它似乎在cout << "Hello World!" << endl;
之后停止了cout << "Hello World!" << endl;
cout << "Hello World!" << endl;
。 我覺得這很奇怪,因為我的朋友正坐在我旁邊,做着完全相同的事情,並且對他有用。 當我嘗試使用sizeof();
會發生相同的事情sizeof();
; 它不返回任何值,但是,當我的朋友這樣做時,它可以工作。
當我在NetBeans中運行它時,它首先產生了錯誤
RUN FAILED(退出值255,總時間:2秒)
下次我運行它時,它生成了相同的錯誤,但是退出值不同。 盡管現在回到了255。
在NetBeans中運行調試器時,它會產生
SIGILL(非法指令)
停止工作之前的幾次。
我已經在默認目錄(C:\\ MinGW)上安裝了MinGW編譯器,這是NetBeans和任何其他程序使用的編譯器。 我還在“ Path”變量的末尾添加了系統環境變量的路徑:
; C:\\ MinGW的\\ BIN; C:\\ MinGW的\\ MSYS \\ 1.0 \\ BIN
嘗試在Atom中運行和編譯相同的代碼會導致
世界您好!按任意鍵繼續。 。 。
我嘗試重新安裝編譯器,然后重新啟動計算機。 這些似乎都不起作用。 我也嘗試過\\n
,它可以工作。 我的問題是,我的編譯器或計算機是否有問題,或者我缺少明顯的東西? 並且有可能解決這個問題嗎?
(抱歉,如果重復的話,我已經搜索了幾個小時,找不到有用的東西)
我找到了罪魁禍首! 在我的系統環境變量中, C:\\MingGW\\bin
和C:\\MingGW\\MSYS\\1.0\\bin
位於列表的底部。 這意味着它位於C:\\Program Files (x86)\\GNU\\GnuPG\\pub
(如果我沒記錯的話,我認為是另一個編譯器)。
盡管NetBeans中的所有路徑都是正確的,但是當MinGW上方列出了另一個編譯器時,系統似乎不喜歡它。
我通過將MinGW的路徑向上移動到GNU之上來解決了這個問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.