野指针
野指针:指向“垃圾”内存(不可用内存)的指针
产生原因:指针创建时未初始化
int *p;//此时p为野指针
解决办法:指针创建时对其进行初始化
int *p = NULL;
悬垂指针
悬垂指针所指向的空间已经被释放了,但是free后并没有修改指针为NULL,仍旧指向原空间。
解决办法:free后,将指针设为NULL。
char *p = (char *)malloc(12);
free(p);
p = NULL;
野指针
野指针:指向“垃圾”内存(不可用内存)的指针
产生原因:指针创建时未初始化
int *p;//此时p为野指针
解决办法:指针创建时对其进行初始化
int *p = NULL;
悬垂指针
悬垂指针所指向的空间已经被释放了,但是free后并没有修改指针为NULL,仍旧指向原空间。
解决办法:free后,将指针设为NULL。
char *p = (char *)malloc(12);
free(p);
p = NULL;