最終更新日時:
が更新

履歴 編集

function
<cstdio>

std::perror

namespace std {
  void perror(const char* s);
}

概要

直近のエラーに対応するエラーメッセージを、標準エラー出力に出力する。

効果

errnoの現在の値に対応するエラーメッセージを、標準エラー出力ストリームstderrへ出力する。出力されるメッセージはstd::strerror(errno)が返す文字列と同等である。

  • sがヌルポインタではなく、かつs[0]がヌル文字ではない場合、sが指す文字列、": "、エラーメッセージ、改行の順に出力する。
  • そうでない場合、エラーメッセージと改行のみを出力する。

戻り値

なし

#include <cstdio>

int main()
{
  // 存在しないファイルを開こうとして失敗させる
  std::FILE* fp = std::fopen("nonexistent-file", "r");
  if (fp == nullptr) {
    std::perror("fopen failed");
  }
}

出力例

fopen failed: No such file or directory

バージョン

言語

  • C++98

関連項目

  • std::strerror: エラー番号に対応するエラーメッセージ文字列を取得する
  • errno: 直近のエラー番号を保持するマクロ

参照