我们可以在函数内声明函数吗?

Pan*_*ato 5 c function

#include <stdio.h>

int main()
{
   void foo();
   printf("1 ");
   foo();
}

void foo()
{
    printf("2 ");
}
Run Code Online (Sandbox Code Playgroud)

输出:

1 2
Run Code Online (Sandbox Code Playgroud)

如何在函数内部声明函数?这是否意味着foo()函数只能由main()调用?

Pra*_*ari 13

是的,您可以声明,但无法定义.此外,您可以多次声明函数,但只能定义一次.

  • 你现在拥有的声明只能在`main`中看到.如果你试图从*main`和`foo`函数之间放置*的另一个顶级函数调用`foo`,你会得到一个错误. (2认同)