[C] soucis avec les espaces dans fscanf

Bonjour,

j'ai un petit soucis avec espaces dans fscanf.

Je souhaite saisir une phrase et non le 1er mot.

j'ai cherché un peu et j'ai essayé avec :

fgets(modif->commentaire,300+1,stdin);
modif->commentaire[strlen(modif->commentaire)-1]='\0';

la 2ième ligne c'est pour enlever la touche entrée.

Par contre j'ai un problème, ça ne s'arrete pas, j'ai pas le temps de saisir.

help s'il vous plait !
Configuration: Windows XP
Firefox 2.0.0.16

4 réponses

  1. tu peux metre le code avant
    je pense que tu as oublié de stocké un '\n' avant...
    0
    1. oui c'est vrai mais j'ai toujours le problème, je ne peut meme pas saisir de texte, ça passe à l'instruction suivante.

      printf("entrer le nouveau commentaire\n");
      fgets(modif->commentaire,300+1,stdin);
      modif->commentaire[strlen(modif->commentaire)-1]='\0';
      printf("%s AVANT",modif->commentaire);_sleep(2000);


      merci de l'aide
      0
      1. essaye de rajouter
        fgetc(stdin);
        avant ton fgets
        0
        1. hey c'est ça ça fonctionne bien.
          il faut donc le positionner juste avant le fgets.

          merci mype
          0