C语言问题? 能具体解释一下为什么吗,谢谢了。... 能具体解释一下为什么吗,谢谢了。 展开 我来答 2个回答 #热议# 什么是淋病?哪些行为会感染淋病? syht2000 高粉答主 2019-12-29 · 关注我不会让你失望 知道大有可为答主 回答量:3万 采纳率:79% 帮助的人:1.4亿 我也去答题访问个人页 关注 展开全部 int a=4;void main()int a=2; //这种局部变量,会隐藏掉上一级定义的同名变量,下面也是一样{int a=0;跟上面一样,这里定义的a只有本层{}中有效。所以上面的复合语句中,会输出0,下面调用sub1时,实际上传入的是main中的int a=2;又有a=a-1,所以会输出1,下面也是一样的,main中的a值并未变化,还是2,所以输出2,当调用sub2时,因为最外层的全局a并未被隐藏,所以会输出4 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 匿名用户 2019-12-29 展开全部 你应该去看一下C语言变量的作用域,看完马上就明白了,直接百度搜“C语言 作用域” 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询 其他类似问题 2021-07-21 c语言问题? 70 2020-06-06 c语言问题? 45 2020-05-27 关于C语言的几个问题? 10 2017-12-16 C语言报错的问题? 2020-05-31 C语言问题? 54 2020-05-13 c语言问题? 41 2020-05-20 C语言问题? 29 2020-06-17 C语言问题? 更多类似问题 > 为你推荐: