main()返回什么?

时间:2012-10-18 16:59:23

标签: c

  

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

此功能返回什么值。只是简单的主要。

main()
{
...
}

如果一个函数有两个主电源,会发生什么?

3 个答案:

答案 0 :(得分:4)

  

此功能返回什么值。

main需要声明为返回int。返回值传递给调用者,调用者通常是操作系统。

  

5.1.2.2.1 Program startup

     

程序启动时调用的函数名为main。实施宣布否   这个功能的原型。它应该使用返回类型int和no来定义   参数:

int main(void) { /* ... */ }
  

或有两个参数(这里称为argc和argv,但可能有任何名称   使用,因为它们是声明它们的函数的本地函数):

int main(int argc, char *argv[]) { /* ... */ }

  

如果一个函数有两个主电源,会发生什么?

链接器报告错误。

答案 1 :(得分:1)

在C99 / C11中,如果在托管环境中达到main,则0会返回}。否则,返回值未定义。

  

C11,§5.1.2.2.2程序执行

     

[...]到达终止}函数的main返回值0.

答案 2 :(得分:0)

假设您正在使用C89或更早版本的编译器,那么<​​/ p>

main()
{
  ...
}

返回int。如果您使用的是C99或更高版本的编译器,则会出错。

从C99开始,如果在没有明确返回的情况下到达}的结尾main,则返回值为0.不确定C89或更早。

不确定“一个功能有两个主电源”是什么意思。如果程序定义了两个main函数,那么您很可能在链接时获得重复的定义错误。