打印结果和调试结果不一样(C语言) |
您所在的位置:网站首页 › c语言没有输出结果的原因是什么 › 打印结果和调试结果不一样(C语言) |
【0】README
0.1)本文旨在阐述 个人的debug经历,遇到的各种debug 奇葩问题, 说是奇葩,其实也是自己 不小心或者说是编程习惯不好; 【1】debug和running的运行结果不一致(乍眼一看,你肯定醉了) 1.1)原因:这是因为, 运行是时候,temp内部分配失败,为null, 所以直接返回了,所以swap失败;而在debug的时候, temp内存分配成功, 不为null, 所以swap成功;(至于为什么 运行的时候分配内存失败而debug的时候分配内存成功? 具体的我也不晓得) 1.2)这里给我敲了一个警钟: if判断temp是否为null时, 还是添加一条提示语句, 像这样, 也即是吧Error语句的注释去掉即可:1.3)当然,我们也可以吧swap方法修改为: void swap(ElementType x, ElementType y) { struct Distance temp; temp = *x; *x = *y; *y = temp; } |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |