Comment lire un fichier et le mettre dans une chaine de caractère ?

actuellement , j'ai :

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
FILE* fSrc;
char buffer[512];
int NbLu;
char * content=NULL;
long savepos = 0, size = 0;
 
if((fSrc=fopen(filename, "r")) != NULL)
{
 
 
	savepos = ftell(fSrc);          // sauvegarder la position
	fseek(fSrc, 0, SEEK_END);       // aller en fin 
	size = ftell(fSrc);             // lire la taille 
	fseek(fSrc, savepos, SEEK_SET); // rétablir la position 
 
	// alloc
	content = malloc((size*8)+1);
 
	while((NbLu=fread(buffer, 1, 512, fSrc)) != 0)
	{
		//strcat(content, buffer);
	}
 
	fclose(fSrc);
}
content[size+1] = '\0';
Cela vous parait-il correct ?
Notamment le content = malloc((size*8)+1);
(un char = 8 bit ... donc)