Я сделал этот тест , и не понимаю вывод
#include <stdio.h>
int main()
{
void demo();
void (*fun)();
fun = demo;
(*fun)();
fun();
return 0;
}
void demo()
{
printf("GeeksQuiz ");
}
Ожидается: ошибка компилятора, потому что я думал, что обычно demo()
нужно будет инициализировать перед вызовом в main()
?
Фактические результаты: GeeksQuiz GeeksQuiz
Не верно ли мое предположение, что функции, как правило, должны быть определены, прежде чем их можно будет вызывать?