16-11-21
2016-11-21 22:21
337 查看
从编译器的角度来看,你可以自己定义你喜欢的main1, main2 或者其他什么函数。只要没有重名,c的编译器都能给你编出来。(生产结果是obj文件,而不是可执行文件)
所以你问为什么c语言要main函数,其实c语言并不是那个在乎main函数。很多开发平台因为不喜欢main这个名字,也会把入口函数改成其他名字。
2 就好像c的编译器工作之前先要做cpp(比如头文件展开)一样,编译完了以后还要链接成可执行文件。
链接的时候需要知道程序的入口是什么。不管是什么总归得有的名字,所以main被选中了。
你不喜欢这个名字,可以指定你自己的入口。
参见如下文档的 -e 或者--entry参数。
3 很多脚本语言是不要入口函数的。比如什么函数都不写,直接写一句print 1000就能执行了。
那个他们怎么就知道入口函数是什么呢?因为他们第一行开始执行,因此也是很明确的。
C语言为什么要有 main 函数?具体作用是什么?
main是用来指定程序从那里开始执行的。就是一个大家遵守的规定。(被写到了C99规范)从编译器的角度来看,你可以自己定义你喜欢的main1, main2 或者其他什么函数。只要没有重名,c的编译器都能给你编出来。(生产结果是obj文件,而不是可执行文件)
所以你问为什么c语言要main函数,其实c语言并不是那个在乎main函数。很多开发平台因为不喜欢main这个名字,也会把入口函数改成其他名字。
2 就好像c的编译器工作之前先要做cpp(比如头文件展开)一样,编译完了以后还要链接成可执行文件。
链接的时候需要知道程序的入口是什么。不管是什么总归得有的名字,所以main被选中了。
你不喜欢这个名字,可以指定你自己的入口。
参见如下文档的 -e 或者--entry参数。
3 很多脚本语言是不要入口函数的。比如什么函数都不写,直接写一句print 1000就能执行了。
那个他们怎么就知道入口函数是什么呢?因为他们第一行开始执行,因此也是很明确的。
相关文章推荐
- 16-11-21
- 11、16-11、21(知识点记录)
- text1.txt begin10 11 12 20 21 22 30 31 32 end text2.txt begin 15 16 17 25 26 27 35 36 37 得到text3.txt
- 60}的C程序 高手帮忙写下`` 46 35 27 21 16 10 9 5 然后输出数组a。已知 int a[11]={1 使数组a仍然有序 将x插入到有序整型数组a中 由键盘输入一个整数x
- 1,2,3,5,7,8,10,11,12,13,14,15,16,21,22 -》1~3,5,7~8,10~16,21~22
- 数据解析11-16
- [LeetCode]Array主题系列{1,11,15,16,18,26,27,31,33,34题}
- 21种思维方式助你跻身富人阶层 (11-21)
- Android API Level在11前后及16之后时Notification的不同用法
- 16-11-17
- 16 - 11 - 23 得分 - UVA 1585 --《算法竞赛入门经典》
- 21-IO流-16-IO流(字符流-缓冲区-自定义MyBufferedReader-read方法)
- 15-11-16 Eclipse 操作菜单汉译之File[文件]
- [nRF51822] 11、基础实验代码解析大全 · 实验16 - 内部FLASH读写
- sitecore 16/8/11
- 10 11 16 出状况了
- DL学习笔记【21】ubuntu16 使用经验汇总 + torch7 + iTorch
- 11-16明天要回家了,今天上午的代码子发出来吧!
- 11 03 16-17 机器人
- Daily Scrum M2 11-21