【发布时间】:2017-11-16 23:03:03
【问题描述】:
对于 int 或 double 类型的数组,如果数组的大小大于数组初始化时提供的元素个数(如列表),则数组中的其余元素默认为 0 对吗?
当我用比我提供的大小少的元素初始化字符数组时会发生什么?喜欢
char ch[10] = { 'h', 'e', 'l', 'l', 'o' };
是否为其余元素分配了任何值?还是只是内存中的垃圾?
【问题讨论】:
-
根据stackoverflow.com/a/201116/857132 他们将是0。
-
@Howard Wang 他们是零初始化的。
-
@VladfromMoscow 你在谈论 int/double 数组吗?还是 char 数组?
-
@HowardWang 查看我的回答。
标签: c arrays initialization c-strings initializer-list