日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

linux系統下如何使用assert函數?

瀏覽:178日期:2023-07-12 14:46:24

只要看得懂程序的人都知道assert,在Windows下使用VC編寫,使用assert之后,只需在IDE中設置為debug版或者是release版,編譯器就會自動忽略掉assert。但是在Linux下,必須要在編譯命令中加入-DNDEBUG中,系統編譯時才不會將assert編譯進去。不然,程序運行時有可能會被assert中斷。那linux系統下如何使用assert函數呢?下面就和大家說一下linux系統下使用assert函數的方法。

linux系統下如何使用assert函數?

步驟如下:

assert宏的原型定義在《assert.h》中,其作用是如果它的條件返回錯誤,則終止程序執行,原型定義:

#include 《assert.h》

void assert( int expression );

assert的作用是現計算表達式 expression ,如果其值為假(即為0),那么它先向stderr打印一條出錯信息,

然后通過調用 abort 來終止程序運行。

請看下面的程序清單badptr.c:

#include 《stdio.h》

#include 《assert.h》

#include 《stdlib.h》

int main( void )

{

FILE *fp;

fp = fopen( “test.txt”, “w” );//以可寫的方式打開一個文件,如果不存在就創建一個同名文件

assert( fp ); //所以這里不會出錯

fclose( fp );

fp = fopen( “noexitfile.txt”, “r” );//以只讀的方式打開一個文件,如果不存在就打開文件失敗

assert( fp ); //所以這里出錯

fclose( fp ); //程序永遠都執行不到這里來

return 0;

}

[root@localhost error_process]# gcc badptr.c

[root@localhost error_process]# 。/a.out

a.out: badptr.c:14: main: Assertion `fp‘ failed.

已放棄

使用assert的缺點是,頻繁的調用會極大的影響程序的性能,增加額外的開銷。

在調試結束后,可以通過在包含#include 《assert.h》的語句之前插入 #define NDEBUG 來禁用assert調用,示例代碼如下:

#include 《stdio.h》

#define NDEBUG

#include 《assert.h》

用法總結與注意事項:

1)在函數開始處檢驗傳入參數的合法性

如:

int resetBufferSize(int nNewSize)

{

//功能:改變緩沖區大小,

//參數:nNewSize 緩沖區新長度

//返回值:緩沖區當前長度

//說明:保持原信息內容不變 nNewSize《=0表示清除緩沖區

assert(nNewSize 》= 0);

assert(nNewSize 《= MAX_BUFFER_SIZE);

。。。

}

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

不好: assert(nOffset》=0 && nOffset+nSize《=m_nInfomationSize);

好: assert(nOffset 》= 0);

assert(nOffset+nSize 《= m_nInfomationSize);

3)不能使用改變環境的語句,因為assert只在DEBUG個生效,如果這么做,會使用程序在真正運行時遇到問題

錯誤: assert(i++ 《 100)

這是因為如果出錯,比如在執行之前i=100,那么這條語句就不會執行,那么i++這條命令就沒有執行。

正確: assert(i 《 100)

i++;

4)assert和后面的語句應空一行,以形成邏輯和視覺上的一致感

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

上述也就是linux系統下使用assert函數方法的全部內容了。如你還不知道在linux系統下如何使用assert函數的,不妨請你先看看上述的內容啊!看完了你也就知道怎么使用assert函數了。有興趣的用戶可以去來了解一下。

標簽: Linux系統
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩av电影一区| 日韩三级视频| 欧美国产精品| 三上悠亚国产精品一区二区三区| 好吊日精品视频| 麻豆视频观看网址久久| 日韩av中文在线观看| 亚洲精品88| 亚洲一级大片| 蜜臀久久99精品久久一区二区| 国产suv精品一区| 久久国产人妖系列| 亚洲精品伊人| 一区二区国产在线观看| 好吊日精品视频| 亚洲欧美日韩高清在线| 99精品美女| 香蕉成人av| www在线观看黄色| 久久亚洲精精品中文字幕| 日本午夜精品| 日韩中文字幕| 亚洲精品少妇| 日韩精品一二三四| 亚洲免费一区二区| 国产美女一区| 亚洲伦乱视频| 日韩成人精品一区| 麻豆91小视频| 国产精品天堂蜜av在线播放| 韩国一区二区三区视频| 国产图片一区| 欧美在线首页| 欧美另类中文字幕 | 亚洲有吗中文字幕| 久久国产中文字幕| 免费久久久久久久久| 欧美+日本+国产+在线a∨观看| 亚洲婷婷在线| 爽爽淫人综合网网站| 蜜桃久久久久久| 日韩毛片网站| 国产伦理久久久久久妇女| 国产美女亚洲精品7777 | 在线视频精品| 亚洲精品激情| 国产欧美日韩精品一区二区免费| 麻豆久久久久久久| 美女久久99| 欧美日韩免费观看视频| av亚洲免费| 亚洲久久一区| 久久丁香四色| 日韩一区欧美| 午夜在线精品| 国产亚洲一区二区三区不卡| 美腿丝袜亚洲一区| 蜜臀国产一区| 国产精品视区| 国产乱人伦精品一区| 成人亚洲精品| 欧美日韩激情| 无码日韩精品一区二区免费| 国产丝袜一区| 夜鲁夜鲁夜鲁视频在线播放| 亚洲综合精品| 国产精品s色| 久久国产中文字幕| 美美哒免费高清在线观看视频一区二区| 亚洲aa在线| 欧美久久香蕉| 久久久久国产| 日本精品国产| 日韩欧美精品| 色综合视频一区二区三区日韩| 国产精品一区二区免费福利视频| 97精品一区二区| 视频一区欧美日韩| 欧美精品国产一区| 日韩免费高清| 日本在线不卡视频| 亚洲综合在线电影| 日韩成人一级| 亚洲高清毛片| 麻豆极品一区二区三区| 久久精品高清| 日韩av成人高清| 久久爱www.| 99热国内精品| 免费中文字幕日韩欧美| 超碰在线99| 日韩国产欧美在线播放| 欧美a级片一区| 国产欧美在线观看免费| 免费av一区二区三区四区| 亚洲夜间福利| 蜜芽一区二区三区| 免费精品一区| 免费观看亚洲| 秋霞影院一区二区三区| 国产精品免费精品自在线观看| 国产精品国码视频| 91亚洲国产成人久久精品| 你懂的亚洲视频| 欧美片第1页综合| 香蕉成人久久| 中文精品在线| 日本 国产 欧美色综合| 韩日一区二区| 欧美激情视频一区二区三区免费 | 深夜福利亚洲| 久久99影视| 蜜臀久久久99精品久久久久久| 亚洲第一精品影视| av综合电影网站| 国产精品免费不| 一级成人国产| 老色鬼久久亚洲一区二区| 91视频一区| 97精品国产| 亲子伦视频一区二区三区| 97人人精品| 精品在线99| 三级亚洲高清视频| 视频在线观看国产精品| 亚洲精品婷婷| 日韩一区二区三区精品视频第3页 日韩一区二区三区免费视频 | 国产精品一卡| 日韩激情网站| 久久99国产精品视频| 麻豆一区二区三| 久久久久久久久久久9不雅视频| sm久久捆绑调教精品一区| 国产成人1区| 日韩欧美激情| 在线看片一区| 国产精品社区| 久久亚洲视频| 在线一区免费| 午夜久久av| 成人影视亚洲图片在线| 精品国产99| 99香蕉国产精品偷在线观看| 亚洲电影有码| 日韩欧美精品| 日韩二区在线观看| 欧美一级二级三级视频| 在线视频日韩| 免费国产自久久久久三四区久久| 麻豆国产欧美一区二区三区| 亚洲三级观看| 免费在线看一区| 欧美日韩国产一区二区在线观看| 国产精品任我爽爆在线播放 | 国产一区二区三区四区五区传媒| 国精品产品一区| 亚洲深爱激情| 成人在线超碰| 久久97视频| 精品一区毛片| 亚洲精品国产嫩草在线观看| av综合电影网站| 久久久久久久久丰满| 日本亚州欧洲精品不卡| 水蜜桃久久夜色精品一区的特点| 激情欧美亚洲| 亚洲tv在线| 亚洲精品一区二区妖精| 精品一区二区三区中文字幕在线| 久久久蜜桃一区二区人| 日本不良网站在线观看| 女同性一区二区三区人了人一 | 日本久久精品| 卡一卡二国产精品| 午夜精品久久久久久久久久蜜桃| 欧美/亚洲一区| 日韩高清一区在线 | 精品视频国产| 视频一区欧美精品| 免费看精品久久片| 国产精一区二区| 日韩中文字幕高清在线观看| 日韩在线卡一卡二| 日本午夜精品久久久久| 最近高清中文在线字幕在线观看1| 欧美在线日韩| 麻豆国产一区| 五月激情久久| 欧美一区二区三区久久精品| 色婷婷精品视频| 欧美一区精品| 亚洲精品网址| 国精品产品一区| 亚洲开心激情| 日韩久久电影| 国产乱码精品一区二区三区亚洲人| 久久久久久久久久久妇女| 天海翼亚洲一区二区三区| 国产在线|日韩| 国产精品久久国产愉拍|