Учись программированию на C++ Builder бесплатно!

Ниже приводится таблица, содержащая мнемонические константы ошибок, их коды и соответствующие сообщения из массива _sys_errlist.

Константа Код Сообщение в _sys_errlist
E2BIG 20 Arg list too long.
EACCES 5 Permission denied.
EAGAIN 42 Resource temporarily unavailable.
EBADF 6 Bad file number.
EUUSY 44 Resource busy.
ECHILD 24 No child process.
ECONTR 7 Memory blocks destroyed.
ECURDIR 16 Attempt to remove CurDir.
EDEADLOCK 36 Locking violation.
EDOM 33 Math argument.
EEXIST 35 File already exista.
EFAULT 14 Unknown error.
EFBIG 27 Для UNIX — в MSDOS отсутствует.
EINTR 39 Interrupted function call.
EINVACC 12 Invalid access code.
EINVAL 19 Invalid argument.
EINVDAT 13 Invalid data.
EINVDRV 15 Invalid drive specified.
EINVENV 10 Invalid environment.
EINVFNC 1 Invalid function number.
EINVFMT 11 Invalid format.
EINVMEM 9 Invalid memory block address.
EIO 40 Input/output error.
EISDIR 46 Для UNIX — в MSDOS отсутствует.
EMFILE 4 Too many open files.
EMLINK 31 Для UNIX — в MSDOS отсутствует.
ENFILE 23 Too many open files.
ENMFILE 18 No more files.
ENODEV 15 No such device.
ENOENT 2 No such file or directory.
ENOEXEC 21 Exec format error.
ENOFILE 2 File not found.
ENOMEM 8 Not enough core.
ENOPATH 3 Path not found.
ENOSPC 28 No space left on device.
ENOTBLK 43 Для UNIX — в MSDOS отсутствует.
ENOTDIR 45 Для UNIX — в MSDOS отсутствует.
ENOTSAM 17 Not same device.
ENOTTY 25 Для UNIX — в MSDOS отсутствует.
ENXIO 41 No such device or address.
EPERM 37 Operation not permitted.
EPIPE 32 Broken pipe.
ERANGE 34 Result too large.
EROFS 30 Read-only file system.
ESPIPE 29 Illegal seek.
ESRCH 38 Для UNIX — в MSDOS отсутствует.
ETXTBSY 26 Для UNIX — в MSDOS отсутствует.
EUCLEAN 47 Для UNIX — в MSDOS отсутствует.
EXDEV 22 Cross-device link.
EZERO 0 Error 0.

Стандартные сообщения можно изменять. Например, оператор:

strcpy(_sys errlist[ENOENT],"Нет такого файла или каталога");

русифицирует стандартное сообщение «No such file or directory».

Поделиться