'main'函数是否被归类为C中的函数定义?

Psi*_*Psi 1 c function-declaration

'main'函数是否被归类为C中的函数定义?

我问的原因是我被提供了一段代码,在解释代码顶部的函数声明和底部的函数定义之间的区别时,我被问到是否也考虑了'main'函数函数定义或者如果它被认为是其他东西(因为主要函数与其他函数不同).

Jon*_*ler 6

在C(正常排序)的托管实现中,main()与任何其他功能相比,唯一新颖的功能是:

  • 这是程序执行开始的地方.
  • 它不必预先声明.
  • 如果执行到达}最后,它的行为就像return 0;}*之前有一个.

在所有其他方面,main()是一个正常的功能.它可以在C中递归调用(而C++程序不能main()递归调用它).

由于函数是在指定函数时定义的,所以当您编写int main(void) { … }int main(int argc, char **argv) { … }替代时,您正在定义函数,因为大括号存在,因此定义了函数体.

* 如果返回类型不兼容,请参阅C和C++中main()返回的有关该return 0;语句的一些小警告int.