errno マクロ

次の表は、ILE C ライブラリー関数が設定できるエラー・マクロをリストしたものです。

表 1. errno マクロ
エラー・マクロ 説明 設定元の関数
EBADDATA メッセージ・データが無効です。 perror、strerror
EBADF カタログ記述子が無効です。 catclose、catgets、clearerr、fgetc、 fgetpos、fgets、fileno、freopen、 fseek、fsetpos、getc、rewind
EBADKEYLN 指定されたキーの長さが無効です。 _Rreadk、_Rlocate
EBADMODE 指定されたファイル・モードは無効です。 fopen、freopen、_Ropen
EBADNAME 無効なファイル名が指定されました。 fopen、freopen、_Ropen
EBADPOS 指定された位置は無効です。 fsetpos
EBADSEEK シーク操作のオフセットが無効です。 fgetpos、fseek
EBUSY レコードまたはファイルが使用中です。 perror、strerror
ECONVERT 変換エラー。 wcstomb、wcswidth
EDOM 数学関数内のドメイン・エラーです。 acos、asin、atan2、cos、exp、 fmod、gamma、hypot、j0、j1、jn、 y0、y1、yn、log、log10、pow、sin、 strtol、strtoul、sqrt、tan
EGETANDPUT 書き込み操作後に、無許可の読み取り操作が発生しました。 fgetc、fread、getc、getchar
EILSEQ 有効なマルチバイト文字で文字シーケンスが構成されていません。 fgetwc、fgetws、getwc、mblen、
mbrlen、mbrtowc、mbsrtowcs、
mbstowcs、mbtowc、printf
scanf、ungetwc、wcrtomb、
wcsrtombs、wcstombs、wctomb、
wcswidth、wcwidth
EINVAL シグナルが無効です。 printfscanf、signal、
swprintf、swscanf、wcstol、
wcstoll、wcstoul、wcstoull
EIO 連続した入出力呼び出しが発生しました。 I⁄O
EIOERROR リカバリー不能な入出力エラーが発生しました。 すべての入出力関数
EIORECERR リカバリー可能な入出力エラーが発生しました。 すべての入出力関数
ENODEV 誤ったデバイスに対して、操作が試行されました。 fgetpos、fsetpos、fseek、ftell、rewind
ENOENT ファイルまたはライブラリーが見つかりません。 perror、strerror
ENOPOS 指定された位置にレコードがありません。 fsetpos
ENOREC レコードが見つかりません。 fread、perror、strerror
ENOTDLT ファイルがオープンされていないため、削除操作が行えません。 _Rdelete
ENOTOPEN ファイルがオープンされていません。 clearerr、fclose、fflush、fgetpos、 fopen、freopen、fseek、ftell、setbuf、 setvbuf、_Ropen、_Rclose
ENOTREAD ファイルがオープンされていないため、読み取り操作が行えません。 fgetc、fread、ungetc、_Rreadd、 _Rreadf、_Rreadindv、_Rreadk、 _Rreadl、_Rreadn、_Rreadnc、 _Rreadp、_Rreads、_Rlocate
ENOTUPD ファイルがオープンされていないため、更新操作が行えません。 _Rrlslck、_Rupdate
ENOTWRITE ファイルがオープンされていないため、書き込み操作が行えません。 fputc、fwrite、_Rwrite、_Rwrited、 _Rwriterd
ENUMMBRS メンバーが複数存在します。 ftell
ENUMRECS レコードが多すぎます。 ftell
EPAD 書き込み操作で埋め込みが発生しました。 fwrite
EPERM アクセス権限が不十分です。 perror、strerror
EPUTANDGET 読み取り操作の後、正しくない書き込み操作が発生しました。 fputc、fwrite、fputs、putc、putchar
ERANGE 数学関数内の範囲エラーです。 cos、cosh、gamma、exp、j0、j1、jn、
y0、y1、yn、log、log10、ldexp、
pow、sin、sinh、strtod、strtol、
strtoul、tan、wcstol、wcstoll、
wcstoul、wcstoull、wcstod
ERECIO レコード入出力用にファイルがオープンされているため、文字単位の処理関数は使用できません。 fgetc、fgetpos、fputc、fread、fseek、 fsetpos、ftell
ESTDERR stderr がオープンできません。 feof、ferror、fgetpos、fputc、fseek、 fsetpos、ftell、fwrite
ESTDIN stdin がオープンできません。 fgetc、fgetpos、fread、fseek、 fsetpos、ftell
ESTDOUT stdout がオープンできません。 fgetpos、fputc、fseek、fsetpos、 ftell、fwrite
ETRUNC 入出力操作で切り捨てが発生しました。 レコードの読み取りまたは書き込みを行う入出力関数によって、errno が ETRUNC に設定されます。