Salut tout J'essaie d'écrire une fonction qui retourne la ligne de données et la renvoie dans une chaîne. Ci-dessous est mon code et je ne sais pas pourquoi ça ne marche pas. J'ai ajouté une fonction printf et quand j'appelle la fonction rien ne s'imprime.strcat en C ne fonctionne pas
EDIT (parce que je ne peux pas encore répondre) - Merci pour vos réponses. Quand je change char c en char * c ça ne marche toujours pas. J'ai juste besoin de lire la ligne dans une chaîne et le retourner.
char* getLine(FILE *file, int lineNum){
char c;
int lineCount=0, size = 1;
char *line = NULL;
line = malloc(sizeof(char)*size);
while ((c=getc(file)) != EOF){
if (c=='\n'){
++lineCount;
continue;
}
if (lineCount==lineNum){
size += 1;
line = realloc(line, size*sizeof(char));
strcat(line, c);
printf("Line: %s\n", line);
}
}
return line;
}
Peut-être 'lineCount! = LineNum'? –
Avez-vous créé un deuxième compte pour [poser à nouveau la même question] (http://stackoverflow.com/q/19260200/596781)? –
Non c'est mon premier compte – Boyo