使用指针迭代多维数组

Laz*_*h13 4 c++ arrays iterator

如果你可以使用指针迭代这样的数组:

for (int *iter = arr; iter != std::end(arr); ++iter) {
    // code
}
Run Code Online (Sandbox Code Playgroud)

如何使用指针迭代多维数组(不使用auto)?

编辑:我假设这是一个int[][]如此{{3, 6, 8}, {2, 9, 3}, {4, 8, 2}}

tex*_*uce 7

如果你将数组声明为arr [] [],那么你可以因为它们按顺序存储在内存中.你可以做:

for(int * iter = &arr[0][0]; iter != &arr[0][0] + col * row; iter++)
//...
Run Code Online (Sandbox Code Playgroud)