首页 > 其他 > 详细

传智播客视频学习 ---->>>> 野指针产生原因和避免方法

时间:2015-11-21 21:08:51      阅读:293      评论:0      收藏:0      [点我收藏+]

野指针产生的原因:

  1,指针变量和他所指向的内存空间变量是两个不同的概念

  2,虽然调用free(p)方法释放了指针所指向的内存空间,但是指针变量并没有重置成NULL

  3,造成释放了所指向的内存空间之后,使用 if( p != NULL ) 还会被执行,还会执行其中的 free() 方法

 

避免方法:

  1,定义指针的时候,初始化其值为 NULL ( char *p = NULL; )

  2,释放指针所指向的内存空间之后,把指针重置成 NULL

   

 1     ······
 2 
 3 char *p = NULL;
 4 
 5     ······
 6 
 7 if ( p != NULL ){
 8     free( p );
 9     p = NULL;           
10 }
11 
12     ······

 

技术分享

 

传智播客视频学习 ---->>>> 野指针产生原因和避免方法

原文:http://www.cnblogs.com/dudu580231/p/4984598.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!