Passer un char en parametre, fonction editer un fichier log

poparnassus Messages postés 426 Date d'inscription   Statut Membre Dernière intervention   -  
 swaks -
Bonjour,

J'essaye d'ecrire une fonction pour editer un fichier log, qui va prendre en parametre un
char *erreur[128];
et l'crire dans le fichier.

J'arrive pas à comprendre comment je peux transmettre erreur ) ma fonction edit_log() ...
  • EDIT:


main.c
 
ù
*
initialisationSDL("Plateforme de supervision!", &ecran);
*
*


systeme.c
  • EDIT:

void edit_log(char *erreur[128])
{
    static const char logname[] = "./src/HEX/log.txt";
    FILE *logfile = fopen(logname,"a+");
    //char *erreur[128];
    printf("%c",&erreur);
    fclose(logfile);
}


SDL.c

void initialisationSDL(const char *titre,ecran *ecran)
{
        char *erreur[128];
        if ( ecran->screen == NULL ||  ecran->renderer == NULL)
        {
            printf("Erreur de rendu et ou d'ecran\n");
           EXIT_FAILURE;
        }
        //je place mon erreur ici pour voir si le fichierr log est editer
           **erreur = printf("test, Erreur de rendu et ou d'ecran\n");
           edit_log(erreur);
}


Ce qui se passe quand je execute, je vois mon printf("test, Erreur de rendu et ou d'ecran\n"); qui s'affiche à lecran de la console mais n'est pas editer dans le fichier, et la boucle de mon main se stop alors quelle devrai continuer a s'executer...
A voir également:

1 réponse

swaks
 
Bonjour,

A premiere vue tu n'ecris jamais dans ton fichier apres l'avoir ouvert tu écris sur la sortie standar et non dans le fichier que tu as ouvert

https://openclassrooms.com/courses/apprenez-a-programmer-en-c/lire-et-ecrire-dans-des-fichiers
0