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

时间:2017-01-09 23:42:38

标签: c function-declaration

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

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

2 个答案:

答案 0 :(得分:6)

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

  • 这是程序执行的开始。
  • 不必预先宣布。
  • 如果执行结束时到达},则表现为return 0; * 之前的}

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

由于在指定其主体时定义了一个函数,当您编写int main(void) { … }int main(int argc, char **argv) { … }或任何替代函数时,您正在定义该函数,因为存在大括号,因此定义了函数体。 / p> 如果返回类型与{{1不兼容>

}}

答案 1 :(得分:3)

Main是一个像其他所有人一样的功能。只是有不同的语义和不同的要求。

语义是程序的开始。

具有预定义签名集的要求