C/C++中assert的用法2010-12-17 by zhiwei assert宏能测试传入表达式的真假值,当表达式为真(true),则不会有任何反应;当表达式为假(false),则函数将输出错误信息,并中断程序的执行。 assert宏可以用来判断某表达式的真假值,并在程序执行的过程中实时响应错误信息,因此在程序开发的过程中,常常被用来作程序纠错的工具,当程序开发完成,只需要在加载头文件前面,利用#define指令定义NDEBUG这个关键字,则所有assert都会失效,源程序不需做任何修改。 当传入的表达式为真,则assert不会有任何响应;当表达式为假时,assert函数会显示出发生错误的表达式、源代码文件名以及发生错误的程序代码行数,并调用abort函数,结束程序执行。 今天在群里讨论了一下关于assert用法的问题,自己现在算是明白了。 代码如下:
问,这个循环了多少次? 注意:assert is designed to capture programming errors, not user or running errors。所以不要滥用assert。诸如assert(i++)之类的用法毫无意义。 关于assert的说明在这里:http://www./reference/clibrary/cassert/assert/ |
|
来自: fjc_Embeded > 《C/C》