c++指针数组与二维数组的最大区别
Posted 流星斩月
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++指针数组与二维数组的最大区别相关的知识,希望对你有一定的参考价值。
下面随笔是关于指针数组说明及与二维数组的最大区别。
指针数组
数组的元素是指针型
例 利用指针数组存放矩阵
using namespace std;
int main() {
int line1[] = { 1, 0, 0 }; //矩阵的第一行
int line2[] = { 0, 1, 0 }; //矩阵的第二行
int line3[] = { 0, 0, 1 }; //矩阵的第三行
//定义整型指针数组并初始化
int *pLine[3] = { line1, line2, line3 };
cout << "Matrix test:" << endl;
//输出矩阵
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++)
cout << pLine[i][j] << " ";
cout << endl;
}
return 0;
}
输出结果为:
Matrix test:
1,0,0
0,1,0
0,0,1
指针数组与二维数组对比
对比例中的指针数组和如下二维数组
1 int array2[3][3] ={ { 1,0,0 }, { 0,1,0 }, { 0,0,1 } };
二者最大区别在于数组行与行之间存储顺序的连续性,指针数组中行与行元素不是依次连续的,而二维数组为联系存放的,具体如图所示:
以上是关于c++指针数组与二维数组的最大区别的主要内容,如果未能解决你的问题,请参考以下文章