初心者です。すみませんがアドバイスお願いします。

char (*pacX)[3];

とした場合、pacXは3要素のchar配列へのポインタになると思いますが、
このような変数「の配列」を以下のように動的に確保するとします。

int iNum = 2;
char (*pacX)[3] = new (char)[iNum][3];

この場合、ポインタ変数が2つ(iNum分)確保されるのでしょうか。それとも、それらが指す3要素のchar配列2つ分のメモリまで確保されるのでしょうか?