C语言中“局部变量要初始化,全局变量不要初始化”,是这样的吗

大家看看这个total是全局变量还是局部变量,但是不初始化就会出错... 大家看看这个total是全局变量还是局部变量,但是不初始化就会出错 展开
 我来答
柴海依歆
2020-04-22 · TA获得超过3941个赞
知道大有可为答主
回答量:3118
采纳率:26%
帮助的人:168万
展开全部
不是的。全局变量还是局部变量都可以初始化或者不初始化化
,语法没有对这有要求。
但是到实际情况是根据你写的代码来分析。
你写的int
total
=
0;
在你不初始化报错的原因是,int
total;
total是没有赋值的一个变量,那他的值就是分配内存中残留的值,属于错误的数据。
你后面用到total+=num[j].一个错误的数据做操作就报错了,就算不报错,你得到的结果是不正确的。
所以在你这个情况,赋值为0
。并不是语法规定。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式