c语言 请问这个程序怎样计出来的?

2025-05-05 06:09:21
推荐回答(1个)
回答1:

int a=3;是全局变量
int a=5;是局部变量
C语言允许全局和局部变量同名,但不提倡这么做
同名且同时有效时,程序取作用域最近的一个。
所以main函数中 int a=3; int a=5 都有效,取作用域最近的a=5;并把5传给函数f
但是函数f中使用的是全局 int a=3,对main没有影响
所以最后打印的是a=5