Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Fonction strerror

La fonction strdup La fonction strlen


Entête à inclure

#include <string.h>  // <cstring> en C++

Fonction strerror

char * strerror ( int errCode );

Cette fonction renvoie la chaîne de caractères associée à un code d'erreur. Traditionnellement, on récupère ces codes d'erreurs grâce à la variable errno définie dans l'entête <errno.h>.

les messages d'erreurs sont stockés dans le runtime C. La fonction strerror ne produit donc pas une nouvelle allocation mémoire et il ne faut en aucun cas chercher à libérer cette zone mémoire.

Paramètres

Valeur de retour

Renvoie la chaîne de caractères (de type char *) associée au code erreur spécifié.

Exemple de code

 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 
 9 
 10 
 11 
 12 
 13 
 14 
 15 
 16 
 17 
 18 
 19 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>


int main() {

    // On tente d'ouvrir un fichier qui n'existe pas
    FILE * file = fopen( "UnexistingFolder/UnknownFile.txt", "r" );
    if ( file == NULL ) {
        // On affiche le message d'erreur.
        puts( strerror( errno ) );
    } else {
        // On libère le fichier
        fclose( file );
    }
    
    return EXIT_SUCCESS;
}
Exemple d'utilisation de la fonction strcspn

Et voici le résultat produit par cet exemple :

$> gcc -o sample sample.c
$> ./sample
No such file or directory
$>

Sujets connexes

errno
perror


La fonction strdup La fonction strlen