#include <stdio.h>
int add2nums( int, int);
void main(void)
{
int y,a,b;
printf("Enter 2 numbers\n");
scanf("%d%d", &a, &b);
y = add2nums(a,b);
printf("a is %d\n", a);
printf("b is %d\n", b);
printf("y is %d\n", y);
}
int add2nums( int num1, int num2)
{
int sum;
sum = num1 + num2;
return(sum);
}
Так, обычно, когда я создаю новые функции в C, определение функции создается перед функцией main()
.
В моей лекции приведен пример того, как создать прототип функции и как они создаются, объявив его перед функцией main()
, а затем определив его после завершения функции main()
.
При запуске вышеуказанной программы появляется следующая ошибка:
Строка 5: предупреждение: тип возвращаемого значения 'main' не является 'int' [-Wmain] |
Что происходит? И почему объявление функции add2nums()
происходит дважды один раз перед main()
и без параметров?
int add2nums( int, int);
и затем снова после окончания main()
с параметрами num1
и num2
int add2nums( int num1, int num2)