当前位置: 首页 > news >正文

C语言assert断言

断言是对某种假设条件进行检查。
C语言中,断言被定义成宏的形式,原型在<assert.h>中。

#include <assert.h>
void assert( int expression );

assert将通过检查表达式expression的值来决定是否需要终止执行程序。
如果expression的值为假,将首先向标准错误流stderr打印一条出错信息,然后通过调用abort函数终止程序运行,否则assert无任何作用。
注意点
断言用来处理不应该发生的非法情况,而对于可能发生且必须处理的情况应该使用错误处理代码,而不是断言。
默认情况下,assert宏只在Debug版本中才能够起作用,在Release版本中将被忽略。

// 非Debug模式
#define NDEBUG
// Debug模式
#define DEBUG    
http://www.lryc.cn/news/226327.html

相关文章:

  • 开发模型(瀑布、螺旋、scrum) 和 测试模型(V、W)、增量和迭代、敏捷(思想)及敏捷开发 scrum
  • [蓝桥杯复盘] 第 3 场双周赛20231111
  • 浅析移动端车牌识别技术的工作原理及其过程
  • 计算机网络期末复习-Part4
  • 解决EnableKeyword(“_Emission“)运行状态不起作用
  • 管理能力测评,如何提升管理能力?
  • 基于工业智能网关的汽车充电桩安全监测方案
  • 基于JavaWeb+SpringBoot+微信小程序的酒店商品配送平台系统的设计和实现
  • Android修行手册-POI操作Excel实现超链接并且变为蓝色
  • Halcon WPF 开发学习笔记(2):Halcon导出c#脚本
  • Scrum敏捷开发全流程,3款必备的项目管理工具!
  • 基于Quartz实现动态定时任务
  • hdlbits系列verilog解答(计算向量中1出现次数)-41
  • 2023年最新的前端面试收集(1)
  • flutter实现上拉加载下拉刷新
  • tomcat+idea--如何在idea上发布项目
  • 考研数据结构单链表的增删改查看这一篇就够了
  • Windows查看端口占用情况
  • Python:词法分析(行结构与显式、隐式行拼接)
  • 前端Vue 结合xlxs库实现解析excel文件,并动态组装表头!
  • RabbitMQ集群配置以及负载均衡配置
  • Leetcode Hot100之六:42.接雨水
  • electron 主进程 和 渲染进程通信 ipcRenderer 和 mainWindow.webContents
  • 关于VUE启动内存溢出
  • HBase学习笔记(1)—— 知识点总结
  • 【Linux】 awk命令使用
  • Sentinel网关限流
  • solidworks对电脑要求高吗?2023solidworks配置要求
  • 搭建神经网络(torch.nn的用法)
  • 卡码网语言基础课 | 11. 句子缩写