我們大多都使用printf來列印一些資訊,其它的介面都比較少用。perror函式用的比較少,但是用起來除錯比printf列印更加詳細
注意:perror不能帶引數,printf可以帶引數
printf例子:
#includeint main(void)
return 0;
}
輸出結果:
fopen error!
perror例子:#include#include #include int main(void)
return 0;
}
輸出結果:
fopen error: no such file or directory
相比之下,perror會列印更詳細的錯誤log資訊 printf緩衝區重新整理
printf之緩衝區小結 今天除錯程式,發現了乙個有趣的現象,printf函式沒有按照預期的結果輸出重複的字串,單步除錯顯示 的確走到了列印螢幕的分支,沒有顯示不由得想到了是不是緩衝區去重新整理的問題,在列印語句後加上換行符後得到解決。用printf 輸出時是先輸出到緩衝區,然後再從緩衝區送到螢幕上...
庫函式perror和strerror的使用
在linux c程式設計中,我們經常需要呼叫庫函式,常見的比如open read write等等。而幾乎每個庫函式都會返回某類狀態值,用來表明呼叫正確與否。而對返回值進行檢查,是很有必要的,對於我們的系統除錯,是有很多幫助的。當系統呼叫失敗時,常用的乙個方法是使用庫函式perror 和strerro...
perror函式的用法
出處來自 c 庫函式 perror c 標準庫 c 標準庫 描述 c 庫函式 void perror const char str 把乙個描述性錯誤訊息輸出到標準錯誤 stderr。首先輸出字串 str,後跟乙個冒號,然後是乙個空格。宣告 下面是 perror 函式的宣告。void perror c...