c++數組遍歷十種方式
2019-11-09 19:50:43
供稿:網友
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; }}//范圍forfor (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; }}//類別名+范圍forfor (int_array &p : ia){ for (int q : p) { cout << q << endl; }}//autofor (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+范圍forfor (auto &p : ia){ for (auto q : p) { cout << q << endl; }}