Lors de l’appel j’ai un
. Ce que cela signifie ? Comment puis-je connaître la signification de cette `` ?
Réponses
Trop de publicités?Vous pouvez utiliser strerror()
pour obtenir une chaîne explicite pour le numéro d'erreur. C'est la même chaîne de caractères imprimés en perror()
mais il est utile si vous êtes à la mise en forme du message d'erreur pour autre chose que la sortie d'erreur standard.
Par exemple:
#include <errno.h>
#include <string.h>
/* ... */
if(read(fd, buf, 1)==-1) {
printf("Oh dear, something went wrong with read()! %s\n", strerror(errno));
}
Linux prend également en charge explicitement-thread-safe variante strerror_r()
.
Sous Linux, il y a aussi un programme/script très soigné qui peut dire tout de suite ce qui signifie que chaque code d’erreur. L’installer avec `` . Il devrait être dans votre repos si vous avez Ubuntu.
Alors si vous voulez par exemple obtenir la description d’erreur de type 2, il suffit de taper `` dans le terminal.
Utilisation `` pour obtenir une liste avec toutes les erreurs et leurs descriptions. Beaucoup plus facile que les autres méthodes mentionnées par affiches précédentes.