main函数的返回值是返回给主调进程,使主调进程得知被调用程序的运行结果。
标准规范中规定main函数的返回值必须是int,和C语言不一样,C语言默认会返回int
不返回任何信息的函数原型为“void function(...);”。可能正是因为这个,所以很多人都误认为如果不需要程序返回值时可以把main函数定义成void main() 。然而这种做法是错误的!
虽然在一些编译器中,void main() 可以通过编译,但并非所有编译器都支持void main() ,因为标准中从来没有定义过void main() 。
main 函数只有以下两种定义方式是正确的:
int main()
int main(int ave, char *ave[ ])
但是,main的返回值类型,写成void也不会错,它等效于没有return 语句的int类型。不过为了养成良好的习惯,最好还是写成int。
return返回的数值由程序的作者自定。返回不同的值可以代表不同的含义,一般是代表出错的原因。一般约定:返回0代表程序正常执行结束(其它返回值代表什么含义,需要程序的开发者向程序的用户说明,非强制)。