一些简单的问题,但是却没有意识到。关于代码中double free的错误。

伪代码:

char * str = NULL;

str = (char *)malloc(sizeof (char)*num); //申请内存

free(str);

在一些循环函数中,我们经常会通过判断str是否为NULL,来判断数据的有效性,那么问题就来了

接上面代码:

if(str!=NULL)

{

printf("str is not null   = %s ",str);

}

敲黑板:free后的str的值是否为空?

答案是肯定不是的。因为free操作只是释放了str指向地址的内存,str的值并没有改变。所以str的值依然存在。只不过现在指向的地址就是一段野内存,不可访问。

如果这个时候对这位置的内存进行访问就会产生断错误,再进行free的话就会double free。

其实是常识,自己搞错了,写一下提醒自己。

关于C语言double free相关推荐

  1. c语言里什么叫double,c语言double什么意思

    本文收集整理关于c语言double什么意思的相关议题,使用内容导航快速到达. 内容导航: Q1:在c语言中double是什么意思啊? double是指双精度浮点数类型.float指单精度浮点数类型.它 ...

  2. c语言自定义输出小数点位数_c语言double类型默认输出小数几位

    C语言中常用的小数有两种类型,分别是 float 或 double:float 称为单精度浮点型,double 称为双精度浮点型.不像整数,小数没有那么多幺蛾子,小数的长度是固定的,float 始终占 ...

  3. c语言double型小数点后几位小数,c语言double类型默认输出几位小数?

    C语言中常用的小数有两种类型,分别是 float 或 double:float 称为单精度浮点型,double 称为双精度浮点型.不像整数,小数没有那么多幺蛾子,小数的长度是固定的,float 始终占 ...

  4. c语言double类型的输入

    c语言double类型的输入 double输入用 %lf ,而不能用 %f 今天在使用double类型输入时先用了 scanf("%lf", &a),结果以%f输出的时候都 ...

  5. c语言double型小数点后几位_c语言double类型默认保留几位小数?

    c语言double类型默认保留几位小数? 发布时间:2020-04-23 09:31:42 来源:亿速云 阅读:945 作者:小新 c语言double类型默认保留几位小数?相信有很多人都不太了解,今天 ...

  6. c语言中数据精度发生错误,C语言Double类型数据保证精度有关问题

    C语言Double类型数据保证精度问题 我用手算算出的数据为-1.35323517,但是在C语言里面为了保证数据精度,VC++运行的结果为-1.35323517024517 ,按说应该在-1.3532 ...

  7. C语言double与float的区别以及输出时的小数点的数位控制

    C语言double与float的区别 float : 单精度浮点数.                double : 双精度浮点数. 两者的主要区别如下: 一.在内存中占有的字节数不同 单精度浮点数在 ...

  8. C语言Double的作用,C语言double和float 实例分析用法

    C语言double和float 实例分析用法 C语言double和float 实例分析用法 小数也称实数或浮点数.例如,0.0.75.0.4.023.0.27.-937.198 都是合法的小数.这是常 ...

  9. c语言double保留2位小数0,c语言 double类型保留小数问题

    c语言 double类型保留小数问题0 落寞的夕阳A2015.12.29浏览164次分享举报 用户输入希望保留小数的位数,1到16,怎么实现 int main(){ double a = 1.1234 ...

  10. c语言float的使用,C语言double和float实例分析用法

    C语言double和float 实例分析用法 C语言double和float 实例分析用法 小数也称实数或浮点数.例如,0.0.75.0.4.023.0.27.-937.198 都是合法的小数.这是常 ...

最新文章

  1. 分治习题--九章算法培训课第三章笔记
  2. Spring 接收表单List集合数据
  3. 【7.19 graphshortestpath graphallshortestpaths函数】matlab 求最短路径函数总结
  4. node-sass -v 不是内部_奔驰v260领航版的缺点奔驰v级和威霆区别
  5. Exynos4412 Uboot 移植(一)—— Uboot 编译流程分析
  6. 花式迎新 百度李彦宏Robin化身大厨派发肉饼
  7. 思科无线服务器,【CISCO wlan】思科无线网络_3-基本配置v2.pdf
  8. LightGBM算法解析
  9. blogCommed
  10. Spring boot admin 使用
  11. 哈佛幸福课个人使用精华
  12. 【苹果家庭群发推】Metal performance shader软件安装框架
  13. C/C++编写Windows窗口应用程序(Win32程序),非黑漆漆的控制台窗口
  14. Richer Convolutional Features for Edge Detection(RCF论文学习笔记)
  15. 从零开始安卓端相机功能开发(一)了解用什么去开发以及流程
  16. 2016搜狗校招编程题
  17. PeopleSoft如何配置SMTP邮件服务
  18. echart旭日图_echarts(10):旭日图
  19. OnInitDialog()中SetFocus()不起作用解决方法
  20. 阿里云天池大赛赛题(机器学习)——工业蒸汽量预测(完整代码)

热门文章

  1. 你不知道的JavaScript(十一):元编程 - 公开符号
  2. 【STC单片机学习】第三课:单片机有很多种
  3. 海龟(turtle)与陆龟(tortoise)
  4. Layout 知识总结 3
  5. 什么软件可以pdf免费转word?这些工具非常实用
  6. html微信打开网页 要求用sa,微信网页授权获取用户基本信息(示例代码)
  7. 大一暑假结果-俄罗斯方块
  8. 如何制作网线水晶头图解
  9. vue +vue-router + es6 +webpack 高仿饿了么app
  10. 【单片机项目仿真】粮仓温湿度监控系统设计