errno:在系統出現錯誤時內核把錯誤寫入到變量errno中。在系統調用返回失敗時,必須緊接着引用errno變量,避免程序中的下一條系統調用時出錯覆蓋errno的值。
perror()和strerror():用來打印錯誤提示信息。
perror:將錯誤信息出處到終端。
int main()
{
FILE * pFile;
pFile = fopen("unexist.ent", "rb");
if (pFile == NULL)
perror("The following error occurred");
else
fclose(pFile);
return 0;
}
運行結果:
strerror:將錯誤信息輸出到指定的緩衝區。
int main()
{
FILE * pFile;
pFile = fopen("unexist.ent", "rb");
if (pFile == NULL)
printf("%s", strerror(errno)); //打印錯誤
else
fclose(pFile);
return 0;
}
運行結果: