De igen, ezért a fenti kód hibás!
2D tömböt amelynek dimenziói futási időben derülnek ki, csak dinamikusan szabad allokálni(Vagyis akárhány dimenziós tömbnél így van ez).
Szerk.: Elfelejtettem, hogy C99-ben mindez engedélyezett.
pl:
int n;
cin >> n;
int m;
cin >> m;
int **array = new int*[n];
for(int i = 0; i < n; ++i) {
array[i] = new int[m];
}
Amikor meg nem kell már a tömb, akkor:
for(int i = 0; i < n; ++i) {
delete[] array[i];
array[i] = 0;
}
delete[] array;
array = 0;