C语言为什么要有 main 函数?具体作用是什么?
main是用来指定程序从那里开始执行的。就是一个大家遵守的规定。(被写到了C99规范)
从编译器的角度来看,你可以自己定义你喜欢的main1, main2 或者其他什么函数。只要没有重名,c的编译器都能给你编出来。(生产结果是obj文件,而不是可执行文件)
所以你问为什么c语言要main函数,其实c语言并不是那个在乎main函数。很多开发平台因为不喜欢main这个名字,也会把入口函数改成其他名字。
2 就好像c的编译器工作之前先要做cpp(比如头文件展开)一样,编译完了以后还要链接成可执行文件。
链接的时候需要知道程序的入口是什么。不管是什么总归得有的名字,所以main被选中了。
你不喜欢这个名字,可以指定你自己的入口。
参见如下文档的 -e 或者--entry参数。
3 很多脚本语言是不要入口函数的。比如什么函数都不写,直接写一句print 1000就能执行了。
那个他们怎么就知道入口函数是什么呢?因为他们第一行开始执行,因此也是很明确的。
从编译器的角度来看,你可以自己定义你喜欢的main1, main2 或者其他什么函数。只要没有重名,c的编译器都能给你编出来。(生产结果是obj文件,而不是可执行文件)
所以你问为什么c语言要main函数,其实c语言并不是那个在乎main函数。很多开发平台因为不喜欢main这个名字,也会把入口函数改成其他名字。
2 就好像c的编译器工作之前先要做cpp(比如头文件展开)一样,编译完了以后还要链接成可执行文件。
链接的时候需要知道程序的入口是什么。不管是什么总归得有的名字,所以main被选中了。
你不喜欢这个名字,可以指定你自己的入口。
参见如下文档的 -e 或者--entry参数。
3 很多脚本语言是不要入口函数的。比如什么函数都不写,直接写一句print 1000就能执行了。
那个他们怎么就知道入口函数是什么呢?因为他们第一行开始执行,因此也是很明确的。
C语言main函数解析
本文解释了C语言中main函数的作用及其重要性。main函数作为程序的起点,被C99标准规范所规定。虽然C语言本身并不强制要求使用main这个名字,但它是链接器确定程序入口的标准方式。

被折叠的 条评论
为什么被折叠?



