功能原型在主要或主要在C之前

shi*_*juo 6 c

C中的函数原型应该在main还是main之前.我在主教学之前就被教过,但是我的朋友课本主要用它来表示.哪种方法正确?

他的书显示:

int main()
{
    void numberTable();

    numberTable();
}

void numberTable()
{
    int num;
    ...rest of the code...
}
Run Code Online (Sandbox Code Playgroud)

Alo*_*ave 12

两者都是正确的.
如果在main中添加函数声明,则其作用域位于main中{ }.
如果将其添加到main之外,则其范围是整个源文件.

  • 我认为将原型放在任何函数体外的文件范围是更好的风格.你*可以*在函数内部,甚至在块内部,但是这会限制原型对该块的可见性,这是​​一件奇怪的事情.对于具有多个源文件的较大程序,大多数函数原型将位于头文件中. (7认同)