C语言 如何打开.o文件?

lsmd5eda  于 2023-03-12  发布在  其他
关注(0)|答案(2)|浏览(473)

编译一个C程序后,你会得到一个.o文件。我知道这是一个由“0”和“1”组成的文件,而且是在成功编译一个程序后形成的。但是我想看看文件里有什么!

wko9yo5t

wko9yo5t1#

你有几个选择。
首先(也是最简单的)是使用一些解码文件的东西来显示它是什么。linux上的objdump就是这样做的。

gcc -c test.c

给你测试。o

objdump -D test.o

将解码文件,并在标准输出中显示文件内容(因此将其传输到更小或类似的输出)Objdump输出显示未链接的目标文件。地址无效,必须由链接器修复。
格式首先是行号,然后是作为CPU指令的某个字节数,这些在www.example.com中示出hexadecimal.eg14表示00010100。接下来是这些字节表示的指令。

0:   14 00                   adc    $0x0,%al

所以在上面我们有函数的第0行-它是未链接的)1400-这些是字节,它们意味着与进位0一起添加到A1寄存器,将结果存储在A1中
另一种方法是使用十六进制编辑器,尝试在没有任何帮助的情况下找出14 00的含义。
祝你好运。

oxf4rvwz

oxf4rvwz2#

您可以在终端上使用hexdump命令来显示内容。

语法:$ hexdump <filename>.o

它将以hexadecimal显示内容。

相关问题