Я передаю массив функции, размер которой определяется самим пользователем.
#include<stdio.h>
void mapper(int a[], int size);
int main ()
{
int n;
printf("Please provide the number of inputs\n");
scanf("%d",&n);
int array[n];
for(int i=0; i<n;i++)
{
scanf("%d",&array[i]);
}
mapper(array,n);
return 0;
}
void mapper (int a[], int size)
{
for (int i=0; i<size;i++)
{
for(int j=0; j<sizeof(a[i]);j++)
{
printf("#");
}
printf("\n");
}
}
Когда я запускаю эту программу, я получаю ошибку, называемую сравнение целого числа со знаком и целого числа без знака.Почему это так?Это потому, что я передал [] в качестве аргумента, а позже использую [i]?
Как передать массив в качестве аргумента функции, размер которой должен быть определен?