【发布时间】:2019-03-02 15:20:28
【问题描述】:
我在 C 中有一个函数,它获取一个指针并打印它的反汇编代码。
void print_dis(void *addr) {
print_dis(addr);
}
一切正常,但现在我想从命令行将此内存地址作为 argv 传递。
如何传递内存地址并将其分配给指针,以便它运行如下:
my_prog 0x1234567890abcd
而 print_dis 将把这个地址作为 addr 获得
【问题讨论】:
-
您是否正在寻找类似
strtoull()的功能?也许像void *addr = (void*) strtoull(argv[1]+2, 0, 16);? -
strtoull 会返回一个新的 long long 值,它与字符串具有相同的值,对吧?我怎样才能将它用作地址?
-
您可以将“program1”的标准输出重定向/管道传输到您的第二个程序的标准输入吗??
-
不是真的,我也想对内核模块使用相同的方法
-
你可以重定向内核模块的输出,不是吗?
>