Constantes errno
Syntaxe
#include <errno.h>
Notes
Les errno
constantes sont des valeurs attribuées pour errno
différentes conditions d’erreur.
ERRNO.H
contient les définitions des errno
valeurs. Toutefois, toutes les définitions fournies ne ERRNO.H
sont pas utilisées dans les systèmes d’exploitation Windows 32 bits. Certaines valeurs ERRNO.H
sont présentes pour assurer la compatibilité avec la famille UNIX de systèmes d’exploitation. Les errno
valeurs d’un système d’exploitation Windows 32 bits sont un sous-ensemble des valeurs des errno
systèmes UNIX.
La errno
valeur n’est pas nécessairement la même que le code d’erreur réel retourné par un appel système à partir du système d’exploitation Windows. Pour accéder au code d’erreur du système d’exploitation réel, utilisez la _doserrno
variable, qui contient cette valeur.
Les valeurs errno
suivantes sont prises en charge :
Constant | Description | active |
---|---|---|
E2BIG |
Liste d’arguments trop longue. | 7 |
EACCES |
Autorisation refusée. s’affiche. Le paramètre d’autorisation du fichier n’autorise pas l’accès spécifié. Une tentative a été effectuée pour accéder à un fichier (ou, dans certains cas, un répertoire) d’une manière incompatible avec les attributs du fichier. Par exemple, l’erreur peut se produire lorsqu’une tentative de lecture à partir d’un fichier qui n’est pas ouvert. Ou, lors d’une tentative d’ouverture d’un fichier en lecture seule existant pour l’écriture, ou pour ouvrir un répertoire au lieu d’un fichier. Sous le système d’exploitation MS-DOS versions 3.0 et ultérieures, EACCES peut également indiquer une violation de verrouillage ou de partage.L'erreur peut également se produire lors d'une tentative d'attribution d'un nouveau nom à un fichier ou à un répertoire, ou de suppression d'un répertoire existant. |
13 |
EAGAIN |
Plus de processus ou pas assez de mémoire ou niveau d’imbrication maximal atteint. Une tentative de création d’un processus a échoué, car il n’y a plus d’emplacements de processus, ou il n’y a pas suffisamment de mémoire, ou le niveau d’imbrication maximal a été atteint. | 11 |
EBADF |
Numéro de fichier erroné. Il existe deux causes possibles : 1) Le descripteur de fichier spécifié n’est pas une valeur valide ou ne fait pas référence à un fichier ouvert. 2) Une tentative a été effectuée pour écrire dans un fichier ou un périphérique ouvert pour l'accès en lecture seule. | 9 |
EBUSY |
Appareil ou ressource occupé. | 16 |
ECHILD |
Aucun processus généré. | 10 |
EDEADLK |
Un interblocage des ressources se produirait. | 36 |
EDEADLOCK |
Identique à EDEADLK la compatibilité avec les versions antérieures de Microsoft C. |
36 |
EDOM |
Argument mathématique. L’argument d’une fonction mathématique n’est pas dans le domaine de la fonction. | 33 |
EEXIST |
Les fichiers existent. Une tentative a été effectuée pour créer un fichier existant. Par exemple, les indicateurs et _O_EXCL les _O_CREAT indicateurs sont spécifiés dans un _open appel, mais le fichier nommé existe déjà. |
17 |
EFAULT |
Adresse incorrecte. | 14 |
EFBIG |
Fichier trop volumineux. | 27 |
EILSEQ |
Séquence illégale d’octets (par exemple, dans une MBCS chaîne). |
42 |
EINTR |
Fonction interrompue. | 4 |
EINVAL |
Argument non valide. Une valeur non valide a été spécifiée pour l’un des arguments d’une fonction. Par exemple, la valeur donnée pour l’origine lors du positionnement d’un pointeur de fichier (par un appel à fseek ) est avant le début du fichier. |
22 |
EIO |
Erreur d’E/S. | 5 |
EISDIR |
Est un répertoire. | 21 |
EMFILE |
Trop de fichiers ouverts. Aucun autre descripteur de fichiers n'est disponible, et aucun autre fichier ne peut être ouvert. | 24 |
EMLINK |
Trop de liens. | 31 |
ENAMETOOLONG |
Nom de fichier trop long. | 38 |
ENFILE |
Trop de fichiers ouverts dans le système. | 23 |
ENODEV |
Aucun appareil de ce type. | 19 |
ENOENT |
Aucun fichier ou répertoire de ce type. Le fichier ou le répertoire spécifié n’existe pas ou est introuvable. Ce message peut se produire chaque fois qu’un fichier spécifié n’existe pas ou qu’un composant d’un chemin d’accès ne spécifie pas de répertoire existant. | 2 |
ENOEXEC |
Erreur de format exec. Une tentative a été effectuée pour exécuter un fichier qui n’est pas exécutable ou qui a un format de fichier exécutable non valide. | 8 |
ENOLCK |
Aucun verrou n’est disponible. | 39 |
ENOMEM |
La mémoire disponible est insuffisante pour l'opérateur tenté. Par exemple, ce message peut se produire lorsqu’une mémoire insuffisante est disponible pour exécuter un processus enfant ou lorsque la demande d’allocation dans un _getcwd appel ne peut pas être satisfaite. |
12 |
ENOSPC |
Aucun espace libre sur le périphérique. Aucun autre espace pour l'écriture n'est disponible sur le périphérique (par exemple, si le disque est plein). | 28 |
ENOSYS |
Fonction non prise en charge. | 40 |
ENOTDIR |
Pas un répertoire. | 20 |
ENOTEMPTY |
le répertoire n'est pas vide. | 41 |
ENOTTY |
Opération de contrôle d’E/S inappropriée. | 25 |
ENXIO |
Aucun appareil ou adresse de ce type. | 6 |
EPERM |
Opération non autorisée. | 1 |
EPIPE |
Canal cassé. | 32 |
ERANGE |
Résultat trop volumineux. Un argument d’une fonction mathématique est trop volumineux, provoquant ainsi la perte partielle ou totale de crédibilité du résultat. Cette erreur peut également se produire dans d’autres fonctions lorsqu’un argument est supérieur à ce qui est attendu (par exemple, lorsque l’argument buffer doit _getcwd être plus long que prévu). |
34 |
EROFS |
Lecture seule du système de fichiers. | 30 |
ESPIPE |
Recherche non valide. | 29 |
ESRCH |
Pas de tel processus. | 3 |
EXDEV |
Lien entre les périphériques. Une tentative a été effectuée pour déplacer un fichier vers un autre appareil (à l’aide de la rename fonction). |
18 |
STRUNCATE |
Une copie ou une concaténation de chaîne a provoqué une chaîne tronquée. Consultez l’article _TRUNCATE . |
80 |
Les valeurs suivantes sont prises en charge pour la compatibilité avec POSIX :
Constant | Description | active |
---|---|---|
EADDRINUSE |
Adresse utilisée. | 100 |
EADDRNOTAVAIL |
Adresse non disponible. | 101 |
EAFNOSUPPORT |
La famille d’adresses n’est pas prise en charge. | 102 |
EALREADY |
Connexion déjà en cours. | 103 |
EBADMSG |
Message incorrect. | 104 |
ECANCELED |
Opération annulée. | 105 |
ECONNABORTED |
Connexion abandonnée. | 106 |
ECONNREFUSED |
Connexion refusée. | 107 |
ECONNRESET |
Réinitialisation de la connexion. | 108 |
EDESTADDRREQ |
Adresse de destination requise. | 109 |
EHOSTUNREACH |
Hôte inaccessible. | 110 |
EIDRM |
Identificateur supprimé. | 111 |
EINPROGRESS |
Opération en cours. | 112 |
EISCONN |
Déjà connecté. | 113 |
ELOOP |
Trop de niveaux de liens symboliques. | 114 |
EMSGSIZE |
Taille du message. | 115 |
ENETDOWN |
Réseau vers le bas. | 116 |
ENETRESET |
Réinitialisation du réseau. | 117 |
ENETUNREACH |
Réseau inaccessible. | 118 |
ENOBUFS |
Aucun espace tampon. | 119 |
ENODATA |
Aucun message n’est disponible. | 120 |
ENOLINK |
Aucun lien. | 121 |
ENOMSG |
Aucun message. | 122 |
ENOPROTOOPT |
Aucune option de protocole. | 123 |
ENOSR |
Aucune ressource de flux. | 124 |
ENOSTR |
Pas un flux. | 125 |
ENOTCONN |
Non connecté. | 126 |
ENOTRECOVERABLE |
État non récupérable. | 127 |
ENOTSOCK |
Pas un socket. | 128 |
ENOTSUP |
Non pris en charge. | 129 |
EOPNOTSUPP |
Opération non prise en charge. | 130 |
EOTHER |
Autre/s. | 131 |
EOVERFLOW |
Valeur trop grande. | 132 |
EOWNERDEAD |
Propriétaire mort. | 133 |
EPROTO |
Erreur de protocole. | 134 |
EPROTONOSUPPORT |
Protocole non pris en charge. | 135 |
EPROTOTYPE |
Type de protocole incorrect. | 136 |
ETIME |
Délai d’expiration du flux. | 137 |
ETIMEDOUT |
Délai d’attente. | 138 |
ETXTBSY |
Fichier texte occupé. | 139 |
EWOULDBLOCK |
L’opération bloquerait. | 140 |