當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ strerror()用法及代碼示例


C++ 中的strerror() 函數返回係統錯誤代碼的文本說明。

strerror()原型

char* strerror( int errnum );

strerror() 接受一個參數:errnum,它是一個表示錯誤代碼的整數值。此函數將錯誤代碼轉換為說明錯誤的合適字符串。

strerror() 返回的說明與 perror() 的說明相同。返回的字符串不能被程序修改。但它可能會被後續調用 strerror() 覆蓋。

它在<cstring> 頭文件中定義。

參數:

errnum :表示錯誤代碼的整數值。

返回:

strerror() 函數返回一個指向空終止字符串的指針,該字符串包含與 errnum 對應的錯誤說明。

示例:strerror() 函數的工作原理

#include <cstring>
#include <cmath>
#include <cstdio>
#include <cerrno>
#include <iostream>

using namespace std;

int main()
{
    float log_neg = log(-2.5);
    cout << "Log of negative number : " << strerror(errno) << endl;

    /* example.txt does not exist */
    FILE * fp = fopen("example.txt","r");
    if (fp == NULL)
        cout << "Error opening file : " << strerror(errno) << endl;

    return 0;
}

運行程序時,輸出將是:

Log of negative number : Numerical argument out of domain
Error opening file : No such file or directory

相關用法


注:本文由純淨天空篩選整理自 C++ strerror()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。