您好,欢迎来到沃锋问答-赞臣社区旗下知识互动平台! [
请登录
]
|
[
免费注册
]
沃锋问答-赞臣社区旗下知识互动平台
问答首页
问答动态
问题库
问答专家
知识专题
站内公告
全部分类
>
电脑网络
全局变量局部变量问题
电脑网络
锋仔163
|
浏览481次
收藏
|
2019/05/02 07:06
满意回答
检举
|
2019/05/02 07:26
{ x=20;-----应该为 test() {int x=20;}}因为你直接使用了全局赋值,所以不管局部如何变化,结果还是全局20哦!
评论(0)
加载中...
癸巳蛇19_53
秀才
|
采纳率100%
|
回答于 2019/05/02 07:26
其他回答(5)
贝尔梅
静态局部变量通常放在函数内部,只能在函数内部,只进行一次初始化,每次执行函数时保持上一次执行时的值,如下代码所示:void func() {static int x = 0; // 在对func的三次调用中,x只进行一次初始化printf("%d\n", x); // 输出x的值x = x + 1;}int main(int argc, char * const argv[]){func(); // 输出0func(); // 输出1func(); // 输出2return 0;}静态全局变量是在全局变量前加一个static,使该变量只在这个源文件中可用,称之为全局静态变量,全局静态变量就是静态全局变量。在多文件组成的程序里,全局变量与全局静态变量是不同的。全局静态变量使得该变量成为定义该变量的源文件所独享,使它文件不能使用。
评论(0)
回答于 2019/05/02 09:01
加载中...
cy19731
你这个 x的定义不就是全局变量吗,后面所有的函数都可以对它操作
评论(0)
回答于 2019/05/02 08:42
加载中...
zxnzt_0
因为你对X超作了,赋予新值20,所以是20
评论(0)
回答于 2019/05/02 08:12
加载中...
lbxx200
赋予新值20
评论(0)
回答于 2019/05/02 08:03
加载中...
shmhlzy
你的test 里面没有用局部变量啊?直接全局用x,如果test(){int x=10;}就是你希望的。
评论(0)
回答于 2019/05/02 07:33
加载中...
相关已解决
4个回答
用qq登陆注册王者荣耀时,qq好友来自会收到提示吗?
1个回答
CPUi5-13400f显卡华硕4070主板华硕B760MKD来自5这个配置合适吗?
4个回答
这电脑怎么样,怎么升级
1个回答
pcb喷印机字来自符问题点是什么?
1个回答
一登录,就出现身份与密码不符,我也不知道是啥问题
1个回答
什么是C++
1个回答
如何不被设计?
1个回答
华硕B150M-ETSERIES
1个回答
怎么优酷视频来自下载的都不是MP4了
1个回答
进制转换c++代码小美刚刚学习了十六进制,她觉得很速安肉得群会互板烧形有趣,想到是不是还有更大的进制
0
人关注该问题
>>
>>
+1
加载中...