Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
是否可以打印出存储在特定内存地址的内容?例如,我想知道地址 0x7FFFFF0 存储了什么。我该怎么做?我不知道事先在地址中存储了什么,即。它可以是 int 或 char 或 null 终止符。
根据您的环境,您可以简单地声明一个指针并取消引用它:
volatile unsigned int *p = (volatile unsigned int *)0x7FFFFF0; printf("%u\n", *p);
当然,此操作要求您的程序有权访问该内存。您的里程可能会因不同的操作系统和环境而异。
如果不做更多的工作来确定内存代表什么,从语义上讲,然后在该上下文中提取您关心的字节,您肯定无法在运行时提取任何类型信息。