2011-05-12 13 views
0

netbeans IDEから最初のC++プログラムを実行しようとしていますが、明らかに私は(?)ですが、最後にエラーメッセージが表示されます。ここ はコードです:netbeansはcppアプリケーションを実行しません(thoビルドは成功です)

#include <iostream> 

using namespace std; 

void func(){ 
    for(int i =1;i<6;i++) 
     cout<<endl<<"tony tests "<<i; 
} 
int main() { 
    cout<<" p"; 
    func(); 
    return 1; 
} 

そして、ここでは、出力されます(右のプロジェクト、選択したプロパティをクリック - >実行 - >コンソールタイプ=出力ウィンドウがデフォルトではない、それ以外の場合は、sh.exeウィンドウを開き、私のメッセージます私は、このエラーメッセージが出ない理由

p
tony tests 1
tony tests 2
tony tests 3
tony tests 4
tony tests 5
RUN FAILED (exit value 1, total time: 78ms)

だから、どのように私はT +私はデバッグすることができ、コードの実行を妨げるdoesnのも、カントー(問題を修正することができます)が印刷されますコードどのような状況で(このエラーメッセージが表示される)問題が原因でコードが正しく実行されない、または全く実行されない可能性がありますか?また、出口値1とは何ですか?

+2

あなたのコードは 'main()'から1を返します。それが「出口値」の由来です。試してください 'return 0;' – quamrana

答えて

4

0以外の終了値はOSにエラーを示すので、main()から1を戻すと、OSはコードの実行中にエラーが発生したと判断し、実行の最後にエラーメッセージを表示します。戻り値を0に変更すると問題が解決します。

終了値1は、ほとんどのプラットフォームでは「一般的なエラー」とみなされます。たとえば、POSIXでは、エラーマクロEXIT_FAILUREは値1と等しいです。exit()に渡された値、またはmain()から返された値は、0〜255の間でなければなりません。

終了ステータス値の詳細については、hereを参照してください。

+0

ありがとう、すばらしい説明 – Sprin

0

Jasonが正しく指摘しているように、どのオペレーティングシステム(すべてのLinuxでもWindowsについてはわかりません)は、エラーとして0ではない、成功として0を返します。各番号に関連付けられた特定のエラーがあります。 C/C++プログラミングでは、errno.hを使用して、ファイルが見つからないか、ファイルポインタのヌルまたはエラーのようなエラーを出力できます。

関連する問題