COFF 文件格式如下:
File Header(文件头部)Optional Header(可选文件头部)Section 1 Header(节头部)………Section n Header(节头部)Raw Data for Section 1(节数据)Raw Data for Section n(节数据)Relocation Info for Sect. 1(节重定位数据)Relocation Info for Sect. n(节重定位数据)Line Numbers for Sect. 1(节行号数据)Line Numbers for Sect. n(节行号数据)Symbol table(符号表)String table(字符串表)
文件头部的数据结构:
struct filehdr
{
unsigned short f_magic; /* 魔数 */
unsigned short f_nscns; /* 节个数 */
long f_timdat; /* 文件建立时间 */
long f_symptr; /* 符号表相对文件的偏移量 */
long f_nsyms; /* 符号表条目个数 */
unsigned short f_opthdr; /* 可选头部长度 */
unsigned short f_flags; /* 标志 */
};