| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1099 人关注过本帖
标题:新手问题,望高手回答
只看楼主 加入收藏
himpo
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:192
专家分:123
注 册:2008-5-16
收藏
得分:0 
回复 10# cosdos 的帖子
thank you!
知道了。。
2008-06-21 12:37
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
不对吧?
static不保证为多少,应该是未定义值。
而且在VC中,为了防止未赋值错误,会主动填充一些特定值,来帮助Debug的……

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-21 12:39
himpo
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:192
专家分:123
注 册:2008-5-16
收藏
得分:0 
说的对。。。加个=0应该不累,关键是好的书写习惯。。。

毕竟各个编译器不一样。。。

一切为了可移植性。。。
2008-06-21 12:45
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
收藏
得分:0 
static 类型变量默认值为0。

ANSI C 与 C99 标准。

静态变量在程序编译时就分配了内存。
auto 类型的变量是在程序运行时在堆栈上分配的,值是随机的。


// 或者说全部二进制位为 0,
// 浮点数,可能不可移植
// 但一般二进制位全为0的浮点数也为0 (与浮点数实现有关)
//

[[it] 本帖最后由 cosdos 于 2008-6-21 12:58 编辑 [/it]]

—>〉Sun〈<—
2008-06-21 12:49
leeco
Rank: 4
等 级:贵宾
威 望:10
帖 子:1029
专家分:177
注 册:2007-5-10
收藏
得分:0 
回复 14# cosdos 的帖子
同意,静态变量除了可见范围不同,和全局变量没两样。
2008-06-21 13:12
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
找到了……
cosdos说的对。在C++03 8.5.0.6里面有具体描述:
6 Every object of static storage duration shall be zero-initialized at program startup before any other initialization
takes place. [Note: in some cases, additional initialization is done later. ]

今天又学到了。开始觉得C++博大精深了……要买本讲到方方面面的好书了……cosdos推荐一个?

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-06-21 14:15
中学者
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:20
帖 子:3554
专家分:80
注 册:2007-9-14
收藏
得分:0 
回复 14# cosdos 的帖子
恩.

[[it] 本帖最后由 中学者 于 2008-6-21 15:16 编辑 [/it]]

樱花大战,  有爱.
2008-06-21 15:12
快速回复:新手问题,望高手回答
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021393 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved