main()函数返回值?

有人请告诉我’C’语言的main()函数返回其值的位置?

C的main函数返回一个int … int执行它的程序(父进程,如果你愿意)作为退出状态代码。

具体来说,在大多数操作系统上,0退出代码表示正常运行(没有实际错误),非零表示存在问题,程序必须exception退出。

如果main()函数用作程序的退出状态代码,则返回值。

在shell中,您可以使用$?获取程序的退出状态,例如:

 ./prog exit_status=$? 

从C99标准:

5.1.2.2.3程序终止

1如果main函数的返回类型是与int兼容的类型,则从初始调用到main函数的返回等同于调用exit函数,其中main函数返回的值作为其参数;

然后

7.20.4.3 exitfunction

5最后,控制权返回到主机环境。 如果status的值为零或EXIT_SUCCESS ,则返回状态成功终止的实现定义forms。 如果status的值为EXIT_FAILURE ,则返回状态为不成功终止的实现定义forms。 否则返回的状态是实现定义的。

简而言之, main的返回值以实现定义的forms返回到主机环境。

mainfunction是libery在任何可能的时刻返回它的值。 你只需写:

 return my_return_value; 

这是游戏结束。

一般声明是: Function向主机环境返回一个值。

所以main()会将值返回给托管该代码或OS的任何程序或shell。

返回值0被视为成功执行