3
int main()
{
    int b[2][3]={{1,2},{3,4,5}};
    cout << b[0][2] << endl;
}

视觉和 g++ 的结果都是0!为什么?我想它一定是另一个数字!例如,当我们定义int a[5]then 时,我们说cout << a[3];没有设置a[3],它将类似于 0123984283,这意味着 RAM 中此单元格的最后一个值。

但是在这里,原因是0什么?

4

2 回答 2

5

如果是Partial Initialization,则保证其余元素为 0。

对于 Standerdese 粉丝和注重细节的人来说,这是一本不错的读物:

C 和 C++:自动结构的部分初始化

于 2012-06-17T09:41:00.037 回答
1

这个答案对文档的引用有更完整的解释:

https://stackoverflow.com/a/629063/475523

于 2012-06-17T09:44:22.977 回答