Можем ли мы объявить функции внутри функций?

#include <stdio.h>
int main()
{ void foo(); printf("1 "); foo();
}
void foo()
{ printf("2 ");
}
</stdio.h>

Вывод:

1 2

Как объявляются функции внутри функций? Означает ли это, что функция foo() может вызываться только main()?

1 ответ

Да, вы можете объявить, но вы не можете определить. Кроме того, вы можете объявить функцию столько раз, сколько хотите, но определите только один раз.

licensed under cc by-sa 3.0 with attribution.