Partage
  • Partager sur Facebook
  • Partager sur Twitter

Comment récupérer une saisie avec des espaces

Sujet résolu
    24 juin 2019 à 21:01:17

    Bonjour 

    Depuis quelques temps j'ai commencer le C mais je suis confronté a un problème. Je n'arrive pas a récupérer une saisie via une chaine de caractères, je connais bien le printf mais quand je fait un espace alors je m'en remet a vous. J'ai aussi vu sur des forums la fonction fget qui serais la solution mais je n'ai pas trop saisie comment l'utiliser.

    -
    Edité par french-watson 24 juin 2019 à 21:15:53

    • Partager sur Facebook
    • Partager sur Twitter

    Aucune énigme est exempte de solution

      24 juin 2019 à 21:29:12

      fgets 
      char *fgets(char *s, int size, FILE *stream);
      Pour une saisie clavier s'utilise avec stdin comme pointeur FILE.
      exemple : 
      #include <stdio.h>
      
      int main(void)
      {
          char Buffer[256];
      
          fgets(Buffer, 256, stdin);
          puts(Buffer);
      
          return 0;
      }
      Particularité il met le retour de chariot '\n' dans le buffer.
      • Partager sur Facebook
      • Partager sur Twitter
        24 juin 2019 à 23:19:50

        Bonsoir :)

        Tu peux aussi te référer au cours "Apprenez à programmer en C" à la partie "la saisie de texte sécurisée"

        Tu aura un chapitre entier qui t'expliquera :

        • Pourquoi les espaces ne fonctionnent pas avec scanf.
        • Pourquoi scanf est "dangereux".
        • Comment se servir de fgets.
        • Et aussi vaguement ce qu'est stdin ;)

        Voilà ^^

        -
        Edité par Le_Wasabi_Ca_Pik' 24 juin 2019 à 23:25:28

        • Partager sur Facebook
        • Partager sur Twitter

        "Il faut toujours viser la lune, car même en cas d'échec on atterit dans les étoiles". -Oscar Wilde-

        Comment récupérer une saisie avec des espaces

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        • Editeur
        • Markdown