Sup*_*k94 -5 c return function
当没有返回语句时,int类型返回语句的返回值是什么
为什么?
int func()
{
printf("Hello");
}
int func1()
{
}
void main()
{
int s,p;
s=func();
p=func1();
printf("%d %d", s, p);
}
Run Code Online (Sandbox Code Playgroud)
在C(这是问题是如何标记),两者的返回值func和func1未定义.
C11(n1570),§6.9.1函数定义
如果
}终止了函数,并且调用者使用了函数调用的值,则行为是未定义的.
而且,在托管环境中,main返回类型应该是int,而不是void.顺便说一下,有一个例外:在C99和C11中,如果到达}终止main(*),返回到环境的值为0.
(*)如果其返回类型兼容int.