Нет, синтаксис неверный. У вас есть дополнительный *
, превращающий аргумент в массив указателей.
В общем, лучше использовать:
void getSmth(int *array, size_t length);
с тех пор функция может работать с данными из большего количества источников, и становится доступной длина, которая очень удобна для итерации по данным, как вы, кажется, хотите делать.
Вы бы тогда назвали это так:
int main(void)
{
int a[12], b[53];
getSmth(a, sizeof a / sizeof a[0]);
getSmth(b, sizeof b / sizeof b[0]);
}
Обратите внимание на использование sizeof
для вычисления (во время компиляции) количества элементов. Это лучше, чем повторять числа из определений переменных.