C 中以下程序的输出将是什么?我基本上很困惑 main() 将首先调用 t1() 还是 t2()。
#include <stdio.h>
int a=40;
int t1()
{
int a=20;
return a;
}
int t2()
{
int a=30;
return a;
}
int main()
{
int k=t1() + t2();
printf("%d",k);
return 0;
}
C 中以下程序的输出将是什么?我基本上很困惑 main() 将首先调用 t1() 还是 t2()。
#include <stdio.h>
int a=40;
int t1()
{
int a=20;
return a;
}
int t2()
{
int a=30;
return a;
}
int main()
{
int k=t1() + t2();
printf("%d",k);
return 0;
}
由于所有函数都返回局部变量的值,因此您的代码与此相同:
int a = 40;
int t1() { return 20; }
int t2() { return 30; }
int main() { printf("%d", t1() + t2()); }
或者,更简单:
int a = 40;
int main() { printf("%d", 20 + 30); }
或者更简单:
int a = 40;
int main() { fputs("50", stdout); }
在第一个版本中,首先计算哪个函数调用子表达式既未指定也不相关。