c语言为什么全局变量不会替代局部变量中的值

全局变量作用于整个程序,为什么没有改写a的值?我知道局部变量不受全局变量影响,但是我想知道为什么?特别是将值传给函数的形参的时候,为什么全局变量的值无法给形参,而被局部变量传递成功了?为什么b作为全局变量成功传给了形参?

当局部变量与全局变量同名时,在局部变量作用域内. 全局变量会失去效果
即在main中, 使用到的所有a都是局部变量a而不是全局变量a.
要使用全局变量, 那唯一的办法是局部变量改名.
这个是C语言对局部变量和全局变量名称冲突做的一个规则.
温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答