冷冷的小知识——free后指针变量的值会变吗
本帖最后由 zzzz76 于 2016-10-24 22:56 编辑如题,咱做个小测试{:10_275:}
#include <stdio.h>
#include <stdlib.h>
int main(){
char *p = (char *)malloc(sizeof(char));
printf("分配空间后p的地址为%p\n", p);
free(p);
printf("释放空间后p的地址为%p\n", p);
p = NULL;
printf("设置NULL后p的地址为%p\n", p);
return 0;
}
当然啦,随机分配导致每次测试的答案不同
得出结论,free后指针变量的值不变
那么问题就来了,这个时候万一别的地方用到了该指针指向的空间,这个时候很容易摩擦出一些不可描述的事情
所以咱们编程保持好习惯,free后NULL她一下{:10_307:}
在校大学生交流会 啥意思 感谢分享! 好
页:
[1]