Bonjour j'ai besoin de votre aide pour un code utilisant fopen. Celui ne me retourne pas "impossible d'ouvrir le fichier" donc j'en ai déduit que le fichier a bien été ouvert. Cependant rien de ce que j'ai met dans ma condition else ne s'affiche, ca me laisse un curseur en attente. En ayant activé les erreurs avec "gcc -Wall -W -Werror" rien ne s'affiche et valgrind 0 erreurs.
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
int main(){
 
	FILE* fichier = NULL; 
	fichier = fopen("json_test_files/test.json", "r");
	int size = 0;
 
 
	/* si fichier est vide on arrête tout*/
	if(!fichier){
		printf("impossible d'ouvrir le fichier\n");
		exit(1);
	}
	else{
		printf("fdsfsfds"); // j'ai essayé de mettre n'importe quoi dans le else mais rien ne s'affiche
		char r = fgetc(fichier);
		/*on calcule la taille du fichier*/
		while(r != EOF){
			size++;
 
		}
		char *chaine = malloc((size) * sizeof(char));//j'alloue une chaine de taille "size" de char
 
		/*tant que le fichier n'est pas fini, on le met dans chaine*/
		while(fgets(chaine, size, fichier)){
			analyseurLR(chaine);//fonction qui renvoie 0 si l'analyse a réussi, 1 sinon
		}
		free(chaine);
	}
	fclose(fichier);
	return 0;
}
Merci d'avance pour vos réponses!!