Sìsì, so che l'argomento è stato già affrontato svariate volte,
ma vi chiedo di aiutarmi a correggere il mio codice per migliorare nel c++.
Con questa funzione dovrei leggere la prima linea di testo da un file txt

codice:
char* FileTextReadFirstLine(FILE* file)
{
	char byte;
	int i = 0;
        //con il prossimo loop salvo in i la lunghezza 
        //della prima linea nel file txt
	while(!feof(file)) {
		//Leggo un char dal file
		fread(&byte,sizeof(char),1,file);
		if(byte==13) break;
		i++;
	}
	//Fino a qui il codice funziona, ritorna correttamente la lunghezza della prima linea.
        //Adesso posso creare il mio array di char da riempire, rileggendo il file.
	char* line = (char*) malloc(sizeof(char)*(i+1));
        //i+1 per il null terminated char.
        //Prima risetto a 0 la posizione nel file
        fseek(file,0,SEEK_SET);
	int a;
	for(a=0;a<=i;a++) {
		fread(line+a,sizeof(char),1,file);
	}
	*(line+a) = '/n'; //null-termino l'array
	return(line);
}
In seguito, con cout << line; scopro che line è stata riempita di byte strani!
che errore ho fatto?