C言語 - 標準ライブラリ - stdio.h - perror
- 1. 概要
- 2. perror
1. 概要
システムのエラーメッセージに関する関数です。
2. perror
「perror」は、システムのエラーメッセージを標準出力へ出力する、一番原始的な関数です。
void perror(const char *string);
例えば以下のようなソースを書いて
#include <errno.h>
#include <stdio.h>
#include <string.h>
int main()
{
FILE *file;
if ((file = fopen("aaa.txt", "r")) == NULL)
{
perror("fopen");
return errno;
}
fclose(file);
return 0;
}
ファイル aaa.txt が存在しない状態で実行した場合、以下のように表示されます。
> ./a.out
fopen: No such file or directory
前半の「fopen:」は、「perror」へ渡した文字列の末尾に :(コロン)をつけたものです。
引数が ""(NULL 文字列)の場合、コロンも含めて表示されず、エラーメッセージのみとなります。
もっとも原始的というのは、標準出力へただ出力するだけなので、文字列として編集して出力するには「string.h」にある、「strerror」や「strerror_r」を使用します。
|
|