C语言再学习-- assert 断言宏
生活随笔
收集整理的這篇文章主要介紹了
C语言再学习-- assert 断言宏
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
描述:
斷言?assert?是僅在?Debug?版本起作用的宏,它用于檢查“不應(yīng)該”發(fā)生的情況。C 庫宏?void assert(int expression)?允許診斷信息被寫入到標(biāo)準(zhǔn)錯誤文件中。換句話說,它可用于在 C 程序中添加診斷。
聲明:
下面是 assert() 宏的聲明。
void assert(int expression); 參數(shù) expression -- 這可以是一個變量或任何 C 表達(dá)式。 如果expression 為 TRUE,assert() 不執(zhí)行任何動作。 如果expression?為 FALSE,assert() 會在標(biāo)準(zhǔn)錯誤 stderr 上顯示錯誤消息,并中止程序執(zhí)行。 返回值這個宏不返回任何值。
實(shí)例
下面的實(shí)例演示了 assert() 宏的用法。
讓我們在交互模式下編譯并運(yùn)行上面的程序,如下所示:
#include <assert.h> #include <stdio.h>int main() {int a;char str[50];printf("請輸入一個整數(shù)值:");scanf("%d", &a);assert(a >= 10);printf("輸入的整數(shù)是:%d\n", a);printf("請輸入字符串:");scanf("%s", &str);assert(str != NULL);printf("輸入的字符串是:%s\n", str);return(0); } 請輸入一個整數(shù)值: 11 輸入的整數(shù)是: 11 請輸入字符串: w3cschool 輸入的字符串是: w3cschool 請輸入一個整數(shù)值: 3 a.out: assert.c:11: main: Assertion `a >= 10' failed. 已放棄 (核心已轉(zhuǎn)儲)
總結(jié)
以上是生活随笔為你收集整理的C语言再学习-- assert 断言宏的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你不懂API接口是什么?怎么和程序员做朋
- 下一篇: 2022年移动应用趋势洞察白皮书