欢迎光临散文网 会员登陆 & 注册

C语言错误处理——调试宏

2020-04-06 08:49 作者:Iammyself001  | 我要投稿

C语言错误处理

C语言处理错误的方法就是返回错误码,设置一个errno的全局变量以供查找。而且不断重复下面的过程

这意味着每个函数调用(你没看错,就是每个函数),你都要多写3~8行的代码来确认是否执行成功(这还不包括你发现错误之后清理这些垃圾文件所需的代码)。

前两行表明如果不存在 dbg.h 的头文件就引入,防止包含多次,重复定义会出现编译错误。

关于NDEBUG

首先,assert是很有用的一个东西,尤其在开发调试阶段,它可以明确的指出运行时在哪一行出现了什么问题,是有必要的。
但是,你不应该把assert代码代入到发布版去,一来你已经消除了绝大部分bug没有必要,二来assert部分的代码会降低运行速度。
然而,删除遍布于代码各处的assert也是个讨厌的事情,不仅繁多而且容易出错,好在有这个NDEBUG宏,它把所有的assert代码变成一句空话,你不用改掉任何代码,重新编译一遍就可以了。


C语言错误处理——调试宏的评论 (共 条)

分享到微博请遵守国家法律