Код:
/*
* code.c
*/
#include <stdio.h>
void printArray(int iXArray, int iSize);
int main() {
int array1[] = {7, 9, 3, 18};
int *array2[] = {array1 + 0, array1 + 1, array1 + 2, array1 + 3};
printArray(array2, 4);
return 0;
}
// This should print the values in array1
void printArray(int iXArray, int iSize) {
int iCntr;
for (iCntr = 0; iCntr < iSize; iCntr++) {
printf("%d ", *iXArray[iCntr]);
}
printf("\n");
}
Мой компилятор не одобряет этот код. - [Предупреждение] передающего аргумента 1 из 'printArray' делает целое число из указателя без броска - printArray (array2, 4); - преобразованное в нижний индекс значение [Ошибки] не является ни массивом, ни указателем - printf (" %d", *iXArray[iCntr]);
Что я делаю неправильно, и почему? Как я фиксирую это?