我试图向某人解释为什么他们有一个悬空指针以及 free 的实际工作方式(并且指针是值,因此是按值传递的),但为此我认为我需要一种打印指针的方法t “不确定”(与 的情况一样printf("%p", ptr)
)。
memcpy 能解决问题吗?
char buf1[sizeof(char *)];
char buf2[sizeof(char *)];
char *malloced = malloc(10);
memcpy(buf1, &malloced, sizeof(char *));
free(malloced);
memcpy(buf2, &malloced, sizeof(char *));
for (int i=0; i<sizeof(char *); i++) {
printf("%hhd %hhd / ", buf1[i], buf2[i]);
}