【发布时间】:2014-10-15 14:09:03
【问题描述】:
在 C 中,函数总是将其值返回给调用函数,而不是返回给它自己(如果返回类型不是 void)。喜欢,
int main()
但由于 'main' 函数是由操作系统调用,它不是函数。那么,'main' 函数返回的值是谁呢?当使用表达式返回值时,值会去哪里
return(0);
在程序结束时?
【问题讨论】:
-
通常情况下,操作系统会使其对您的进程的父进程可用,(例如在
bashgo./yourprogram; echo $? -
void的返回类型是系统特定的。允许编译器,但不需要接受main的返回类型(int除外)——除非您使用独立(嵌入式)实现,否则根本没有充分的理由用返回类型定义main除了int。只需在末尾添加return 0;——或者如果您的编译器支持 C99 或更高版本,您可以省略它。 (一些 C 教科书推荐使用void main()。好 C 教科书不推荐。) -
而
int main()最好写成int main(void)。 -
相关问题。什么叫主要? stackoverflow.com/questions/3469955/…
-
在大多数情况下,
/dev/null
标签: c function return main return-type