C++中的行指针和二维数组遍历
什么是行指针?
行指针是指向二维数组中的一行数据的指针。它允许跳过数组的行并直接访问每一行的元素。行指针的声明方式如下:
int (*ptr)[numColumns];
其中,ptr
是指向包含 numColumns
列的整数数组的指针。
行指针的应用
创建二维数组
创建一个简单的二维数组:
int myArray[3][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
使用行指针遍历二维数组
使用行指针来遍历这个二维数组:
int (*rowPtr)[4]; // 行指针,指向包含4列的整数数组
for (rowPtr = myArray; rowPtr < myArray + 3; rowPtr++) {
for (int *colPtr = *rowPtr; colPtr < *rowPtr + 4; colPtr++) {
cout << *colPtr << " ";
}
cout << endl;
}
声明一个行指针 rowPtr
,使用两个嵌套的循环来遍历二维数组的每个元素。行指针 rowPtr
指向每一行的起始地址,而内部的循环使用指针 colPtr
来遍历当前行的每个元素。