为了账号安全,请及时绑定邮箱和手机立即绑定

在c语言中主函数开头用了start()什么意思?

在c语言中主函数开头用了start()什么意思?

至尊宝的传说 2019-02-24 09:06:06
在c语言中主函数开头用了start()什么意思
查看完整描述

3 回答

?
蓝山帝景

TA贡献1843条经验 获得超7个赞

准确地说是编译器为可执行文件加上了一个启动例程,ELF头部的入口地址就指向该启动例程,然后在启动例程中有下面一句:80482fc: e8 c3 ff ff ff call 80482c4 <__libc_start_main@plt>通过它调用C库的_libc_start_main,再调用我们的main由于main函数是被启动例程调用的,所以从main函数return时仍返回到启动例程中,main函数的返回值被启动例程得到,如果将启动例程表示成等价的C代码(实际上启动例程一般是直接用汇编写的),则它调用main函数的形式是:exit(main(argc, argv));

查看完整回答
反对 回复 2019-03-27
?
富国沪深

TA贡献1790条经验 获得超9个赞

执行start()这个该函数呗;
看这个函数风格一概是写程序的人自几定义的,叫这个名字的函数一般都是初始化一些参数、分配一些内存什么的准备工作。
c/c++内部定义的一些函数的话都会以_开头,类似于_start()这种。

查看完整回答
反对 回复 2019-03-27
?
慕斯王

TA贡献1864条经验 获得超2个赞

程序编写者自己定义的函数。打开该函数的代码窥窥就明白它的功能和表示的意思。

查看完整回答
反对 回复 2019-03-27
  • 3 回答
  • 0 关注
  • 895 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信