我不确定按以下方式初始化后 char 数组中会包含什么:
char buf[5]={0,};
这相当于
char buf[5]={0,0,0,0,0};
是的,是一样的。如果数量较少初始化器比数组中的元素大,那么剩余的元素将被初始化,就像具有静态存储持续时间的对象一样,(即,0
).
So,
char buf[5]={0,};
相当于
char buf[5]={0,0,0,0,0};
相关阅读:从C11
标准文档,第 6.7.9 章,初始化,
如果大括号括起来的列表中的初始值设定项少于聚合的元素或成员,或者用于初始化已知大小的数组的字符串文字中的字符少于数组中的元素,则聚合的其余部分应隐式初始化与具有的对象相同static
储存期限。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)