assert()是c語言標準庫提供的一個通用的標準庫預處理器宏。在代碼中經常用assert()來判斷一個必須的前提條件。例如:要打開一個文件,我們必須先知道合格文嘉你的名字,然后在可以打開為了使用assert()必須包含與之對應的頭文件
#include < assert.h>
下面是一個簡單的例子:
assert(filename!=0);
判斷是否文件的名字為0。建興斷言,如果文件的 名字為0,那么斷言失敗,輸出錯誤的診斷信息,然后中止程序。
assrt.h是c標準庫頭文件的c名字。c++程序可以通過使用c的庫頭文件的c名字或者c++的名字來使用它。
這個頭文件的c++名字是cassert. c庫頭文件的c++名字總是以c開頭,后面跟的是c名字去掉.h的名字。(因為c++中,頭文件的后綴各不相同,所以標準的c++沒有指定頭文件的后綴).
使用c庫頭文件名字和使用c++的名字,那么#include 預處理器的效果也是不一樣的。
例如:下面的#include指示符;
#include<cassert>
當我們把這個頭文件讀入我們的文本文件中的時候,頭文件中的內容 好似不可見的。因為所有的c++庫名字是在std名字空間中定義的。所以我們的文本文件是不可見的。除非我們使用using指示符顯示地使其可見。
using  namespace  cassert;
使用c庫的頭文件就可以直接的在文本文件中使用assert()。而無需使用using指示符了。