网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

C语言高效调试-创新互联

C语言高效调试

特此说明: 内容主要参考魏永明老师老师的课程 C 语言最佳实践高阶篇之高效调试,也可以看下面我整理的笔记。建议初级C程序员多看,干货多水分少,质量很高。

成都创新互联公司是一家专业从事做网站、网站设计、网页设计的品牌网络公司。如今是成都地区具影响力的网站设计公司,作为专业的成都网站建设公司,成都创新互联公司依托强大的技术实力、以及多年的网站运营经验,为您提供专业的成都网站建设、营销型网站建设及网站设计开发服务!
高效调试的基本原则
  • 多读代码、读懂代码,在头脑中形成代码执行路径
  • 不要慌,不要怀疑一切,尤其不要轻易怀疑编译工具链
  • 快速找到第一现场,理清现象和缺陷的内在关联
    • 复原现场,形成完整的证据链
    • 知其然,更要知其所以然
  • 避免使用低效调试手段
C 程序常见错误分类 编译、链接错误(5%)
  • 编译错误
    • 始终解决第一个错误
    • 正确理解编译器给出的错误描述
  • 链接错误:未找到某某符号
    • 正确的函数库(包括版本)和库搜索路径
    • 静态链接时,根据函数库依赖关系,调整函数库顺序
算法或逻辑错误(20%)
  • 正确理解标准库及第三方函数库的接口语义
  • 读懂代码,尤其代码产生的效果
  • 单元测试
内存使用错误(70%)
  • 静态数据使用错误
    • 方式:越界访问
    • 影响:导致数据被意外篡改导致逻辑错误,严重使程序崩溃
  • 堆使用错误
  • 越界访问
    • 方式:使用无效地址(空指针、野指针或者已释放的指针)、内存泄露(忘记释放)、两次释放、释放非分配地址
    • 影响:导致数据被意外篡改导致逻辑错误,严重使程序崩溃
  • 栈使用错误
    • 方式:越界访问、栈溢出
    • 影响:数据被意外篡改导致逻辑错误,导致程序跑飞,程序崩溃
疑难杂症(5%)
  • 命名污染,导致调用错误的函数或者使用错误的全局变量
  • 整数溢出:逻辑错误(死循环)
  • 异步数据访问:Unix 系统中的信号处理;多线程程序中出现竞态(race-condition)
善用调试工具
  • 调试器:程序挂在哪儿了?
  • efence:程序是否有堆使用错误?
  • valgrind:是否存在内存泄露?
  • 打桩

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网页名称:C语言高效调试-创新互联
本文链接:http://bjjierui.cn/article/dghgec.html

其他资讯