Remplir liste à partir de l'entrée standard
Bonjour,
Mon fonction ci-dessous sort normalement (pas d'erreur lors de la compilation) mais je ne peux que remplir qu'une seule valeur.
Code:
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
|
Node* createList()
{
char ch;
Node *pt_head=NULL, *pt_tail=NULL, *pt_new;
do
{
//Initialisation du pointeur du nouveau élément (création d'une nouvelle adresse)
pt_new = (Node*)malloc(sizeof(Node));
if(!pt_new) /* Si l'allocation a échoué. */
{
printf("Memory not allocated.\n");
exit(EXIT_FAILURE);
}
//Remplir le champ data du nouveau élément
printf("\nGive an integer number : ");
scanf("%d", &pt_new -> val);
//pt_new -> pt_next = NULL;
if(!pt_head)
{
pt_head=pt_new;
pt_tail=pt_new;
pt_tail -> pt_next = NULL;
}
else
{
pt_new -> pt_next=pt_head;
pt_head=pt_new;
}
printf("Y-Continue, N-Exit : ");
fflush (stdin);
scanf("%c",&ch);
} while (ch=='Y');
return pt_head;
} |
Merci pour ceux qui peuvent m'aider.