#include <iostream>
#define N 2
#define M 3
int main() {
int matrix[N][M] = {{1, 2, 3}, {4, 5, 6}};
// First version
// int array[N * M];
// for (int y = 0; y < N; ++y) {
// for (int x = 0; x < M; ++x) {
// array[y * M + x] = matrix[y][x];
// }
// }
// Second version
int* array;
array = (int*)matrix;
for (int i = 0; i < N * M; ++i)
std::cout << array[i] << " ";
std::cout << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKI2RlZmluZSBOIDIKI2RlZmluZSBNIDMKCmludCBtYWluKCkgewoJaW50IG1hdHJpeFtOXVtNXSA9IHt7MSwgMiwgM30sIHs0LCA1LCA2fX07CgoJLy8gRmlyc3QgdmVyc2lvbgoJLy8gaW50IGFycmF5W04gKiBNXTsKCS8vIGZvciAoaW50IHkgPSAwOyB5IDwgTjsgKyt5KSB7CgkvLyAgIGZvciAoaW50IHggPSAwOyB4IDwgTTsgKyt4KSB7CgkvLyAgICAgYXJyYXlbeSAqIE0gKyB4XSA9IG1hdHJpeFt5XVt4XTsKCS8vICAgfQoJLy8gfQoJCgkvLyBTZWNvbmQgdmVyc2lvbgoJaW50KiBhcnJheTsKCWFycmF5ID0gKGludCopbWF0cml4OwoJCglmb3IgKGludCBpID0gMDsgaSA8IE4gKiBNOyArK2kpIAoJCXN0ZDo6Y291dCA8PCBhcnJheVtpXSA8PCAiICI7CgkKCXN0ZDo6Y291dCA8PCBzdGQ6OmVuZGw7CgkKCXJldHVybiAwOwp9