C標準庫參考指南系列譯文(1)assert.h

鍾超發表於2012-02-04

英文原文:http://www.acm.uiuc.edu/webmonkeys/book/c_guide/2.1.html

原文作者:Eric Huss

中文譯者:柳驚鴻 Poechant

版權宣告:本文的原文版權歸Eric Huss所有,中文譯文版權歸Poechant所有。轉載請註明來自"柳大的CSDN部落格":http://blog.csdn.net/poechant


1.1 assert.h

斷言標頭檔案用於除錯。

巨集:

assert();


外部引用:

NDEBUG


1.1. assert

宣告:

void assert(intexpression);


斷言標頭檔案中的巨集允許你將一些特殊資訊寫入到標準錯誤檔案。

如果表示式的值為0(false),那麼表示式、原始檔名和行號都會被髮送給標準錯誤輸出,並呼叫abort函式。如果識別符號NDEBUG ("no debug")#define NDEBUG定義,那麼斷言標頭檔案中的巨集就什麼都不做。


標準錯誤輸出的格式如下:


Assertion failed: expression, filefilename, line line-number


例項:


#include<assert.h>


void open_record(char *record_name)

{

assert(record_name!=NULL);

/* Rest of code */

}


int main(void)

{

open_record(NULL);

}


C標準庫參考指南系列譯文(1)assert.h

C標準庫參考指南系列譯文(2)ctype.h

C標準庫參考指南系列譯文(3)errno.h

C標準庫參考指南系列譯文(4)float.h

C標準庫參考指南系列譯文(5)limits.h

C標準庫參考指南系列譯文(6)locale.h

C標準庫參考指南系列譯文(7)math.h

C標準庫參考指南系列譯文(8)setjmp.h

C標準庫參考指南系列譯文(9)signal.h

C標準庫參考指南系列譯文(10)stdarg.h

C標準庫參考指南系列譯文(11)stddef.h

C標準庫參考指南系列譯文(12)stdio.h(A)


版權宣告:本文的原文版權歸Eric Huss所有,中文譯文版權歸Poechant所有。轉載請註明來自"柳大的CSDN部落格":http://blog.csdn.net/poechant

-


相關文章