C 庫宏 - assert()

C 標(biāo)準(zhǔn)庫 - <assert.h> C 標(biāo)準(zhǔn)庫 - <assert.h>

描述

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í)行。

返回值

這個宏不返回任何值。

實例

下面的實例演示了 assert() 宏的用法。

#include <assert.h>
#include <stdio.h>

int main()
{
   int a;
   char str[50];
	 
   printf("請輸入一個整數(shù)值: ");
   scanf("%d\n", &a);
   assert(a >= 10);
   printf("輸入的整數(shù)是: %d\n", a);
    
   printf("請輸入字符串: ");
   scanf("%s\n", &str);
   assert(str != NULL);
   printf("輸入的字符串是: %s\n", str);
	
   return(0);
}

讓我們在交互模式下編譯并運行上面的程序,如下所示:

請輸入一個整數(shù)值: 11
輸入的整數(shù)是: 11
請輸入字符串: w3cschool 
輸入的字符串是: w3cschool 

C 標(biāo)準(zhǔn)庫 - <assert.h> C 標(biāo)準(zhǔn)庫 - <assert.h>