Welcome

首页 / 软件开发 / C++ / 遍历多维数组(Traverse Multidimensioned Arrays)

遍历多维数组(Traverse Multidimensioned Arrays)2011-04-18哪热分别使用下标和指针遍历二维数组。

使用指针遍历

#include <iostream>
using namespace std;

int main()
{

int ia[3][4] = { // 3 个元素,每个元素是一个有4 个int 元素的数组
{0, 1, 2, 3} , // 0 行的初始化列表
{4, 5, 6, 7} , // 1 行的初始化列表
{8, 9, 10, 11} // 2 行的初始化列表
};

int (*p)[4];

for (p = ia; p != ia + 3; ++p)
for (int *q = *p; q != *p + 4; ++q)
cout << *q <<endl;

return 0;
}

使用下标遍历

#include <iostream>
using namespace std;

int main()
{

int ia[3][4] = { // 3 个元素,每个元素是一个有4 个int 元素的数组
{0, 1, 2, 3} , // 0 行的初始化列表
{4, 5, 6, 7} , // 1 行的初始化列表
{8, 9, 10, 11} // 2 行的初始化列表
};

int (*p)[4];

for(size_t i=0; i!=3; i++)
for(size_t j=0; j!=4; j++)
cout<<ia[i][j]<<endl;

return 0;
}