主要功能 - 返回值的重点是什么?

时间:2012-02-29 15:42:59

标签: c++

  

可能重复:
  What should main() return in C/C++?
  What does main return?

我一直想知道这一点:main()函数末尾的return 0;语句的目的是什么?

我知道最后一个函数的return语句会向调用它的函数返回一个值。但是,据我所知,主要功能是程序的起点和终点,所以我有点困惑为什么它有一个返回类型呢?

main()
{
  //code goes here

  return 0; // <-- what is the point of this return statement?
}

编辑:我对编程(第一年计算机科学专业的学生)很陌生,在查看了一些答案后,听起来像返回语句用于告诉调用者函数是否已成功完成。除了操作系统和命令行之外,还有什么可以调用主函数吗?谢谢快速回答=)

4 个答案:

答案 0 :(得分:1)

它用于告诉运行程序的环境是否成功完成。如果要从脚本运行命令行工具,这对于命令行工具很重要。

成功时应返回零或EXIT_SUCCESS,失败时返回EXIT_FAILURE - 常量在<cstdlib>中定义。

如果您愿意,可以省略return末尾的main语句 - 结果与返回零相同。这只是main的特殊情况 - 您仍然必须从任何其他非void函数返回值。

  

除了操作系统和命令行之外,还有什么可以调用主函数吗?

否 - C ++特别禁止在程序中调用main

答案 1 :(得分:0)

返回通常表示进程是否正确执行。例如,如果出现错误,您可以返回-1。

答案 2 :(得分:0)

返回值为调用者提供退出状态。当您返回或exit(0)表示您的程序已成功运行并完成时。如果确定程序未成功完成,则可以返回其他值。顺便说一下签名是int main

答案 3 :(得分:0)

返回操作系统的值。例如,在基于UNIX的系统上,您可以使用$?

在shell或脚本中轮询值