学过C语言的人都知道,main函数是程序启动的入口函数,每一个C语言程序里有一个main函数,在程序里它是唯独一个不能被其他函数调用的特殊函数。在众多的单片机C语言编译器里对main函数的写法都没有明确的要求,写法非常自由,可以写成带形参的函数,也可以写成无形参的函数,还可以写成返回值为任意数据类型的函数。通用的写法都是:void main () {…}。而根据C99标准的要求,main函数是一个有返回值的函数,而且返回值类型必须为int。下面这段英文描述是从C99标准的PDF文档上复制下来的:
5.1.2.2.1 Program startup
The called at program startup is named main.The implementation declares no
prototype for this .It shall be defined with a return type of int and with no
parameters:
int main(void) { /* ... */ }
or with twoparameters (referred to here as argc and argv,though anynames may be
used, as theyare local to the in which theyare declared):
int main(int argc, char *argv[]) { /* ... */ }
or equivalent;9)or in some other implementation-defined manner.