假设我有以下内容:
#include <stdio.h>
#include <string.h>
int main() {
char c = 'c';
char addr[50];
strcpy(addr, &c);
printf("%p\n", &c);
printf("%s", addr);
printf("\n");
return 0;
}
上面的代码将打印输出。
0x7ffc241780af
c@@ //some gibberish
对于输出的第二行,我打算输出字符数组,使其与第一行相同。 我希望将内存地址作为字符串输出,以便可以操作它,但我该如何将内存地址获取为字符字符串?
%p
来打印指针,例如printf("%p", addr);
。 - David C. Rankin