断言宏Assert.pdfVIP

  • 3
  • 0
  • 约 2页
  • 2017-07-24 发布于江苏
  • 举报
断言宏Assert

断言宏ASSERT 断言宏ASSERT 断断言言宏宏AASSSSEERRTT assert 语法: #include assert.h voidassert( int exp); 功能: 宏assert()用于错误检测。如果表达式的结果为零,宏写错误信息到STDERR并退出程序执行。 如果宏NDEBUG已经定义,宏assert()将被忽略。 assert在PC机上编程上被广泛只用,当断言失败时会在界面上弹出警告对话框,现象清晰明显,编程人 员很容易发现自己的程序出了问题,并加以改正。在这里必须清晰的知道一点,调试生效的事实告诉我们 的是assert的一个重要作用是帮助开发者调试程序定位错误的。作为开发者一个普遍事实是解决bug并 不难,定位bug往往是最难的。这也是我倡导多使用assert的原因所在。再深想一层,我们作一个假想: 假如assert在发布版上也能用,那么什么时候用assert,什么时候用提示对话框,原则是什么?我认为 这里有一个用户层次的问题。程序其实一般有两类用户:未发布前的开发者和发布后的用户。作为开发者, 我们假定他是懂断言的,但对于用户,我们却不能假定他懂断言。如果这个接口是面对开发者的,那么就 应该用断言来限制输入参数

文档评论(0)

1亿VIP精品文档

相关文档