类型转换int [n] [m]到int **给出了分段错误

时间:2015-09-25 09:51:03

标签: c++ multidimensional-array casting segmentation-fault

为什么此代码会出现分段错误:

int n, m;
cin >> n >> m;
int a[n][m];
for(int i = 0; i < n; i++)
    for(int j = 0; j < m; j++)
        cin >> a[i][j];

int ** x = (int **) a;

for(int i = 0; i < n; i++) {
    for(int j = 0; j < m; j++) {
        cout << x[i][j] << ' ';
    }
    cout << endl;
}

我在Ubuntu上使用g ++ 4.9.2。

0 个答案:

没有答案