假设我有一个这样的程序
// print-addresses.cpp
#include <stdio.h>
void foo() { }
void bar() { }
void moo() { }
int main(int argc, const char** argv) {
printf("%p\n", foo);
printf("%p\n", bar);
printf("%p\n", moo);
return 0;
}
它打印一些数字,例如
013510F0
013510A0
01351109
如何将这些数字转换回正确的符号?实际上,我希望能够做到这一点
print-addresses > address.txt
addresses-to-symbols < address.txt
并让它打印
foo
bar
moo
我知道这与调试接口访问 SDK有关,但我并不完全清楚我是如何从地址转到符号的。