Programme en c, lire en entrée ligne vide

Fermé
allezlolo - 1 mai 2008 à 19:52
 allezlolo - 1 mai 2008 à 21:43
Bonsoir à tous,

Je dois faire un petit programme qui lit un tableau d'évenements sur mon entrée standard et rentre le nombre d'évenement dans pnombre, il lit des événement tant que je n'ai pas rentré une ligne vide.

Voici ce que j'ai fais :


evenement *lireEvenements(int *pnombre) {
char ch[255];
int i=1;
evenement *result;
result = (evenement *) malloc(sizeof(evenement));
while (???){
result = (evenement *) malloc(sizeof(evenement) * i);
*pnombre++;
result[i] = lireEvenement();
i++;
}
return result;
}

Hélas je ne sais pas quoi mettre dans ma condition d'arrêt sur le while, je ne sais pas comment exprimer le "tant qu'on ne rencontre pas une ligne vide..."

Si cela peut vous aider, voici ma fonction lire evenement() qui lit un seul evenement :


evenement lireEvenement() {
evenement even;
even.date = lireDate();
int c;
// Boucle permettant de vider le flux entrant.
while ( ((c = getchar()) != '\n') && c != EOF){
};
printf("Entrez un evenement : \n");
scanf("%[^\n]",even.chaine);
return (even);
}


cdt,

guillaume
A voir également:

1 réponse

Personne ne voit ? (je dois rendre mon tp pour demain :()
0