首页|嵌入式系统|显示技术|模拟IC/电源|元件与制造|其他IC/制程|消费类电子|无线/通信|汽车电子|工业控制|医疗电子|测试测量
首页 > 分享下载 > 常用文档 > 编写安全无错的代码

编写安全无错的代码

资料介绍
编写安全无错的代码
第八讲 代码的调试

凌 明
trio@seu.edu.cn
东南大学国家专用集成电路系统工程技术研究中心



www.cnasic.com




目 录
Bugs vs Debugging !!
断点,单步,变量的观察与修改,内存观察与修改,调用栈
Bug的定位
关注代码的层次与接口
关注内存的访问越界(堆栈溢出,缓冲区溢出,数组越界)
关注边界情况
Bug的修正
让代码检查自己的错误
利用断言
利用调试宏
参数的合法性检查
堆栈的监控(溢出?)
内存数据结构的监控(Audit)
调试信息的记录与输出
其他的方法和工具
代码检查(Code Review or Code Inspection)
编译器的警告与Lint工具
好的 Coding Style www.cnasic.com
Bugs vs Debugging
没有Bug的就不是软件
核心的问题是:
怎样发现程序错误的根源?
怎样在软件中自动地查出这个错误?
怎样修正这个错误?
怎样避免这个错误?


www.cnasic.com




初学者的困惑
在错误面前一筹莫展
拼命的单步,但却不知道该关心什么?
根本就不单步跟踪程序,或者不敢往下层函数
跟踪
总是发现编译器的“Bug”
编写安全无错的代码
本地下载

评论