Как передать в функцию многомерный массив, если не известно количество элементов в измерениях? Например
void test(float ts[][]) выдает ошибку. Думаю, тут дело в указателях, но сам никак не могу с ними разобраться..
Надо при объявлении функции указывать размер меньшего измерения массива: void vqvod(int arr[][m]){ ...// тут цикл cout<<arr[j]; ... } Или с указателем: void vqvod(int* arr[m]){ ...// тут цикл cout<<arr[j]; ... } С простым указателем: void vqvod(int * arr){ ...// тут цикл cout << *( arr + i*m + j); // строчка для долгих раздумий ... } int main() { ... vqvod ((int*) a); //вот так нужно вызывать функцию ... }
void test( float **ts ) , если это действительно многомерный массив NB! 1) при этом float** совсем не тоже самое, что [][] - первое массив массивов (возможно, разной длины); второе - цельный блок 2) [][] можете запихнуть в typedef struct