ld链接器添加的符号

2020-03-28  本文已影响0人  写个代码容易么

链接器在链接时会在程序中插入一些特殊的符号

__executable_start 程序起始地址
__etext 代码段结束地址
_edata 数据段结束地址
_end 程序结束地址

通过以下代码可以输出该地址

#include <stdio.h>

extern char __executable_start[];
extern char etext[],_etext[],__etext[];
extern char edata[],_edata[];
extern char end[],_end[];

int main(){
    printf("程序起始地址:%X\n", __executable_start);
    printf("代码段结束地址:%X\n",etext);
    printf("数据段结束地址:%X\n",_edata);
    printf("程序结束地址:%X\n",_end);
}
上一篇 下一篇

猜你喜欢

热点阅读