Bonjour,
Je suis entrain d'écrire une petite fonction, mais j'ai une erreur que je n'arrive pas à identifié,

Voici mon code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
 
void ExtractAudioFileAndGrammar(char **AudioFile,char **Grammar,char **GrammerFileName)  {
 
struct dirent *lecture;
    DIR *rep;
    char *DefaultDirectoryPath="/tmp/mondir/";
    char GrammarPath[255];
    FILE * FLOG;
 
        FLOG=fopen("log.txt","w");
   if(FLOG!=NULL)  fprintf(FLOG,"je suis au debut\n");
    rep = opendir("/tmp/mondir");
    while ((lecture = readdir(rep))) {
 
       if (strstr(lecture->d_name,".ulaw"))
                {
        *AudioFile=lecture->d_name;
       if(FLOG!=NULL)  fprintf(FLOG,"je suis dans la fonction ExtractAudioFileAndGrammar 1\n");
 
 
                }
 
 
        if (strstr(lecture->d_name,".txt"))
                {
 
               strcpy(GrammarPath,DefaultDirectoryPath);
                strcat(GrammarPath,lecture->d_name);
 
 
                FILE * f = fopen(GrammarPath, "r");
                if(f == NULL){
                   if(FLOG!=NULL) fprintf(FLOG,"erreur\n");
                     fclose(FLOG);
                     }
                else{
 
                     if(FLOG!=NULL) fprintf(FLOG,"je suis dans la fonction ExtractAudioFileAndGrammar4 \n");
                     if(FLOG!=NULL) fprintf(FLOG,"je suis dans la fonction ExtractAudioFileAndGrammar 5\n");
                         fscanf(f,"%s",Grammar);
                     if(FLOG!=NULL) fprintf(FLOG,"je suis dans la fonction ExtractAudioFileAndGrammar 3\n");
                     if(FLOG!=NULL) fprintf(FLOG,Grammar);
                     if(FLOG!=NULL)fprintf(FLOG,"\n");
                     *GrammerFileName=basename(*Grammar); // je sais que l'erreur vient apparament de cette ligne car si j'enlève tout le reste j'ai bien mes fprintf dans le fichier sinon j'ai un fichier vide 
                     if(FLOG!=NULL)fprintf(FLOG,GrammerFileName);
                     if(FLOG!=NULL)fprintf(FLOG,"\n");
                      fclose(FLOG);
                      fclose(f);
                   }
 
 
                }
 
        }
    closedir(rep);
}

Voila merci de m'aider ça fait un jour et demi que je suis dessus et ça m'a pris la tête en plus c'est sur que c'est une erreur débile