#ifndef __errmacros_h__
#define __errmacros_h__
#include #ifdef debug
#define debug_print(...) \
do while(0)
#else
#define debug_print(...) (void)0
#endif
#define error_handler(err) \
do \
} while(0)
#define sbuffer_error(err) \
do \
} while(0)
#define syscall_error(err) \
do \
} while(0)
#define check_mkfifo(err) \
do \
} \
} while(0)
#define file_open_error(fp) \
do \
} while(0)
#define file_close_error(err) \
do \
} while(0)
#define file_scanf_error(err) \
do \
} while(0)
#define file_puts_error(err) \
do \
} while(0)
#define asprintf_error(err) \
do \
} while(0)
#define fflush_error(err) \
do \
} while(0)
#endif
使用舉例:debug_print("output is %s,%d",output_buf,40)..或者debug_print("output error")
二,assert函式
需要引入#include void assert(int expression)
當expression正確的時候不執行任何動作,如果expression為假則會在標準錯誤stderr上列印錯誤資訊,並終止程式
#include #include int main()
三、 perror函式
perror ( )用 來 將 上 一 個 函 數 發 生 錯 誤 的 原 因 輸 出 到 標 準 裝置 (stderr) 。引數 s 所指的字串會先列印出,後面再加上錯誤原因字串
#include //#include int main(void)
return 0;
}
列印輸出 ./root: no such file or directory
四,linux下的三種流,stdin,stdout,stderr
這裡主要記錄stdout和stderr,標準輸出stdout, 標準輸出的檔案識別符號為1
#include intmain(void)
兩個hello會在螢幕上輸出
stderr舉例,標準錯誤輸出的檔案識別符號為2
#include int main(void)
也會在螢幕上輸出列印資訊 hello和error
從上邊看有什麼意義呢stderr 接下來看
#include int main(void)
執行 ./test 1>log.txt 2>error.txt 這樣error就列印到error.txt中,而hello就列印在log.txt中。
在c語言裡,也可以使用freopen函式重定向輸出流。
#include int main(void)
上邊**編譯後,輸出就列印到out.txt中了。
五、strerror函式
這個函式的作用效果其實和上邊的差不多
#include #include #include #include int main(void)
errno是#include 中的全域性變數,效果如下
php列印錯誤資訊
方法一 修改php.ini 顯示錯誤資訊 display errors on 顯示php開始錯誤資訊 display startup errors on 日誌記錄錯誤資訊 log errors on方法二 需要除錯的php 檔案頭部加入 ini set display errors 1 錯誤資訊 i...
spring ibatis 不列印錯誤資訊
最近學習spring ibatis的時候 碰到乙個問題 部分 如下 msgtempsend.setsendtype 2222222222222 public object insertstudent student student 如 上 資料庫中sendtype 字段 是number 2 所以在插...
php 不列印錯誤資訊 php不輸出錯誤資訊怎麼辦
php不輸出錯誤資訊的解決辦法 首先開啟 php.ini 然後修改內容為 error reporting e alldisplay errors on 最後儲存修改即可。本教程操作環境 windows7系統 php7.1版,該方法適用於所有品牌電腦。php不輸出錯誤資訊的解決辦法 安裝完lnmp之後...