Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 何时使用exit()代替return?_C++_C_Return_Exit - Fatal编程技术网

C++ 何时使用exit()代替return?

C++ 何时使用exit()代替return?,c++,c,return,exit,C++,C,Return,Exit,我想知道什么时候应该在return语句上使用exit()函数。我可以用以下任一语句结束程序: exit(0); or return; 我应该使用哪一种,何时使用? 使用exit() exit()用于立即终止程序。如果从应用程序的任何部分遇到对exit()的调用,应用程序将完成执行 return用于将程序执行控制返回给调用方函数。仅在main()的情况下,return完成执行 编辑: 为了澄清在main()中使用时的情况,直接引用C11标准第§5.1.2.2.3章,程序终止 如果m

我想知道什么时候应该在
return
语句上使用
exit()
函数。我可以用以下任一语句结束程序:

exit(0);

  or

return;
我应该使用哪一种,何时使用?
使用
exit()

  • exit()
    用于立即终止程序。如果从应用程序的任何部分遇到对
    exit()
    的调用,应用程序将完成执行
  • return
    用于将程序执行控制返回给调用方函数。仅在
    main()
    的情况下,
    return
    完成执行

编辑:

为了澄清在
main()
中使用时的情况,直接引用
C11
标准第§5.1.2.2.3章,程序终止

如果
main()
函数的
return
类型与
int
兼容,则从初始调用
main()
函数的
return
相当于调用
exit()
函数,将
main()
函数返回的值作为其参数;11) 到达终止请求的
}
main()
函数返回值
0
。如果返回类型与
int
不兼容,则返回到主机环境的终止状态未指定

所以,基本上

  • 返回0
  • 退出(0)

将在
main()

的上下文中表现相同,因此在main函数中两者的工作方式相同吗?@SouravKanta更新了我的答案。现在检查一下。