C语言 <assert.h> assert() 宏
-
描述
C库宏void assert(int expression)允许将诊断信息写入标准错误文件。换句话说,它可用于在C程序中添加诊断。 -
声明
以下是assert()宏的声明。void assert(int expression);
参数- expression - 这可以是变量或任何C表达式。如果expression的计算结果为TRUE,则assert()不执行任何操作。如果表达式的计算结果为FALSE,则assert()在stderr上显示一条错误消息(用于显示错误消息和诊断的标准错误流),并中止程序执行。
-
返回值
该宏不返回任何值。示例以下示例显示assert()宏的用法-#include <assert.h> #include <stdio.h> int main () { int a; char str[50]; printf("Enter an integer value: "); scanf("%d", &a); assert(a >= 10); printf("Integer entered is %d\n", a); printf("Enter string: "); scanf("%s", str); assert(str != NULL); printf("String entered is: %s\n", str); return(0); }
让我们以交互模式编译并运行上述程序,如下所示:Enter an integer value: 11 Integer entered is 11 Enter string: jc2182 String entered is: jc2182