bool getArray(int *array);
принимает указатель на int в качестве аргумента (фактически, массив целых чисел для заполнения). bool getArray(int *array[]);
принимает массив указателей int. Первый - тот, который вам нужен, хотя вызывающей стороне необходимо выделить достаточно большой выходной массив, чтобы getArray()
мог скопировать в него элементы массива.
Один из способов понять объявления указателя / массива C - это думать о них как о том, как получить доступ к базовому типу. int *array
означает, что если вы скажете *array
, вы получите int. int *array[]
означает, что если вы скажете *array[x]
, вы получите int. char (*array)[5][2][3]
означает, что если вы скажете (*array)[0 thru 4][0 thru 1][0 thru 2]
, вы получите чар.