为什么我们在 C 语言的 main 中需要一个返回函数? 因为当我尝试在 main 中的 return 语句之后编写语句时,main 之后的语句没有被执行,但它应该在控制从调用函数返回到 main 之后执行,它应该执行 return 语句之后的语句,直到遇到右括号吗?
示例:
int main()
{
printf("Hello World");
return 0;
printf("hi"); // This does not gets executed
}
最佳答案
Why do we need a return function in main in C?
main()
的返回值返回到“系统”并解释为进程退出代码,例如可以在 shell 脚本和批处理文件中使用。以 Windows 为例:
> myprogram
Hello World
> echo myprogram returned %errorlevel%
myprogram returned 0
[...] it should execute the statement after the return statement till a closing bracket is encountered?
没有。当遇到return
(线索就在名称中!)或在右大括号处时,函数就会返回 - 以先发生者为准。 return 语句可以出现在函数中的任何位置,并且一个函数可以有多个 return 语句。如果在返回
之前遇到右大括号,则这是一个隐式返回,对于非void函数来说,如果调用者尝试使用返回值,则这是未定义的行为。
当您从 main()
返回时,控制权将返回到系统,并且在托管环境中终止进程,操作系统恢复资源、关闭文件等。
关于c - 为什么我们在使用 C 时需要在 main 中使用 return 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58779710/