c++ 遍历多维数组的10种方式
2014-09-02 11:39
281 查看
int ia[3][4] = {1,2,3,4,5,6,7,8}; //下标 for (int i = 0; i < 3; i++) { for (int j = 0; j < 4; j++) { cout << ia[i][j] << endl; } } //指针 for (int(*p)[4] = ia; p != ia + 3; p++) { for (int *q = *p; q != *p + 4; q++) { cout << *q << endl; } } //指针,迭代 for (int(*p)[4] = begin(ia); p != end(ia); p++) { for (int* q = begin(*p); q != end(*p); q++) { cout << *q << endl; } } //范围for for (int (&p)[4] : ia) { for (int q : p) { cout << q << endl; } } typedef int int_array[4]; //类别名+指针 for (int_array* p = ia; p != ia + 3; p++) { for (int* q = *p; q != *p + 4; q++) { cout << *q << endl; } } //类别名+迭代 for (int_array *p = begin(ia); p != end(ia); p++) { for (int* q = begin(*p); q != end(*p); q++) { cout << *q << endl; } } //类别名+范围for for (int_array &p : ia) { for (int q : p) { cout << q << endl; } } //auto for (auto p = ia; p != ia + 3; p++) { for (auto q = *p; q != *p + 4; q++) { cout << *q << endl; } } //auto+迭代 for (auto p = begin(ia); p != end(ia); p++) { for (auto q = begin(*p); q != end(*p); q++) { cout << *q << endl; } } //auto+范围for for (auto &p : ia) { for (auto q : p) { cout << q << endl; } }
相关文章推荐
- C++多维数组:存储方式、访问方式和作为函数参数
- c++数组遍历十种方式
- Java重修之路(五)数组基本概念,存储方式,遍历,排序,查找,多维数组
- PHP foreach遍历多维数组实现方式
- C/C++与Java多维数组,遍历与最大值获取方法!
- C++多维数组:存储方式、访问方式和作为函数参数
- 使用c++进行多维数组遍历的方法
- 递归遍历多维数组(树数据结构)的超级简单方式,并且可以递归超过200层,摘自<<PHP精粹:编写高效PHP代码>>
- PHP foreach遍历多维数组实现方式
- C++库研究笔记—— [真正正确?]多维数组动态分配正确方式?(之一)
- C++中的动态多维数组
- C++中的动态多维数组
- C语言中多维数组的常见动态分配方式及其在函数参数传递时的应用
- c++传递数组大小的方式
- More Effective C++ 读书笔记 之 不以多态方式处理数组
- C++之多维数组
- 关于03标准C++新添加的数组初始化方式
- C++数组参数应用方式探讨
- php多维数组遍历
- C++ 地址连续的多维数组实现