首页
社区
课程
招聘
局部静态变量在跳出函数以后数据是否会清零
发表于: 2012-12-9 11:36 7030

局部静态变量在跳出函数以后数据是否会清零

2012-12-9 11:36
7030
局部静态变量在跳出函数以后数据是否会清零

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (11)
雪    币: 1708
活跃值: (586)
能力值: ( LV15,RANK:670 )
在线值:
发帖
回帖
粉丝
2
静态局部变量和全局变量的差别只是作用域不同,仅此而已。
2012-12-9 11:48
0
雪    币: 544
活跃值: (264)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
3
不会,系统懒得去清零
2012-12-9 11:55
0
雪    币: 6
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
不会《C primer  Plus》十一章详细说了
2012-12-9 16:55
0
雪    币: 40
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
那能在其他函数里获取他的数据吗
2012-12-10 10:02
0
雪    币: 1392
活跃值: (5212)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
6
只要堆栈没有覆盖原值,你获取的地址是对的那么应该可以吧!
2012-12-10 10:11
0
雪    币: 326
活跃值: (41)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
那不就成全局变量了。
2012-12-11 17:48
0
雪    币: 77
活跃值: (48)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
不会清零,这个是c++教程的基础,应该弄明白
2013-1-19 18:45
0
雪    币: 215
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
静态局部变量保存的全局数据区,而不是保存在栈上,每次的值保存到下一次调用,直到下一次赋新值。

静态局部变量有以下特点:

    该变量在全局数据区分配内存;
    它在执行到该对象首次声明处被首次初始化,即以后调用函数不再初始化。
    它一般在声明处初使化,如果没有显示初始化,则被初始化为0。
    它始终驻留于程序中,直到程序结束运行。但其作用域为局部作用域,当定义它的函数或语句块结束时,其作用域随之结束
2013-3-14 14:19
0
雪    币: 92
活跃值: (209)
能力值: ( LV6,RANK:95 )
在线值:
发帖
回帖
粉丝
10
楼主!不仅仅是静态变量!
就连局部变量,只要那块内存的数据没有被覆盖就不会被清除
2013-3-15 13:10
0
雪    币: 297
活跃值: (265)
能力值: ( LV4,RANK:55 )
在线值:
发帖
回帖
粉丝
11
这真得看情况
有时会被其他数据覆盖掉
2013-3-15 14:01
0
雪    币: 220
活跃值: (117)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
12
静态局部变量和全局变量的差别只是作用域,全局是整个程序可用.静态是仅该函数可用(其实如果知道地址.别的函数也能用)
2013-3-15 16:49
0
游客
登录 | 注册 方可回帖
返回
//