В нижеприведённом коде вторая функция не выполняется, будто бы её там вообще нет. Ума не приложу, в чём дело. Использую Dev-C++ 4.9.9.2.
int main()
{
int a;
a=30;
printf("%d
",a);
system("PAUSE");
return a;
}
int kek()
{
int b;
b=40;
printf("%d
",b);
system("PAUSE");
return 0;
}
Ответ
Точкой входа в программу является функция main. Она вызывается при запуске вашей программы.
В C функция main без параметров должна быть объявлена как
int main( void )
{
//...
}
Из стандарта C (5.1.2.2.1 Program startup):
1 The function called at program startup is named main. The
implementation declares no prototype for this function. It shall be
defined with a return type of int and with no parameters:
int main(void) { /* ... */ }
Все остальные функции получают управление только лишь, если они вызываются в вашей программе.
Если вы используете библиотечные функции, то вы должны включить в программу заголовки, где эти функции объявляются.
Ваша программа могла бы выглядеть следующим образом:
#include
int kek();
int main( void )
{
int a;
a=30;
printf("%d
",a);
kek();
system("PAUSE");
return a;
}
int kek()
{
int b;
b=40;
printf("%d
",b);
system("PAUSE");
return 0;
}
Комментариев нет:
Отправить комментарий