成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C++ assert()函數(shù)應(yīng)用方式剖析

開發(fā) 后端
C++ assert()函數(shù)的應(yīng)用方式將會(huì)在這篇文章中進(jìn)行詳解,相信對此有興趣的朋友們應(yīng)該可以根據(jù)我們介紹的內(nèi)容充分掌握這方面的應(yīng)用技巧。

作為一個(gè)經(jīng)驗(yàn)豐富的編程人員來說,對于C++編程語言應(yīng)該不會(huì)陌生的,它的應(yīng)用可以幫助我們輕松的實(shí)現(xiàn)各種功能需求。在這里我們會(huì)對C++ assert()函數(shù)的一些基本應(yīng)用做一個(gè)詳細(xì)介紹。

assert宏的原型定義在< assert.h>中,其作用是如果它的條件返回錯(cuò)誤,則終止程序執(zhí)行,原型定義:

  1. #include < assert.h>   
  2. void assert( int expression );  

C++ assert()函數(shù)的作用是現(xiàn)計(jì)算表達(dá)式 expression ,如果其值為假(即為0),那么它先向stderr打印一條出錯(cuò)信息,然后通過調(diào)用 abort 來終止程序運(yùn)行。請看下面的程序清單badptr.c:

  1. #include < stdio.h>   
  2. #include < assert.h>   
  3. #include < stdlib.h>   
  4. int main( void )   
  5. {   
  6. FILE *fp;   
  7. fp = fopen( "test.txt", "w" );
    //以可寫的方式打開一個(gè)文件,如果不存在就創(chuàng)建一個(gè)同名文件   
  8. assert( fp ); //所以這里不會(huì)出錯(cuò)   
  9. fclose( fp );   
  10. fp = fopen( "noexitfile.txt", "r" );
    //以只讀的方式打開一個(gè)文件,如果不存在就打開文件失敗   
  11. assert( fp ); //所以這里出錯(cuò)   
  12. fclose( fp ); //程序永遠(yuǎn)都執(zhí)行不到這里來   
  13. return 0;   
  14. }   
  15. [root@localhost error_process]# gcc badptr.c   
  16. [root@localhost error_process]# ./a.out   
  17. a.out: badptr.c:14: main: Assertion `fp' failed.  

已放棄

使用C++ assert()函數(shù)的缺點(diǎn)是,頻繁的調(diào)用會(huì)極大的影響程序的性能,增加額外的開銷。 在調(diào)試結(jié)束后,可以通過在包含#include < assert.h>的語句之前插入 #define NDEBUG 來禁用assert調(diào)用,示例代碼如下:

  1. #include < stdio.h>   
  2. #define NDEBUG   
  3. #include < assert.h> 

以上就是對C++ assert()函數(shù)的相關(guān)介紹。

【編輯推薦】

  1. C++ Memento模式應(yīng)用法則
  2. C++內(nèi)存對齊詳細(xì)使用指南
  3. C++常規(guī)DLL應(yīng)用方式介紹
  4. C++冒泡排序基本應(yīng)用技巧分享
  5. C++ Vector用法深入剖析
責(zé)任編輯:曹凱 來源: 博客園
相關(guān)推薦

2022-07-18 15:32:37

C++虛函數(shù)表

2010-01-27 13:38:29

C++ Sum函數(shù)

2010-02-02 17:33:17

C++友元函數(shù)

2010-01-21 11:23:58

C++函數(shù)調(diào)用

2010-01-26 17:16:33

C++應(yīng)用程序

2010-02-06 17:39:52

C++ strtok

2010-02-05 16:46:58

C++ TinyXml

2010-02-04 13:45:36

C++類模板

2010-01-20 14:25:56

函數(shù)調(diào)用

2010-02-02 10:07:59

C++全局函數(shù)

2010-01-14 17:42:47

CC++

2010-02-03 10:11:17

C++動(dòng)態(tài)數(shù)組

2010-02-03 15:27:26

C++ static

2010-02-04 13:39:44

C++數(shù)組參數(shù)

2010-02-04 14:29:45

C++ typenam

2010-02-06 16:21:35

C++常規(guī)DLL

2010-01-28 16:31:54

C++類型

2010-02-02 17:39:31

C++構(gòu)造函數(shù)

2010-02-04 16:39:26

C++析構(gòu)函數(shù)

2010-02-05 14:36:20

C++智能指針
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 精品麻豆剧传媒av国产九九九 | 国产日韩精品一区二区三区 | 在线观看黄色大片 | 国产精品免费在线 | 伊人伊人 | 欧美激情一区二区三区 | 91精品国产综合久久精品 | 精品一区二区三区在线观看 | 最新中文字幕 | 日本精品视频一区二区三区四区 | av在线一区二区 | 亚洲高清av在线 | 欧美理伦片在线播放 | 99草免费视频 | 嫩草视频在线看 | 在线一区| 羞羞的视频在线 | 国产真实精品久久二三区 | 欧美日韩综合 | 亚洲精品久久久久久久久久久久久 | 四虎影院在线播放 | 国内精品伊人久久久久网站 | 亚洲高清一区二区三区 | 91看片免费版 | 亚洲精品乱码久久久久v最新版 | 精精国产xxxx视频在线播放7 | 丝袜美腿一区 | 女女爱爱视频 | 欧美精品在线免费观看 | 色天天综合 | 青春草国产| 成年人精品视频在线观看 | 97国产超碰 | 日本在线黄色 | 成人免费网视频 | 精品99在线 | 99热在线播放 | 亚洲午夜精品一区二区三区 | 91视频在线观看免费 | 天天干夜夜操 | 免费特级黄毛片 |