Partage
  • Partager sur Facebook
  • Partager sur Twitter

fonctionnement de la fonction read()

depuis l entree standard

    28 avril 2006 à 12:30:50

    bonjour,

    cela fait plusieurs jours que je cherche un moyen de recoder scanf() et printf()
    j' avoue que je suis parti un peu dans tous les sens,
    mais pour le moment il y a une chose importante a laquelle je ne trouve pas de reponse :

    lorsqu elle lit un caractere depuis l' entree standard, pourquoi la fonction read() attends t elle que l' on valide en appuyant sur entree ?

    soit mon code :



    #include <stdio.h>
    #include <stdlib.h>
    #include<fcntl.h>

    int main()
    {
        char c;

        while( 1 )
        {
            read(0, &c, 1);
            putchar(c);
        }


        return 0;
    }



    pourquoi faut il que j appuie sur entree pour passer a putchar() ?
    si je demande a read de ne prendre qu' un seul charactere pourquoi a t il besoin de '\n' ?
    je pensais justement eviter ce probleme en utilisant la fonction la plus basique qui soit...
    vous avez une explication ?
    • Partager sur Facebook
    • Partager sur Twitter
      28 avril 2006 à 13:49:56

      Faut bien lui dire quand arrêter de lire.
      • Partager sur Facebook
      • Partager sur Twitter

      fonctionnement de la fonction read()

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown