【发布时间】:2019-02-18 15:14:26
【问题描述】:
我尝试了以下代码:
int a[4] = {0};
int b[4] = {5};
int c[4];
printf("%d %d %d %d %d %d\n", a[0], a[3] , b[0], b[3], c[0], c[3]);
得到以下结果:
0 0 5 0 random random
虽然我知道为什么我得到了 c 数组的随机值,但我不明白为什么赋值 {5} 不能像 {0} 那样工作,并且只初始化数组的第一个元素。
有没有办法将数组b 元素初始化为不同于0 的相同值? (不使用 memset 或 for 循环)
【问题讨论】:
-
您不会获得
c的随机值。您可以在c地址获得内存中的实际内容 -
@JohnH 这实际上不是速记,请查看答案并复制。
标签: c arrays array-initialization