Имя аргумента в прототипе функции

Как и при объявлении функции, необходимы три вещи, т.е. тип возвращаемого значения. Название функции (тип аргумента). но имя аргумента не обязательно. Тогда почему эта программа генерирует ошибку, когда я удаляю имя аргумента (arr[][maxCols]) из прототипа функции (void readMatrix(int arr[][maxCols] );)

Простыми словами.

void readMatrix(int arr[][maxCols] );    // fine and no error.

void readMatrix(int);                    // but this generates error when argument name is not mentioned in function prototype.

1 ответ

Так как [][maxCols] принадлежит не имени, а типу.

Для объявления без имени напишите:

void f(int [][maxCols])

И сырые массивы, как правило, плохой выбор. использование std::vector или же std::array,

Другие вопросы по тегам