4

我用 C 创建了一个程序。我想知道,如何检查我的程序返回的值......我的意思是,在代码的末尾,如果没有发生错误,我的程序将返回零。如果发生错误,我的程序应该返回 1。这就是问题所在,如果出现问题,我想看看是否真的返回了 1。对于内存泄漏等,我在 Linux 上使用 valgrind。感谢您的任何帮助。

4

4 回答 4

6

您可以只打印特殊的 shell 变量$?,例如:

$ ./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

通常你不必考虑具体的返回码,你可以使用 shell 逻辑来检测是否返回了非零的东西。

如果返回失败,只需打印一条消息
。/myprog || echo "出了点问题"

或者

仅当 myprog1 返回成功时才运行 myprog2
./myprog1 && ./myprog2

于 2012-11-26T12:17:19.583 回答