C++创建二维指针问题

浏览:54日期:2023-05-16

问题描述

int n = 0;int **num = new int*[n];cin >> n;

上述的代码,Line2和Line3我弄反了,为什么结果在后面进行二维数组操作的时候没有影响?

for (int i = 0; i<n; i++) {num[i] = new int[i+1];for (int j = 0; j < i+1; j++) { cin >> num[i][j];} }

比如我上述操作之后,我还是可以对num[][]进行读写。new的性质到底是怎样的?

问题解答

回答1:

C和C++并不检测基本类型数组越界,指针可以随意玩,但是这样做很危险

相关文章: