C言語,perror()関数でエラーメッセージを表示する

スポンサーリンク

鍛錬 754

C言語,perror()関数でエラーメッセージを表示する

最後に発生したエラーのエラーメッセージを表示するには、perror()関数を使用します。

エラー発生時、変数 errno に設定されたエラーコードを可読なエラーメッセージとして表示します。
 
以下は、perror()関数についてです。

#include <stdio.h>

void perror(const char *s);
 

引数

以下は、上記の引数についてです。

引数 意味
const char *s エラーメッセージと共に表示される文字列

 
上記の引数 s を含むエラーメッセージは、以下のフォーマットで出力されます。

s:(空白)エラーメッセージ(改行)

戻り値

戻り値はありません。

 
スポンサーリンク

プログラム

以下は、エラーメッセージを表示するプログラム、test_perror.c です。

今回は、remove()関数で意図的にエラーを発生させ、perror()関数でエラーメッセージを表示させています。

// include
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

// main
int main(void)
{
	char filename[256] = "";
	int ret;
	
	// 存在しないファイル名を格納
	strncpy(filename, "ABCDEFG.txt", sizeof(filename) - 1);
	
	// 存在しないファイルの削除を試み,
	// 意図的にエラーを発生させる.
	ret = remove(filename);
	
	// remove()がエラーの場合
	if (ret == -1) {
		// エラーメッセージを表示
		perror("remove");
		exit(EXIT_FAILURE);
	}
	
	return 0;
}

実行結果

以下は、プログラム test_perror.c を実行しています。

***@ubuntu:~/***/test/c$ 
***@ubuntu:~/***/test/c$ gcc -Wall -Wextra test_perror.c -o test_perror
***@ubuntu:~/***/test/c$ ./test_perror
remove: No such file or directory

 
上記に示した通り、エラーメッセージを表示することができました。

スポンサーリンク

シェアする

フォローする