c ++中多维数组的大小

时间:2013-04-08 11:31:52

标签: c++

这是我的代码

#include <iostream>
#include <windows.h>
using namespace std;
int main()
{
    int x,y, size;
    int array[][2] = {{1,2}, {5,6}, {13, 16}, {17, 69}, {100, 200}};
    for(x=0; x<5; x++){
        for(y=0; y<2; y++){

            cout<<array[x][y];
        }
        cout<<" ";
    }
    system("pause>nul");
    return 0;
}

代码工作正常。但是,当我将第7行 int array[][2] 替换为 int array[][1] 时,请显示如下错误消息:

64 E:\path\array_multi2.cpp:8 too many initializers for 'int [1]'
问题是什么?

1 个答案:

答案 0 :(得分:0)

int array[][1]声明一个数组,其第二维中只有一个元素。然后,您无法使用{1,2}{5,6}初始化第一维中的每个元素,因为这需要两个元素。

例如,您可以像这样初始化它:

int array[][1] = {{1}, {2}, {3}};
相关问题