Ошибки с указателями

Выдаёт ошибки: Не совсем понимаю как их исправлять...

main.c:26:9: warning: passing argument 1 of ‘display’ makes pointer from integer without a cast [-Wint-conversion]            
 display(min);                                                                                                                
         ^~~                                                                                                                  
main.c:5:6: note: expected ‘int *’ but argument is of type ‘int’                                                              
 void display(int num[10]);

Код:

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int i, N, min= 100000000, count = 0, *arr;
void display(int num[10]);
int main (void) /* вывод чисел */
{
printf("Введите кол-во элементов массива: ");
scanf("%d", &N);
arr = (int*)calloc(N, sizeof(int));

if (N>0)
{
printf("Введите элементы массива:\n");
}
for (i = 0; i < N; i++)
{
printf("arr[%d] = ", i);
scanf("%d", &arr[i]);
}

if (N>0)
{
display(min);
printf("Минимальный по модулю элемент массива %d", min);
}
else printf("Минимальных элементов нет.");
return 0;
}

void display(int *num)
{
for (i = 0; i < N; i++)
{
if (abs(arr[i]) < abs(min))
{
min=arr[i];
count++;
}
}

}

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

Автор решения: Mikhailo

Функции

void display(int num[10]);

которая ожидает массив из 10 элементов, вы передаете просто число:

display(min);

В этом и заключается ошибка.

→ Ссылка