gpt4 book ai didi

c++ - C:分析 .obj 文件的实用程序,以精确字节测量某些函数的大小?

转载 作者:太空宇宙 更新时间:2023-11-04 01:41:23 25 4
gpt4 key购买 nike

我需要查找几个 C 函数的确切字节大小。对任何能够分析 gcc 编译器生成的 .obj 文件的实用程序有什么建议吗?

最佳答案

我这里只有一个 GCC v4 用于测试,但我认为 binutils 的这个特殊功能最近没有改变。

测试.c:

int foo()
{
return 42;
}

编译:

$ gcc -c test.c -o test.o

反汇编:

$ objdump -D test.o
...
0000000000000000 <foo>:
0: 55 push %rbp
1: 48 89 e5 mov %rsp,%rbp
4: b8 2a 00 00 00 mov $0x2a,%eax
9: c9 leaveq
a: c3 retq
...

(我们看到foo位于地址0,大小为0x000b字节。)

证据就在布丁里:

$ nm -S test.o
0000000000000000 000000000000000b T foo

地址 0,大小 0x000b。你在这。 ;-)

但是,请小心处理这些数字。这是函数的大小,但可能需要更多(例如全局数据对象)才能使函数正确运行

关于c++ - C:分析 .obj 文件的实用程序,以精确字节测量某些函数的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5113590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com