c语言全局变量问题。
现有2个文件,被放在同一个工程中。如果在两个文件的函数外部定义同名的变量,比如:都在函数外定义int a=1;是否正确?为什么?
c语言全局变量问题。 现有2个文件,被放在同一个工程中。如果在两个文件的函数外部定义同名的变量,
答案:2 悬赏:0
解决时间 2021-02-28 09:17
- 提问者网友:很好的背叛
- 2021-02-28 03:32
最佳答案
- 二级知识专家网友:承载所有颓废
- 2021-02-28 04:32
这样定义,在编译时,会报重复定义变量a! 未加修饰说明的全局变量,其作用范围为整个工程!
修改如下:
在变量定义前,增加 static说明,仅让该全局变量在 定义所在的文件可见。
stctic int a=1 ;
修改如下:
在变量定义前,增加 static说明,仅让该全局变量在 定义所在的文件可见。
stctic int a=1 ;
全部回答
- 1楼网友:茫然不知崩溃
- 2021-02-28 06:00
如果全局变量和局部变量重名,局部变量将覆盖全局变量。
所以局部a覆盖全局a
main内a = 8
但是全局b你没有重名的,所以,main中b是全局变量b=5
懂?覆盖的只是重名的,不是全部的,懂?
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |