程序分为debug版本和release版本
1.断言是仅在debug版本起作用的宏
当断言的表达式为逻辑真时,程序才继续往下执行,否则,终止程序
2.何时用断言?assert和if的区别
if下,所有的情况都是合理的,每一种合理情况用if-else分别处理,例如栈不空时进行出栈操作,栈空时跳出循环;
而断言下,是程序中的错误,遇到时必须终止程序。当检测到为逻辑假时,意味着我们假设的错误出现了。

#include<iostream>
#include<assert.h>
using namespace std;int main() {int a;while (cin >> a) {assert(a);    // assert(0 != a);cout << 10 / a << endl<<endl;}return 0;
}

断言assert与if相关推荐

  1. java断言assert初步使用:断言开启、断言使用

    1 说明 java断言assert是jdk1.4引入的. jvm断言默认是关闭的. 断言可以局部开启的,如:父类禁止断言,而子类开启断言,所以一般说"断言不具有继承性". 断言只适 ...

  2. C语言断言assert()函数

    文章目录 断言(assert)的用法 用法总结与注意事项 1)在函数开始处检验传入参数的合法性 2)每个assert只检验一个条件,因为同时检验多个条件时,如果断言失败,无法直观的判断是哪个条件失败 ...

  3. 断言(assert)详解

    目录 一.assert定义 二.用法总结与注意事项 四.以下是使用断言的几个原则: 一.assert定义 我一直以为 assert 仅仅是个报错函数,事实上,它居然是个宏,并且作用并非"报错 ...

  4. python断言assert实例_Python断言assert的用法代码解析

    在开发一个程序时候,与其让它运行时崩溃,不如在它出现错误条件时就崩溃(返回错误).这时候断言assert 就显得非常有用. python assert断言是声明布尔值必须为真的判定,如果发生异常就说明 ...

  5. python(11)-if语句,断言assert

    分支语句if 1.if基本语法 2 if语句的嵌套 3 比较运算符号 4 逻辑运算符: 5 整数随机数初应用 6 tip 7.断言assert 1.if基本语法 if语句开发中的应用场景:如果条件成立 ...

  6. python断言assert实例_Python 拓展之断言(assert)

    写在之前 大家好,这是首发在我公众号「Python空间」的第 60 篇文章,欢迎关注,期待和你的交流. 在昨天的文章中(零基础学习 Python 之处理异常)中学习了处理异常的正确姿势,今天我们继续来 ...

  7. 断言(Assert)与异常(Exception)

    断言(Assert)与异常(Exception) 参考文章: (1)断言(Assert)与异常(Exception) (2)https://www.cnblogs.com/lionden/p/Asse ...

  8. java 断言 assert 初步使用:断言开启、断言使用

    主要总结一下在eclipse中如何使用断言. (一)首先明确: java断言Assert是jdk1.4引入的. jvm 断言默认是关闭的. 断言只适用于复杂的调试过程. 断言一般用于程序执行结果的判断 ...

  9. 理解和正确使用Java中的断言(assert)

    理解和正确使用Java中的断言(assert) 一.语法形式:     Java2在1.4中新增了一个关键字:assert.在程序开发过程中使用它创建一个断言(assertion),它的 语法形式有如 ...

  10. java 断言 assert 详解:断言开启、断言使用

    java中的断言Assert的使用 一.背景 二.如何判断是否开启了断言 三.开启断言 四.断言的使用 方法一.assert <boolean表达式> 方法二.assert <boo ...

最新文章

  1. 九种东西吃多会...
  2. 20年工作经验的架构师写给程序员的一封信
  3. (转)Fedora 17 安装完全指南
  4. mysql 从服务器_如何使用mysql 主从服务器
  5. sublime-text-3设置输入中文方法
  6. [线性代数]Note2--矩阵消元
  7. 信息学奥赛一本通C++语言——1014:与圆相关的计算
  8. ASP.NET典型三层架构企业级医药行业ERP系统实战(8大模块22个子系统)
  9. [翻译] TGLStackedViewController
  10. struts2的struts.xml的详细配置1-1
  11. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第3节 两种获取Stream流的方式_5_Stream流中的常用方法_map...
  12. Petalinux安装
  13. 微信小程序-tab切换(scroll-view + swiper)
  14. 【办公】如何把选择题做成excel文档
  15. 〖Python APP 自动化测试实战篇④〗- 通过 appium 驱动夜神模拟器完成第一个自动化脚本 - 查看通讯录
  16. 火狐浏览器丢失书签,恢复无法处理备份文件的解决方案
  17. 国内某厂商摄像头敏感信息泄露漏洞事件分析
  18. MySQL数据库的锁 --- 六种分类 - 14种锁详细介绍
  19. 大数据开发跟大数据分析的区别是什么?
  20. InstallShield自定义对话框浅谈(转)

热门文章

  1. linux so fpic,linux编译动态库之fPIC
  2. ADSP21489之VDSP++开发
  3. 《我的心曾悲伤七次》
  4. excel制表基础:规范的制表理念和思路让效率提升 下篇
  5. 【杂类】Word中插入表格,表格的内容溢出了,显示不完整?
  6. 1190. 促销的价格
  7. 2019年1月8日LTC行情分析策略及操作建议(第二期附图)
  8. 全文搜索原理简单解析
  9. 个人使用linux软件分享
  10. Python中判断Nonetype的方法