Как сделать считывание количества элементов прямо в функции?

#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 просто как переменную, то все нормально работает. Не понимаю как ее там не использовать, а передать в указателе


Ответы (0 шт):