#include <iostream>
using namespace std;
int main() {
const short si2DArray[2][3] = { { 11, 12, 13 }, { 21, 22, 23 } };
const auto psi2DPointer = reinterpret_cast<const char*>(si2DArray);
for(auto i = 0U; i < sizeof(si2DArray) / sizeof(*si2DArray); ++i) {
for(auto j = 0U; j < sizeof(*si2DArray) / sizeof(**si2DArray); ++j) {
cout << *reinterpret_cast<const short*>(psi2DPointer + i * sizeof(*si2DArray) + j * sizeof(**si2DArray)) << '\t';
}
cout << endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7Cgljb25zdCBzaG9ydCBzaTJEQXJyYXlbMl1bM10gPSB7IHsgMTEsIDEyLCAxMyB9LCB7IDIxLCAyMiwgMjMgfSB9OwoJY29uc3QgYXV0byBwc2kyRFBvaW50ZXIgPSByZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihzaTJEQXJyYXkpOwoJCglmb3IoYXV0byBpID0gMFU7IGkgPCBzaXplb2Yoc2kyREFycmF5KSAvIHNpemVvZigqc2kyREFycmF5KTsgKytpKSB7CgkgICAgZm9yKGF1dG8gaiA9IDBVOyBqIDwgc2l6ZW9mKCpzaTJEQXJyYXkpIC8gc2l6ZW9mKCoqc2kyREFycmF5KTsgKytqKSB7CgkgICAgICAgIGNvdXQgPDwgKnJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3Qgc2hvcnQqPihwc2kyRFBvaW50ZXIgKyBpICogc2l6ZW9mKCpzaTJEQXJyYXkpICsgaiAqIHNpemVvZigqKnNpMkRBcnJheSkpIDw8ICdcdCc7CgkgICAgfQoJICAgIGNvdXQgPDwgZW5kbDsKCX0KfQ==