Передача многомерных массивов в функции в C происходит через указатель на первый элемент массива. 4 При этом размер второй размерности (а также всех последующих размерностей) должен быть определён, так как данный размер является частью типа элемента. 4
Например, для передачи двумерного массива с некоторым числом строк и тремя столбцами нужно использовать следующее объявление: 1
void show_ar2D(const short (*ar)3, int rows) { for(int i = 0;i < rows; ++i) { for(int j = 0;j < 3; ++j) printf('%d ', ar[i][j]); printf('
'); }}
При передаче многомерного C-массива в функцию можно не указывать длину самого левого измерения. 2 Компилятору для расчёта доступа к элементам массива эта информация не нужна. 2