assert.h

✍ dations ◷ 2025-12-08 06:43:00 #

assert.h是C标准函数库中的头文件。其中定义了assert()宏用于程序调试。

在C标准函数库中,它是个非常特别的头文件,你可以将它引入数次以获得不同的效果,此效果依引入时是否以定义NDEBUG而定。

assert()是一个诊断宏,用于动态辨识程序的逻辑错误条件。其原型是:void assert(int expression);

如果宏的参数求值结果为非零值,则不做任何操作(no action);如果是零值,用宽字符打印诊断消息,然后调用abort()。诊断消息包括:

诊断信息的显示目标依赖于被调用程序的类型。如果是控制台程序,诊断信息显示在stderr设备;如果是基于窗口的程序,assert()产生一个Windows MessageBox来显示诊断信息。

程序可以屏蔽掉所有的assert()而无需修改源代码。这只需要在命令行调用C语言的编译器时添加宏定义的命令行选项,定义NDEBUG宏;也可以在源程序程序引入<assert.h>之前就使用#define NDEBUG来定义宏。被屏蔽的assert()甚至不对传递给它的参数表达式求值,因此使用assert()时其参数表达式不能有副作用(side-effects)。

相关

  • interleukin 10n/an/an/an/an/an/an/an/an/an/a白细胞介素-10(Interleukin 10,IL-10,白介素-10),也称为人细胞因子合成抑制因子(cytokine synthesis inhibitory factor,CSIF),是一种抗炎症细胞。在
  • 厄洛替尼厄洛替尼(英语:Erlotinib,商品名:Tarceva,特罗凯)是用于治疗非小细胞肺癌(英语:Non-small-cell lung carcinoma)(NSCLC)、胰腺癌等几种癌症的药物,作为一种酪氨酸激酶抑制剂作用于表皮生
  • 电磁相互作用电磁力(英语:electromagnetic force)是处于电场、磁场或电磁场的带电粒子所受到的作用力。大自然的四种基本力中,电磁力是其中一种,其它三种是强作用力、弱作用力、引力。光子是
  • 高雄捷运 §从政府兴建到民间兴建营运后转移模式高运量捷运:BOT环状轻轨:第三轨供电(750伏特直流电)高雄都会区大众捷运系统,简称高雄捷运、高捷,为中华民国第二座投入营运的城市轨道交通系统、首座机场联络轨道系统,以高雄市区为
  • 黑蝙蝠中队文物陈列馆坐标:24°48′43″N 120°58′11″E / 24.811882°N 120.969692°E / 24.811882; 120.969692黑蝙蝠中队文物陈列馆,位于新竹市文化局对面之一座军事文物陈列馆,为当年黑蝙蝠中
  • 豪萨人豪萨人是西非萨赫勒地区的一个民族,主要聚居于尼日利亚北部和尼日尔东南部,苏丹、喀麦隆、加纳、科特迪瓦和乍得也有大量该族人口,其余族人则散居于西非以及传统上从撒哈拉沙漠
  • 朱子家训《朱子家训》可以指:
  • 太山寺太山寺(日语:たいさんじ)是位于日本兵库县神户市西区的一座天台宗的佛教寺院。山号三身山。在传说中太山寺始建于西元716年。现在的建筑修建于1285年之后。太山寺一带森林保存
  • 米瑞安·玛格莱斯米瑞安·玛格莱斯(英语:Miriam Margolyes,OBE,/ˈmɑːrɡəliːz/,1941年5月18日-)是一位英国出生的演员和配音员。她曾因《纯真年代》(1993年)中的表演获得英国电影学院奖,还曾在《
  • 东爪草东爪草(学名:)为景天科东爪草属下的一个种。