ASSERT()的作用

转载 2007年09月11日 16:54:00

ASSERT()是一个调试程序时经常使用的宏,在程序运行时它计算括号内的表达式,如果表达式为FALSE (0), 程序将报告错误,并终止执行。如果表达式不为0,则继续执行后面的语句。这个宏通常原来判断程序中是否出现了明显非法的数据,如果出现了终止程序以免导致严重后果,同时也便于查找错误。例如,变量n在程序中不应该为0,如果为0可能导致错误,你可以这样写程序:
    ......
    ASSERT( n != 0);
    k = 10/ n;
    ......
    ASSERT只有在Debug版本中才有效,如果编译为Release版本则被忽略。
    assert()的功能类似,它是ANSI C标准中规定的函数,它与ASSERT的一个重要区别是可以用在Release版本中

相关文章推荐

Lua中,assert的作用

在看《Lua游戏开发实践指南》时,在P34中有说明assert,但是说明te

assert(0)的作用

今天在看框架例子的代码里,发现很多地方没有做什么,就只是错误检查,然后后面就会跟一个assert(0),比较奇怪这个用意,所以特意差了一下记录在这里。定义assert宏的原型定义在#include ...

ASSERT(0)的作用

ooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
  • ffmxnjm
  • ffmxnjm
  • 2017年08月07日 20:18
  • 107

ASSERT(断言)的作用

程序一般分为Debug 版本和Release 版本,Debug 版本用于内部调试,Release 版本发行给用户使用。断言assert 是仅在Debug 版本起作用的宏,它用于检查“不应该”发生的情况...

VC中TRACE ASSERT VERIFY之用法.doc

  • 2010年03月09日 19:39
  • 20KB
  • 下载

转: assert()函数用法总结

assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #include assert.h> void assert( int expression ); ...

STM32中assert_param的使用

  • 2015年06月26日 16:28
  • 64KB
  • 下载

vc中ASSERT()和VERIFY()区别

  • 2015年06月09日 19:09
  • 29KB
  • 下载

Java断言(assert)介绍及使用

概述在一个具有自我保护能力的程序中,如果要确保某个属性符合要求,并且代码执行依赖于这个属性。例如字符串操作int len = str.length();我们确信str是一个字符串的引用,原因是这是调用...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ASSERT()的作用
举报原因:
原因补充:

(最多只允许输入30个字)