🔧 文字列 ・ string.h ・ C89
strerror の使い方char *strerror(int errnum);
エラー番号(errnoの値)に対応するエラーメッセージ文字列を返す。perrorが内部で使っているのと同じ変換で、メッセージを自分で組み立てて表示したい時に使う関数。 多言語対応の処理系ではロケールに応じてメッセージが翻訳されることもある、環境依存の強い関数。
#include <string.h>
#include <stdio.h>
#include <errno.h>
int main(void) {
FILE *fp = fopen("nofile.txt", "r");
if (!fp) {
printf("error: %s\n", strerror(errno));
}
return 0;
}
⚠️ 戻り値の文字列を指すポインタは静的領域を指すことが多く、次にstrerrorを呼ぶと上書きされるため、保持したいならコピーする。
アプリの関数リファレンスで引く(無料・登録不要) 関数一覧へ
strerror と一緒に使う関数memcmp
memcpy
memmove
memset
memset_explicit
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strdup
strlen
strncat
strncmp
strncpy
もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。