Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 11/04/2008, à 17:44

Nicorider

[Résolu] getchar() et putchar()

Bonjour smile


Voici mon programme :

#include <stdio.h>

/* copie l'entrée sur la sortie; première version */
main()
{
     int c;
     
     c = getchar();
     while (c != EOF) {
            putchar (c);
            c = getchar();
     }
}

Donc tant que le caractère n'est pas l'indicateur de fin de fichier, on écrit en sortie le caractère qu'on vient de lire.
Avec un printf j'ai pu afficher la valeur de EOF qui vaut -1 donc j'ai voulu rentrer cette valeur pour quitter le while or, lorsque je rentre cette valeur, je n'ai rien en sortie et le programme ne se termine pas.

Je demande de l'aide pour comprendre pourquoi car j'aimerai bien quitter le programme sans faire un ctrl-c et surtout qu'après le K&R se complique...

Dernière modification par Nicorider (Le 11/04/2008, à 18:08)


Distribution : Ubuntu Hardy Heron 8.04
GNU/linux with 1391402 :).

Hors ligne

#2 Le 11/04/2008, à 17:55

nicolas.sitbon

Re : [Résolu] getchar() et putchar()

Et comment entres tu cette valeur?

Hors ligne

#3 Le 11/04/2008, à 17:58

Nicorider

Re : [Résolu] getchar() et putchar()

avec la fonction getchar()


Distribution : Ubuntu Hardy Heron 8.04
GNU/linux with 1391402 :).

Hors ligne

#4 Le 11/04/2008, à 18:01

champoul

Re : [Résolu] getchar() et putchar()

Je pense qu'il voulait dire tu fais un fichiertexte > tonprog ou ./tonprog et t'écris derrière ?

Hors ligne

#5 Le 11/04/2008, à 18:03

Nicorider

Re : [Résolu] getchar() et putchar()

j'ai écris un programme et j'écris les caractères au clavier.


Distribution : Ubuntu Hardy Heron 8.04
GNU/linux with 1391402 :).

Hors ligne

#6 Le 11/04/2008, à 18:06

anaxagold

Re : [Résolu] getchar() et putchar()

Je suppose que ce programme prend les caractères saisis au clavier les uns après les autres.

Dans ce cas, il faut taper CTRL-D (je crois bien) pour engendrer EOF dont le code correspond au nombre -1. Taper -1 au clavier revient à taper - puis 1 mais pas EOF.

Ai-je bien compris la question ?

Dernière modification par anaxagold (Le 11/04/2008, à 18:09)


Merci à  tous, à charge de revanche
Avec un Samsung Q320 sous Ubuntu 14.10

Hors ligne

#7 Le 11/04/2008, à 18:08

Nicorider

Re : [Résolu] getchar() et putchar()

Oui, merci c'est plus clair maintenant.


Distribution : Ubuntu Hardy Heron 8.04
GNU/linux with 1391402 :).

Hors ligne