六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 52|回复: 0

C程序入口点的学习

[复制链接]

升级  56.05%

691

主题

691

主题

691

主题

探花

Rank: 6Rank: 6

积分
2121
 楼主| 发表于 2013-2-1 11:17:53 | 显示全部楼层 |阅读模式
作点补充:
在每个c程序中crtl.o启动例程(在目标文件中)的伪代码
  0x080480c0<_start>
       call_libc_init_first
       call_init
       callatexit
       callmain    //改变入口点,应该就是改变了这条语句?
       call_exit

<span style="font-size: 13px;"><div style="border-right: #698cc3 1px solid; padding-right: 10px; border-top: #698cc3 1px solid; padding-left: 10px; padding-bottom: 10px; margin: 3px 2em 2em; border-left: #698cc3 1px solid; padding-top: 10px; border-bottom: #698cc3 1px solid;" class="altbg2">
之所以大多数程序的“入口”是 main,是因为连接器缺省会连接一个叫 crt0.o 或者 crt0.lib 之类的库,这个库才是一个程序真正的入口,这个真正的入口作了一段初始化之后将控制权交给 main。大多数情况下用户程序不 ...
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表