必威体育Betway必威体育官网
当前位置:首页 > IT技术

segment fault问题原因分析

时间:2019-06-12 00:42:06来源:IT技术作者:seo实验室小编阅读:55次「手机版」
 

segmentfault

点击打开链接

segment fault类的错误本质原因就是程序访问了非法的地址:

1.引用空指针

2.野指针

3.访问越界

造成的原因有多种:

主观原因:

1.新申请指针忘记赋NULL,也忘记分配空间,直接使用造成非法访问。

2.为指针赋值时,地址经过计算而来。计算过程有问题,导致赋值的地址不正确,

比如地址经过计算涉及到类型转换之类操作,很容易因为类型转换造成截断。

客观原因:

3.保存指针的空间被修改,比如你结构体中的一个成员是指针变量,它前面一个成员也是指针变量,

当前面的成员访问越界时,修改了后面成员的值,即前面操作踩了后面的空间,或者被其他程序踩到。

当再引用后面的指针时,就会发生段错误。或者free后面的指针时也会发生错误。

避免方法:

主观方面:

1.新申请指针赋NULL。

2.malloc和free一定要成对使用。

3.地址由计算得来时一定要小心处理,避免计算原因造成错误的地址。

客观方面:

4.怀疑发生段错误原因是指针地址被踩时,移动该成员到前面一点的位置,避免被踩,验证能否解决问题。

相关阅读

用户金字塔模型的应用:知乎案例分析

作为用户金字塔模型的提出者类类,对其公众号文章中的用户运营的思路进行整理归纳,可作为社区运营的指导。并以知乎为案例,对其用户金

时间序列分析工具箱——sweep

作者:徐瑞龙,量化

移动医疗APP竞品分析 | 平安好医生 VS 春雨医生

互联网医疗行业近些年热度逐渐上升,本篇文章对移动问诊的两款产品:平安好医生、春雨医生,进行了详细的对比分析。一、调研目的通过对

洞见未来——2019爱分析·中国科技创新大会将于1月9日

导读大会现场将

腾讯移动分析测评大赛结果公布|这一次,且听我娓娓道来

时间终究是留不住的,却可以沉淀一些弥足珍贵的东西,尤其是借由文字书写的。记得大赛启动还是在五月初,一转眼已到了6月末,我们便要在此

分享到:

栏目导航

推荐阅读

热门阅读