assert 函式用法

2022-09-18 17:27:07 字數 345 閱讀 3188

assert是定義在標頭檔案cassert中的巨集

其作用是如果他的返回值不為真則終止程式。

assert(expression);

if 為假,先向stderr列印一條錯誤資訊,再用abort終止程式

缺點:頻繁呼叫影響程式效能,增加程式開銷。

可在呼叫cassert後,用#define ndebug來禁用assert

每個assert只檢驗乙個條件,因為同時檢驗多個條件時,如果斷言失敗,無法直觀的判斷是哪個條件失敗

不能使用改變環境的語句,因為assert只在debug個生效,如果這麼做,會使用程式在真正執行時遇到問題

有的地方,assert不能代替條件過濾

assert 函式用法

assert巨集的原型定義在中,其作用是如果它的條件返回錯誤,則終止程式執行,原型定義 include void assert int expression assert的作用是現計算表示式 expression 如果其值為假 即為0 那麼它先向stderr列印一條出錯資訊,然後通過呼叫 abort...

assert 函式用法

assert 函式用法 2007 10 17 12 15 assert巨集的原型定義在中,其作用是如果它的條件返回錯誤,則終止程式執行,原型定義 include void assert int expression assert的作用是現計算表示式 expression 如果其值為假 即為0 那麼它...

assert 函式用法

assert巨集的原型定義在assert.h中,其作用是如果它的條件返回錯誤,則終止程式執行.原型定義 assert的作用是現計算表示式 expression 如果其值為假 即為0 那麼它先向stderr列印一條出錯資訊,然後通過呼叫 abort 來終止程式執行。請看下面的程式清單badptr.c ...