c++定义全局变量后在子函数中的值改变了但是在主函数中的值还是0

如题所述

你是不是定义了全局变量后又在子函数或者主函数里面定义了同名的变量,如果是这样的话,主函数或者子函数使用的是该函数里面定义的变量(局部变量),全局变量被自动忽视了。但是局部变量不影响全局变量的值。
所以,无论你是在主函数、还是子函数,或者两个里面都定义了同名变量,你在子函数中更改值是达不到目的的。
希望对楼主有用。
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-07-22
一般情况下,假如没有局部声明变量,就会调用全局变量,
如果声明了局部变量,则,局部变量会屏蔽全局变量。
除非你指定调用全局变量,加上作用域操作符::
第2个回答  2012-10-05
你定义全局变量之后再子函数中有extern声明一下 这样就会改变了
第3个回答  2012-10-04
代码呢?(你肯定哪个地方写错了)
相似回答