Как сделать считывание количества элементов прямо в функции?
#include <stdio.h>
#include <stdlib.h>
#define NMAX 10
void scanArray(int*, int*);
int main()
int a[NMAX], *pn;
scanArray(a, *pn);
return 0;
}
void scanArray(int *a, int* pn)
{
int n;
do {
printf("Введите количество элементов от 1 до %d: ", NMAX);
scanf("%d", pn);
} while ((*pn < 1) || (*pn > NMAX));
n = *pn;
for (int i=0; i<n; i++)
{
printf("Введите %d элемент списка: ", i);
scanf("%d", a+i);
}
}
Если использовать в main n просто как переменную, то все нормально работает. Не понимаю как ее там не использовать, а передать в указателе