最好的方法就是养成良好的编程习惯:
1、当指针没有确定的指向的时候,指向为空(NULL);
2、当向指针指向空间进行赋值时,首先要看有没有存储空间 如没有就进行分配空间;
3、mloloc不一定能分配空间成功,所以要检查malloc有没有成功分配空间;
4、当空间使用后要使用memset清空空间内容;
5、使用完后要对空间进行释放(free);
6、再将指针置为空(NULL)。
注:不能对零指针(空指针)对应的空间进行操作。
#include <stdio.h>
main()
{
char *ptr =NULL;//当指针没有确定的指向的时候,指向为空(NULL);
char *ptr = (char *)malloc(sizeof(char)*100);//当向指针指向空间进行赋值时,首先要看有没有存储空间 如没有就进行分配空间;
if(ptr == NULL)//mloloc不一定能分配空间成功,所以要检查malloc有没有成功分配空间;
{
printf("malloc error!");
exit(1);
}
scanf("%s",ptr);
printf("*ptr = %s\n",ptr);
memset(ptr,'0',sizeof (char)*100);//当空间使用后要使用memset清空空间内容;
free(ptr);//使用完后要对空间进行释放(free);
ptr = NULL;//再将指针置为空(NULL)。
return 0;
}