编译器编译源代码后生成的文件叫做目标文件,那么目标文件里面到底存放的是什么呢,目标文件从结构上来讲,它是已经编译后的可执行文件格式,只是还没有经过链接的过程,其中可能有些符号有些地址还没有被调整。其实它本身就是按照可执行文件格式存储的,只是跟真正的可执行文件的结构上稍有不同。
可执行文件格式涵盖了程序的编译、链接、装载和执行的各个方面。
目标文件的格式。现在PC平台上流行的可执行文件(Executable)格式主要是Windwos下的PE(Portable Executable)和Linux下的ELF(Executable Linkable Format),他们都是COFF(common file format)格式的变种。