#include <stdio.h>
int add(int, int);
int main(int argc, char const *argv[])
{
int a = 2, b = 3;
printf("%d %d %d\n", a, b, add(a, b));
return 0;
}
int add(int a, int b) {
int c = a + b;
return;
}
Run Code Online (Sandbox Code Playgroud)
上面程序的输出是2 3 5,如何在不显式返回的情况下返回c函数
这是未定义的行为.
当一个应该返回值的函数不这样做并且调用者使用返回值时,它是未定义的.您可能观察到的任何事情纯粹是偶然/平台特定的行为,不能依赖.C标准当然不能保证.
从C11草案,6.9.1函数定义/ 12:
如果到达终止函数的},并且调用者使用函数调用的值,则行为是未定义的.
| 归档时间: |
|
| 查看次数: |
115 次 |
| 最近记录: |