帮我解释此程序的第二个return 语句的作用 ,为什么少了它程序不会出错,它的返回值是给谁的?
发布网友
发布时间:2022-04-03 09:31
我来回答
共3个回答
热心网友
时间:2022-04-03 11:00
返回值的作用
main函数的返回值用于说明程序的退出状态。如果返回0,则代表程序正常退出;返回其它数字的含义则由系统决定。通常,返回非零代表程序异常退出。下面我们在winxp环境下做一个小实验。首先编译下面的程序:
int main( void )
{
return 0;
}
然后打开附件里的“命令提示符”,在命令行里运行刚才编译好的可执行文件,然后输入“echo%ERRORLEVEL%”,回车,就可以看到程序的返回值为0。假设刚才编译好的文件是a.exe,如果输入“a && dir”,则会列出当前目录下的文件夹和文件。但是如果改成“return -1”,或者别的非0值,重新编译后输入“a && dir”,则dir不会执行。因为&&的含义是:如果&&前面的程序正常退出,则继续执行&&后面的程序,否则不执行。也就是说,利用程序的返回值,我们可以控制要不要执行下一个程序。这就是int main的好处。如果你有兴趣,也可以把main函数的返回值类型改成非int类型(如float),重新编译后执行“a && dir”,看看会出现什么情况,想想为什么会出现那样的情况。顺便提一下,如果输入a || dir的话,则表示如果a异常退出,则执行dir。
参考资料:http://zhidao.baidu.com/question/110077514.html?si=1
热心网友
时间:2022-04-03 12:18
这是一个标准的C语言规范。在main()中,return 0表示返回一个整形,正常结束。不过在小程序中一般不用注意这个,写不写无所谓了
热心网友
时间:2022-04-03 13:53
这个return的含义在你这个程序中意义不大,它只是标志着程序结束。因为你并没有更高层的抽象用到这个返回值。由于你的程序本身到return语句就已经没有代码了,所以意义完全没有了。
但是最好还是加上,这比较符合C语言的规范。另外,最好把main 该为 int main ,实在不需要返回值的话,可以用 void main