中易网

C语言中定义一个变量,不给它赋值。它会有值吗?若有是多少?

答案:5  悬赏:30  
解决时间 2021-01-15 17:35
C语言中定义一个变量,不给它赋值。它会有值吗?若有是多少?
最佳答案
C标准(ISO/IEC 9899:TC2)6.7.8节:
”If an object that has automatic storage duration is not initialized explicitly, its value is
indeterminate. If an object that has static storage duration is not initialized explicitly,
then:
— if it has pointer type, it is initialized to a null pointer;
— if it has arithmetic type, it is initialized to (positive or unsigned) zero;
— if it is an aggregate, every member is initialized (recursively) according to these rules;
— if it is a union, the first named member is initialized (recursively) according to these
rules.“
也就是说,静态变量默认会初始化,值为0;非静态变量默认没有初始化,值未知。事实上,如果使用未初始化的局部变量,编译器一般会给出警告。
全部回答
你自己试下不就行了,这个不用问的啊
没有值,一般都要初始化,如果不进行初始化,则除了对其赋值或类似的操作,其他操作将会发生错误
定义一个变量, 不给它赋值,这个变量默认=0
C语言中定义一个变量,不给它赋值。它会有一个不确定的值。具体值会由上次该存储单元被使用时留在其中的值来定。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
1·2X一7·5=5·l解方程
龙将充的钱是否可以转到其他的服务器
7个千,7个十和2个一组成的数是
哈飞小货车多久保养一次
才者德之贤也,德者才之帅也。。。什么意思?
请问I5-3470能超频超到4.5G吗,会不会烧CPU?
明星志愿3简体版和繁体版有什么区别?
一个走之旁一个降的右边是什么字
在执行int a[][3]={1,2,3,4,5,6}; 语句后,a[1
我们要增订校服了,我想要订小一号,这样裙子
后吴平价超市地址好找么,我有些事要过去
拉芳舍咖啡美食(金清店)地址在哪,我要去那里
填在下文横线上的四句话,最恰切的一组是()
塑胶物性表是什么
甲问乙年薪多少钱?乙回答1000万猜甲是啥工作
推荐资讯
长乐邮政号码是多少
亭的部首是什么结构是什么
TWO DOLLARS是哪国的钱币?
下列说法错误的(  )A.分别充满HCl、NH3
氨基酸能经常挂吗?挂过以后身体很精神
GB-5082-85是最新版本吗
以刘禹锡的历史情怀为题写一篇抒发思古之幽情
人类可以被“制造”吗
寻找高邢高速地图
谁有音师傅的抢单攻略,我做声卡调试的,入驻
中国不是东盟国家,为什么参加东盟国家会议
电线NH-RVS2*1.0-MR和NH-RVS2*1.0-P20/CC
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?