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

yrbg 1年前 已收到1个回答 举报

inflation1020 幼苗

共回答了21个问题采纳率:95.2% 举报

看你这句话是用在什么地方了.
如果是全局变量,k的值为0.
如果是在函数内部定义的局部变量,k的值就是随机的.

1年前 追问

10

yrbg 举报

就是一选择题,答案是这时的k中的值无定义。感觉怪怪的

举报 inflation1020

哦 这说明你的k是在函数内部定义的。 局部变量的内存是从栈里分配的,系统会从栈里找到一个int那么大的内存分配给k。 因为这个栈里的东西没有清零,所以这段内存里的内容什么不知道是什么情况。 所以,局部变量使用前必须初始化。
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 18 q. 0.598 s. - webmaster@yulucn.com