7.6
符号 | swap.o.symtab条目? | 符号类型 | 定义符号的模块 | 节 |
---|---|---|---|---|
buf | 是 | extern | m.o | .data |
bufp0 | 是 | global | swap.o | .data |
bufp1 | 是 | local | swap.o | .bss |
swap | 否 | global | swap.o | .text |
temp | 否 | |||
incr | 是 | local | swap.o | .text |
count | 是 | local | swap.o | .bss |
7.7
static double x;
void f() {
x = -0.0;
}
7.8 A、(a) REF(main.1)--> DEF(main.1)
(b) REF(main.2)--> DEF(main.2)
B、(a) REF(x.1)--> 未知
(b) REF(x.2)--> 未知
C、(a) REF(x.1)--> 错误
(b) REF(x.2)--> 错误
7.9 bar6.c中main是弱引用,链接引用foo6.c中的main函数,最终输出的是main函数的地址。
7.10 A、linux-> gcc p.o libx.a
B、linux-> gcc p.o libx.a liby.a libx.a
C、linux-> gcc p.o libx.a liby.a libz.a libx.a
7.11 未初始化的全局变量在目标文件中是不分配存储空间的。
7.12 A、0x4004f8 + (-4) - (0x4004e0 + 0xa) = 0xa
B、0x400500 + (-4) - (0x4004d0 + 0xa) = 0x22