4

私はCでプログラムを作成しました。私のプログラムが返す値を確認する方法を知りたいです...つまり、コードの最後で、エラーが発生しなかった場合、私のプログラムはゼロを返します。エラーが発生した場合、プログラムは 1 を返す必要があります。それが問題です。何か問題が発生した場合に本当に 1 が返されるかどうかを確認したいと思います。メモリ リークなどについては、Linux で valgrind を使用しています。助けてくれてありがとう。

4

4 に答える 4

6

特別なシェル変数を出力するだけです$?。たとえば、次のようになります。

$ ./my_program ; echo "status = $?"
于 2012-11-26T10:01:55.527 に答える
2

私はあなたが探していると思います$?

スクリプトでプログラムを呼び出し、次を使用して戻り値を確認します$?

$?---it actually check the return code of the previously executed statement.
于 2012-11-26T10:02:06.510 に答える
2

それは簡単です

echo $?プログラムの実行直後に端末で使用します。

以前に実行されたコマンドの戻り値を提供します

例えば

./my_program.out  // execution of program 
echo $?    // checking the return value , printing on terminal
于 2012-11-26T10:02:20.730 に答える
0

通常、特定の戻りコードを考慮する必要はありません。シェルロジックを使用して、ゼロ以外の何かが返されたかどうかを検出できます。

失敗が返された場合にメッセージを出力するだけです
。/myprog|| エコー「何かがうまくいかなかった」

また

myprog1が成功を返した場合にのみmyprog2を実行します
。/myprog1&&./myprog2

于 2012-11-26T12:17:19.583 に答える