TonyDeng版主帮帮忙呗。。。。。我真的走火入魔了。。。。
我在百度文库中看到C语言编译过程详解:http://wenku.baidu.com/view/8976aeb765ce05087632130a.html
其中讲到:编译后的目标文件OBJ由段组成。通常一个目标文件中至少有两个段:
1) 代码段:该段中所包含的主要是程序的指令。该段一般是可读和可执行的,但一般却不可写。
2) 数据段:主要存放程序中要用到的各种全局变量或静态的数据。一般数据段都是可读,可写,可执行的。
那么我想问:
1.编译后的目标文件OBJ的结构是像汇编程序那样,由段组成的吗?(照文中的意思,编译后的OBJ是分段形式的,应该由段组成)。
2.编译后的obj文件有没有堆段、栈段????
还有:全局变量在编译完毕后,其在data area区的逻辑地址(段地址:偏移量)是固定不变的,
从逻辑地址这个角度来说,全局变量的内存地址是不变的。
[ 本帖最后由 suishuhao 于 2013-2-22 12:01 编辑 ]