1fo*_*st1 2 c c++ hex pointers memory-address
我正在尝试显示特定地址的内容,给定该地址的char*.到目前为止,我尝试使用以下实现来完成它
int mem_display(char *arguments) {
int address = *arguments;
int* contents_pointer = (int*)address;
int contents = *contents_pointer;
printf("Address %p: contents %16x\n", contents_pointer, contents);
}
Run Code Online (Sandbox Code Playgroud)
但我一直收到"分段错误(Core Dumped)"错误.我试图制作一个虚拟指针来测试
char foo = 6;
char *bar = &foo;
Run Code Online (Sandbox Code Playgroud)
但错误仍然存在
我发现很难解释问题是什么,因为代码中几乎每一行都是错误的.
这就是我要做的事情:
void mem_display(const void *address) {
const unsigned char *p = address;
for (size_t i = 0; i < 16; i++) {
printf("%02hhx", p[i]);
}
putchar('\n');
}
Run Code Online (Sandbox Code Playgroud)