Why {0} assignation works but not {5} for an array
本问题已经有最佳答案,请猛点这里访问。
我尝试了以下代码:
1 2 3 4 5 | int a[4] = {0}; int b[4] = {5}; int c[4]; printf("%d %d %d %d %d %d ", a[0], a[3] , b[0], b[3], c[0], c[3]); |
得到以下结果:
1 | 0 0 5 0 random random |
号
虽然我知道为什么我得到了
是否有方法将数组
我misleading
likewise
我说:"这个文件
All array elements that are not initialized explicitly are initialized
implicitly the same way as objects that have static storage duration.
当安数组初始值设定项有fewer比数组元素的初始化式,这是应用在给定阶和任何剩余的两个元素的数组是initialized 0。所以在你看得到的两个案例
它"似乎"工作的案例,因为0值是一样的违约。