

从开始学习C语言,你们彷佛看到了不少版本的main函数,那么哪种才是正确的呢?咱们先来看看目前有哪些版本。微信
没有返回值,没有入参app
main()
在C89标准中,这种写法是能够接受的,但使用如今的编译器编译时,会报告警,而且会将其返回值默认为int。实际上,若是函数没有显式声明返回类型,那么编译器会将返回值默认为int。编辑器
参数为void,返回值为void函数
void main(void){}
这种形式的来源不得而知。可是为什么这么多初学者使用?main函数的返回值最终会做为程序的退出状态,而一旦声明为void,在程序退出后,想要获取其退出状态也就不能够了。所以不建议其返回值为void。学习
主函数带int类型的返回值flex
这是常见的一种写法。无形参,代表它在调用的时候不能传入任何参数,那么它也就不能获取命令行参数了。这是小编教学时习惯用的一种写法
主函数带int类型的返回值,主函数带有两个参数
int main(int argc,char *argv[])
这也是最多见的一种写法。第一个入参为命令行参数个数,第二个入参为命令行参数数组。一般用于实现须要从命令行获取参数的功能。小编在讲文件操做的时候经过命令行参数简单实现过windows系统中的copy指令不清楚的能够去看看视频教程。
C89/C99/C11标准文档中只提供了两种main函数的写法:
至此,咱们已经知道了c语言main函数的写法,咱们来总结一下前面的内容:
C标准只提供了两种main的形式。
为了可移植性,建议采用标准形式。
声明返回值时,默认为int。
本文分享自微信公众号 - C语言编程基础(goodStudyCode)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。