demo_array_addr : array 2 มิติ

โจทย์สำหรับ
ตัวอย่างการคำนวณตำแหน่งของสมาชิก แบบ row-major order
#include <iostream>

using namespace std;

int main()
{
    const int  M=4, N=5;
    int  A[M][N] = {3,1,2,3,1, 9,8,5,6,9, 5,7,9,3,6, 6,2,8,4,5};
    cout << "A[2][3] = " << A[2][3] << endl;
    cout << "A[3][2] = " << A[3][2] << endl;
    int *pA, *p23, *p32;
    pA = (int *)A;
    p23 = pA + 2*N + 3;
    p32 = pA + 3*N + 2;
    cout << "A[2][3] = " << *p23 << endl;
    cout << "A[3][2] = " << *p32 << endl;

    return 0;
}
 

ตัวอย่างที่ 1