断言 assert() 的使用总结
来源:互联网 发布:代理ip api python 编辑:程序博客网 时间:2024/05/08 13:46
assert()使用总结
1.头文件
assert()定义在头文件 #include<assert.h>中.
2.用法
断言assert在使用的过程中,如果断言表达式expression的值为真,则断言失败,则程序将会终止。
1.1 . assert()是程序调试的一个重要手段,使用方法为assert(expression).
它可以在debug和release两种模式下进行使用,并且在两种模式下的使用下产生的结果是不相同的.
a.debug模式
在debug模式下,当程序运行到assert(expression)这条代码时,就会计算expression这个表达式的值,如果它的值为0,则中断执行,并弹出一个警告框,用户可以选择“继续”,“重试”,“忽略”。也因为此模式下含有调试信息,所以它将不会对程序进行优化,assert对应的宏将会被执行。
b.release模式
在release模式下,assert(expression)不会被编译进代码,在该模式下,编译器会对代码进行优化,assert对应的宏不会被执行。
1.2.每个assert()只能检验一个条件,若同时检验多个条件,如果断言失败,则无法判断出是由那个式子失败引起的(eg.assert(a>0 && b<0) 或者 assert(a>0) && assert(b<0) 这两种写法都是不对的)。
1.3.在assert()中不能将变量运算放在assert的表达式中。
eg.输出0--10之间的正整数,包含(10)
不能写为assert(i++<10) 如果这样写,那么在i=9时这个程序就会退出,根本不会执行i=10的情况。
应写为 assert(i<10),i++
1.4.assert()是用来避免在程序运行时产生的错误,而不是用来处理异常的。错误是在编程中不应该出现的,而异常在编程中有时候是无法避免的。在C语言中产生的异常可以通过条件判断语句来进行处理。
- 断言 assert() 的使用总结
- assert断言的使用
- assert断言的使用
- 断言assert的使用
- 断言(assert)的使用
- assert(断言)的使用
- assert(断言)的使用
- assert断言函数的使用
- 关于assert断言的使用
- assert(断言)的使用
- 断言assert()函数的使用
- Python 断言assert的使用
- assert 断言用法总结
- 断言assert总结
- 关于ASSERT(断言)使用的规则
- java调试技巧----assert断言的使用
- gcc 中 assert(断言)的使用
- c++之ASSERT断言的使用
- 【c++】用c++实现复数类及运算符的重载
- Mac和Linux下date命令
- jmeter源码---StandardJMeterEngine
- Java内存区域详解
- Bone Collector II(01背包 第K优解)
- 断言 assert() 的使用总结
- Gensim初步使用和详细解释(该代码只能处理英文,处理中文不可用该代码)
- SSM之Mybatis查询以及批量操作
- yml 字符串拼接
- 关于 我找到的响应式书籍整理
- Leetcode之Maximum Average Subarray I
- typedef和#define
- 我的博客,以前是新浪微博登录的,现在登录不上去了
- org.springframework.context.ApplicationContextAware使用理解