Bonjour

Voila je suis apres m' entrainer un peu, donc j ai fait un programme qui prend un fichier en argument , puis (dans la fonction ci-dessous) il recopie tout le fichier dans un buffer pour ensuite l afficher, donc pour etre sur de pas avoir de probleme, je realloue le buffer tous le a chaque fois , mais je voudrais savoir ce que vous en pensez, si vous voyez des erreurs ou si il y a mieux et plus simple enfin bref votre avis quoi, pour l instant ca marche tres bien mais j ai quand meme des doute. voila le fichier en question :

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
#include <stdio.h>
#include <stdlib.h>
#include "header.h"
#define BUF_SIZE 1024
 
char *lire_fichier(FILE* fd, char *buffer)
{
 
	int taille = BUF_SIZE;
 
	buffer = malloc(sizeof(char) * BUF_SIZE);
 
	if(!buffer)
	{
		erreur("Allocation de la memoire echoue\n");
		exit(EXIT_FAILURE);
	}
 
	int c, i = 0;	
 
	while((c = fgetc(fd)) && (c != EOF))
	{
			if(c == '\n')
			{
				ligne++;
			}
			if(caractere >= taille)
			{
				buffer = realloc(buffer, taille*2);
				taille *= 2;
			}
 
			buffer[i++] = c;	
 
			caractere++;		
	}
 
	buffer[i++] = '\0';
 
	return buffer;
}
Merrci a vous.