一、Int main和void main有什么区别
1、有无返回值
void main没有返回值,int main有返回值。
2、返回值类型
int main返回int类型的数据,void main不返回。
但是在C语言推荐写法中,建议使用int main,因为在有的编译器虽然viod main可以通过编译,但在其他编译器就会报错。为了代码拥有更好的可移植性,一般写int main。
补充:
至于什么时候需要哪种写法,没必要较真。可以一律都写成 int main ,然后在方法体中最后加个return 0 ;就行了,这样写基本上所有的编译器都可以通过。
main函数,又称主函数。作为绝大部分C程序少数的入口(比如windows编程中可以编写一个其他windows程序都可以使用的动态链接库(DLL)模块,由于DLL模块不是独立的程序,因此不需要main函数。再比如,用于专业环境的程序(如机器人中的控制芯片有可能不需要main函数),是要求有返回值的,该返回值返回给操作系统来表明改程序的执行状况。
返回0代表程序正常执行成功,返回非0值代表程序异常结束,因此返回值需要是int整型,于是有了int main()的规范。如果使用void main,既声明主函数没有返回值的话,程序随能编译、运行成功,却不利于操作系统判断其状态,这对于由很多C程序构成的大型项目来说是可能会是致命的。
延伸阅读:
二、主函数返回值使用建议
这个使用建议,不代表标准说法,只是我总结了老师和一些专业计算机同学的一些编程风格。在这里分享给大家。也希望大家能够跟我一起交流。
1、void main()为老式的写法。VC 6.0及之前的VC使用这样的写法。
2、int main() 和 int main(int argc, char* argv[]) 等返回值为整型为新的写法。
3、尽量采用返回值为整型的写法。如果仅仅是为了方便,也可以采用无返回值。