局部变量和全局变量缺省赋的初值分别是多少啊?(在线等啊)
如上。 问题点数:20、回复次数:11Top
1 楼xiaocai0001(高楼目尽欲黄昏/梧桐叶上萧萧雨)回复于 2006-03-04 21:28:26 得分 5
C/C++中
局部变量没有缺省赋值
全局变量都为0Top
2 楼duduhaha(三人行必有我师)回复于 2006-03-04 21:34:54 得分 2
同楼上的.
局部变量是个随机值.全局变量是0.Top
3 楼duduhaha(三人行必有我师)回复于 2006-03-04 21:39:53 得分 0
楼上两个星,我是两个三角,啥时候才能达到楼上的境界啊.唉,差距啊!Top
4 楼xiaocai0001(高楼目尽欲黄昏/梧桐叶上萧萧雨)回复于 2006-03-04 21:41:13 得分 0
楼上的加油!
坚持一定就有收获.
星星也不代表什么, 在这儿能学到知识就是最大的收获.Top
5 楼xiaocai0001(高楼目尽欲黄昏/梧桐叶上萧萧雨)回复于 2006-03-04 22:12:38 得分 0
>> 局部变量没有缺省赋值
经老大提醒, 想起静态变量的事了..
对于全局静态变量和局部静态变量也都初始化为0的....
特此更正Top
6 楼hai_li(何家干)回复于 2006-03-04 22:41:49 得分 3
局部变量定义时并没有进行初始化,所以值不确定。
全局变量初始化为0Top
7 楼steedhorse(晨星)回复于 2006-03-04 22:54:05 得分 2
唉,怎么那么倔啊。
局部的静态变量也初始化的。Top
8 楼fiftymetre(50米深蓝)回复于 2006-03-04 23:07:27 得分 5
对基本类型的静态局部变量若在说明时未赋以初值,则系统自动赋予0值。而对自动变量不赋初值,则其值是不定的。 根据静态局部变量的特点, 可以看出它是一种生存期为整个源程序的量。虽然离开定义它的函数后不能使用,但如再次调用定义它的函数时,它又可继续使用, 而且保存了前次被调用后留下的值。 因此,当多次调用一个函数且要求在调用之间保留某些变量的值时,可考虑采用静态局部变量。虽然用全局变量也可以达到上述目的,但全局变量有时会造成意外的副作用,因此仍以采用局部静态变量为宜。
百度一下多的是,而且讲的都比这儿讲的深入。
Top
9 楼wqtl_357(Step By Step!)回复于 2006-03-05 11:05:40 得分 1
#include <stdio.h>
int a;
void main()
{
int b;
}
我在VC中对上面代码单步跟踪,结果,a的值为0,b的值为-858993560Top
10 楼goodluckyxl(被人遗忘的狗)回复于 2006-03-05 11:18:10 得分 2
所有int a;,static **这种全局定义得变量成为ZI变量
将被初始化为0
int a = ××;全局定义得称为ZW变量初始化为××
栈上变量不初始化值就是地址里内容
Top
11 楼yleiou(单刀匹马)回复于 2006-03-05 11:57:20 得分 0
markTop




