文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>assert 含义和用法

assert 含义和用法

时间:2010-04-07  来源:flyfordream_h

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

assert(表达式);  
如果   表达式   的结果为真,则顺利通过,如果为假,中断程序运行。  
但是这是在debug模式下的情况,在release模式下,assert相当于“空语句”,编译器会忽略它,也就是说assert在release模式下不起作用。   
 

这是一个宏(而不是函数),如果其中的表达式为假的话就quit程序,一般在调试的时候使用,在VC中需要在debug模式时才有用  
  编译器通过静态分析代码来查错,断言程序自动检测运行时刻错误,我们就能尽早发现错误。一般有下面几个类型    
ANSI   C断言  
assert(),需包含<assert.h>和定义NDEBUG    
C运行时刻函数库断言   
需包含<crtdbg.h>   是VC++中的特殊断言  
    _ASSERT不显示失效表达式  
    _ASSERTE显示失效表达式,但不支持Unicode      
MFC库的断言  
    ASSERT宏和_ASSERT宏  
MFC还提供了ASSERT宏的几个变种,象VERIFY、ASSERT_VALID等  

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载