【发布时间】:2015-07-07 21:34:13
【问题描述】:
我正在尝试从 elf 文件中打印符号表。我得到了 .symtab 和 .strtab 部分的偏移量(我用 readelf 进行了交叉检查)。但是程序给出了分段错误。这是有问题的代码:
printf("\n\nSymbol table:");
for(i=0;i<symtab.sh_size/symtab.sh_entsize ;i++)
{
fseek(ElfFile,symtab.sh_offset+i*symtab.sh_entsize,SEEK_SET);
fread(&elfSym,1,sizeof elfSym,ElfFile);
printf("\nSymbol:%s,size:%u",elfSym.st_name+strtab.sh_offset,elfSym.st_size);
}
【问题讨论】: