在C语言中,一个函数always将其值返回给调用函数,而不是返回给其自身(如果返回类型不为 void). Like,
int main()
但是由于 'main' 函数是由操作系统调用,即不是一个函数。那么,“main”函数返回值给谁呢?当使用表达式返回值时,该值会去哪里
return(0);
在程序结束时?
这完全是特定于操作系统的,但通常操作系统通过以下方式调用程序
- 设置程序的地址空间,
- 在操作系统内部的某个位置创建新进程的记录,
- 启动自己的自定义函数,该函数调用
main
并将返回值存储在操作系统内部。
我在 (3) 中提到的函数通常是一个很好的老式 C 函数,它只是跳转到main
所以它可以捕获返回值main
就好像它是一个普通的 C 函数(事实上也是如此)。然后,它将该值存储在操作系统域中的某个位置,以便需要读取返回值的进程可以这样做。
希望这可以帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)