当前位置:首页云巢基础大讲堂之二段错误 举报文章

云巢基础大讲堂之二段错误

作者:admin    来源:用户投稿    时间:2015.6.11   

  引言

  “哎,段错误!”我仿佛看到了这个句话背后程序员的那张苦瓜脸。段错误对于一个程序员是一个熟悉不能再熟悉的名词,对于有经验的程序员对这个词那是既爱又恨,爱的是:还好出现了段错误,非常好找原因的(那是他有几种能找段错误的方法,已经熟透了),恨的是:怎么总是出现段错误(看的都想吐了)。而对于经验不足的程序员来说,段错误就是一个刺猬,你想吃他根本无从下嘴,只可远观而不可亵玩焉。针对这种情况云巢科技在最底层公共库模块添加了一套专治段错误的模块,先拔掉你的刺,在考虑怎么吃掉你。

  1. 段错误是什么

  一句话来说,段错误是指访问的内存超出了系统给这个程序设定的内存空间,例如访问了不存在的内存地址、访问了系统保护的内存地址、访问了只读的内存地址等等情况。

  2. 段错误产生的原因

  1> 访问不存在的内存地址。

  2> 访问系统保护的内存地址。

  3> 访问只读的内存地址。

  4> 栈溢出,等等其他原因。

  3. 段错误的调试方法

  1> 传说中printf大法,这个看似最简单但往往很多情况下十分有效的调试方式,也许可以说是程序员使用最多的调试方式。但是涉及到大的项目开发和源码数量超多,使用printf大法就不能快速的去定位问题的所在,你根本就不知道在哪去加printf打印。

  2> 使用GDB调试

  对于新手的程序员来说,GDB还有很大一部分人不会使用,如果要使用GDB,还要去从新学习GDB的命令和操作,有时候会浪费一些时间。

  3> 云巢开发的智能自动检测段错误模块

  没有复杂的操作,没有猜代码的痛苦,只需要调用一个简单的初始化函数接口,就能智能的自动检测出程序产生的段错误的位置,定位精准,老少皆宜。

  4. 云巢科技智能检测段错误模块

  1> 基本原理:

  通过捕捉系统中产生的段错误信号,将段错误信息打印到生成的文件中。

  2> 产生段错误的信号:

  1)SIGQUIT 2)SIGILL 3)SIGABRT 4)SIGFPE 5)SIGSEGV 6)SIGBUS 7)SIGSYS 8)SIGTRAP 9)SIGXCPU 10)SIGXFSZ 11)SIGIOT

  我们看到SIGSEGV在其中,一般数组越界或是访问空指针都会产生这个信号。云巢开发的检测段错误模块,能够完美的捕捉以上列出的产生段错误的信号,并将产生段错误信号的行进行准确的定位。拔掉他身上的刺,为公司的研发人员提供极大方便,提升了工作的效率。其实段错误并不可怕,可怕是没有一种好的调试段错误的方法。云巢正是看到了这个方面,开发出智能检测段错误模块。

  5. 开发当中应当注意的事项,避免产生段错误

  1、出现段错误时,首先应该想到段错误的定义,从它出发考虑引发错误的原因。

  2、在使用指针时,定义了指针后记得初始化指针,在使用的时候记得判断是否为NULL。

  3、在使用数组时,注意数组是否被初始化,数组下标是否越界,数组元素是否存在等。

  4、在访问变量时,注意变量所占地址空间是否已经被程序释放掉。

  5、在处理变量时,注意变量的格式控制是否合理等。

  免费申请云巢iPC地址:http://pc.vcnglobal.cn

好文打赏,给Ta鼓励
扫一扫用手机阅读本文
Tags:基础  大讲堂  之二  错误  
  • 相关搜索
图片推荐
    证监会主席换人:肖钢被免 刘士余接任

    证监会主席换人:肖钢被免 刘士余接任

    摘要: 中共中央已经下发了免去肖钢同志的中国证监会党委书记职务,任命刘士余同志为中国证监会党委书记。与此同时,国务院决定,任命刘士余同志为中国证监会主席,免去肖钢同志的中国证监会主席职务。    (注
    企业网络营销投入多产出少是有原因的

    企业网络营销投入多产出少是有原因的

    网络营销投入成本逐年上升,产出回报却不见起色,这已经成为众多企业心中无言的痛,传说中屡创奇迹的网络营销哪里去了?  这个问题让我想起了一次跟长辈聊天的情景,他问我做什么工作,我说网络营销,然后得到的答
    京东国际战略:听东哥这十大观点就够了!

    京东国际战略:听东哥这十大观点就够了!

    6月30日消息,京东全球购澳洲馆于日前正式上线,同时,京东还与澳大利亚邮政达成了在电商和物流方面的战略合作。在澳大利亚墨尔本市举行的澳洲馆启动仪式上,京东集团CEO刘强东发表演讲,并于会后接受媒体问答
    如何才能做好网站的真心推荐

    如何才能做好网站的真心推荐

    如何才能做好网站的真心推荐?想必很多站长朋友都做过网站评价,就是在网站上点击一个分享按钮然后把自己的网站分享到各大高权重的网站,比如一些社区的网站,什么人人网、开心网、51交友网、QQ空间等。看到这里
    蜜淘蓄力黑五:进口电商价格战打不起来

    蜜淘蓄力黑五:进口电商价格战打不起来

    11月25日消息,双十一的余热渐渐褪去后,进口电商开始掀起一场黑色星期五风暴。目前,包括蜜淘、洋码头、麦乐购、金箍棒海外购、海淘城等在内的进口电商均先后拉起了黑色星期五的大旗,大有打响进口电商首次价格
    美国近年来最值得“抄袭”的17种商业模式!

    美国近年来最值得“抄袭”的17种商业模式!

    i黑马注:只有视野够广阔,你的创业成功率才会更高,无论是QQ、人人或是微博,你不得不承认中国的很多商业成功案例都是源自于美国创新。就让我们一起来看看创新国度美国近年来出现的,最值得关注的十七种商业模式
你是怎么知道非凡网赚网的?
  •   
  • 联系QQ 邮箱:976382653@qq.com 微信:976382653
    在线留言
    发布软文
    广告自助购
    文章调用
    常见问题
    保存到桌面