Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Двумерный массив как аргумент функции

Автор вопроса: CommunityОтветов: 1

Как передать двумерный массив в качестве аргумента функции (учитывая, что размер массива известен)? Мне понадобится помощь как для объявления, так и для определения функции. Я имею в виду что-то вроде этого:

#include <stdio.h>
#define size 10
void function(int anarray[size][size]); //<- Is that correct?
...

void function(int anarray[][]) //<-Is this too?
{
}

Большое спасибо!

carraysargumentsfunction

Ответы

Ответ 1 · рейтинг 6 · Community

void function1(int anarray[size][size]); // <- Is that correct?

Да, это так. void function1(int anarray[][size]); тоже подойдет.

void function1(int anarray[][]) // <- Is this too?

Нет, это ошибка компилятора. Только первое (самое внутреннее) измерение массива превращается в указатель при передаче в функцию.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы