> Так делать нельзя.
> Подумай, откуда при компиляции функции компилер узнает, какой размер
> массива?
Вообще да, правильно - с многомерными гемор. Я ими вообще стараюсь не
пользоваться. Лучше так:
double array[nx*ny];
void f(double *array, int nx, int ny)
{
int i, j;
for (i = 0; i < nx; i++)
for (j = 0; j < ny; j++)
array[i*ny + j] = ...;
}
но без указания размеров все равно не обойтись, конечно :) ...
А еще лучше, ИМХО,
double array[nx*ny];
void f(double *array, int nx, int ny)
{
int i, j;
for (i = 0; i < nx; i++)
for (j = 0; j < ny; j++, array++)
*array = ...;
}
Может, правда, херово читается?