C语言assert断言

简介: 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
相关文章
|
8月前
|
测试技术 C语言 开发者
【C语言】assert断言:保护程序的利器
【C语言】assert断言:保护程序的利器
90 0
|
8月前
|
程序员 C语言 UED
详解C语言assert宏
详解C语言assert宏
88 0
|
7月前
|
C语言
C语言——assert函数
C语言——assert函数
69 1
|
7月前
|
编译器 程序员 C语言
【C语言进阶篇】assert宏 使用详解
【C语言进阶篇】assert宏 使用详解
|
7月前
|
安全 C语言
【C语言】:野指针和assert断言
【C语言】:野指针和assert断言
42 0
|
程序员 C语言
【C语言】如何写出好(易于调试)的代码——assert和const的使用
【C语言】如何写出好(易于调试)的代码——assert和const的使用
60 0
|
8月前
|
安全 程序员 编译器
[C语言]指针进阶之野指针与assert断言
[C语言]指针进阶之野指针与assert断言
|
8月前
|
算法 编译器 C语言
C语言assert断言详解指针(3)
C语言assert断言详解指针(3)
|
19天前
|
存储 算法 C语言
【C语言程序设计——函数】素数判定(头歌实践教学平台习题)【合集】
本内容介绍了编写一个判断素数的子函数的任务,涵盖循环控制与跳转语句、算术运算符(%)、以及素数的概念。任务要求在主函数中输入整数并输出是否为素数的信息。相关知识包括 `for` 和 `while` 循环、`break` 和 `continue` 语句、取余运算符 `%` 的使用及素数定义、分布规律和应用场景。编程要求根据提示补充代码,测试说明提供了输入输出示例,最后给出通关代码和测试结果。 任务核心:编写判断素数的子函数并在主函数中调用,涉及循环结构和条件判断。
55 23

热门文章

最新文章