Partage
  • Partager sur Facebook
  • Partager sur Twitter

Fonction fgetc

fonctionnement de la fonction

Sujet résolu
    13 mai 2006 à 21:54:32

    Bonjour à tous :)
    Je suis en train de coder un petit programme mais il me manque juste une info, en fait ne je sais pas comment fgetc va lire un fichier sur plusieurs lignes...

    Si j'ai un fichier de ce genre :

    Citation

    l1
    l2
    l3



    Que va renvoyer fgetc (avec la boucle quivabien bien entendu) ?

    Merci d'avance :)
    • Partager sur Facebook
    • Partager sur Twitter
      13 mai 2006 à 22:20:22

      Je crois que tu veux parler du programme suivant (en gros) :
      #include <stdio.h>
      #include <stdlib.h>

      int main()
      {
              FILE *text = fopen("texte.txt", "r"); //le fichier texte.txt contient ton texte en plusieurs lignes
              char txt[100], tmp = 'a';
              long i = 0;
              for(i=0;tmp!=EOF;i++)
              {
                  tmp = fgetc(text);
                  if(tmp!=EOF)
                  txt[i] = tmp;
              else
                  txt[i] = '\0';
              }
              printf("%s",txt);
          return 0;
      }

      Qu'obtient-on ici ?
      l1
      l2
      l3

      Pour qu'un printf aille a la ligne, il doit rencotrer un '\n', fgetc renvoi donc '\n' lors d'un passage a la ligne.
      • Partager sur Facebook
      • Partager sur Twitter
        13 mai 2006 à 22:38:23

        Oki, donc en fait dans mon tableau j'aurais les valeurs l, 1, \n, l, 2, \n, l, 3.

        Et si je veux tester ce tableau pour ne pas laisser passer les \n, comment faut-il que je le teste ? Entre simples quotes, doubles quotes, sans rien ?
        Merci de ton aide :)
        • Partager sur Facebook
        • Partager sur Twitter
          13 mai 2006 à 22:39:59

          Il faut vider le buffer ( \n )
          • Partager sur Facebook
          • Partager sur Twitter
            13 mai 2006 à 22:44:23

            Oui je sais, mais justement si je veux le vider, il faut que je teste le \n entre simple ou double quotes ?
            • Partager sur Facebook
            • Partager sur Twitter
              13 mai 2006 à 23:19:42

              Petit indice : la reponse est dans mon post (c'est peut-être un peu gentil là ... )
              • Partager sur Facebook
              • Partager sur Twitter
                14 mai 2006 à 16:24:12

                Oh yeah merci, je ne savais même pas qu'il existait une doc en francais comme ça :p
                Elle va sûrement m'être utile celle-ci :)

                Merci beaucou
                • Partager sur Facebook
                • Partager sur Twitter

                Fonction fgetc

                × 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