若函数中有定义语句:int k;则系统将自动给k赋初值0还是这时的k中的值无定义?

问题描述:

若函数中有定义语句:int k;则系统将自动给k赋初值0还是这时的k中的值无定义?
1个回答 分类:综合 2014-10-29

问题解答:

我来补答
看你这句话是用在什么地方了.
如果是全局变量,k的值为0.
如果是在函数内部定义的局部变量,k的值就是随机的.
再问: 就是一选择题,答案是这时的k中的值无定义。感觉怪怪的
再答: 哦 这说明你的k是在函数内部定义的。 局部变量的内存是从栈里分配的,系统会从栈里找到一个int那么大的内存分配给k。 因为这个栈里的东西没有清零,所以这段内存里的内容什么不知道是什么情况。 所以,局部变量使用前必须初始化。
 
 
展开全文阅读
剩余:2000
上一页:求形状的题不会