Dubbi su getchar e putchar

di Anonimizzato10324 il
7 risposte
Salve a tutti
mi ritrovi con questo codice davanti :

#include <stdio.h>

main(){
        int c;
        
        c=getchar();
        
        while(c!=EOF){
                putchar(c);
                c=getchar();
        }       
}
In poche parole questo codice dovrebbe ripresentare a schermo tutto quello che scrivo, al che mi chiedo come sia possibile?
La getchar non prende un solo carattere, ma soprattutto cosa restituisce ?
la presenza della putchar non dovrebbe subito stamparmi a schermo il primo carattere che inserisco?
infine cosa si intende per stream? molte definizioni fanno uso di questa parola ma non ne ho capito il senso

Grazie a tutti per l' attenzione spero di essere stato chiaro.

7 Risposte

  • Scusami forse sono stato poco chiaro, starei studiando il C non C++ .
    Vanno bene lo stesso i link?
    Grazie per l'attenzione
  • peppozzolo ha scritto:


    scusami forse sono stato poco chiaro, starei studiando il C non C++ .
    Vanno bene lo stesso i link?
    Grazie per l'attenzione
    Vanno bene lo stesso ...
  • Grazie per i link molto utili
    mi restano alcuni dubbi
    la getchar non dovrebbe prendere un "solo" carattere? perche nel programma da me postato prendere intere frase fino a che non premo invio, dove viene caricata questa intera frase per fare in modo che putchar la porti in output?
  • L'input avviene nel buffer di stdin e si conclude solo con il tasto Return.

    La getchar estrae un carattere dal buffer ogni volta che viene chiamata.
  • Infatti ma allora come mai prende l'intera frase e non un solo carattere
    scusa se faccio sempre la stessa domanda ma non riesco a capire
  • peppozzolo ha scritto:


    infatti ma allora come mai prende l'intera frase e non un solo carattere
    Te l'ho scritto prima ... cosa non hai capito della risposta?
Devi accedere o registrarti per scrivere nel forum
7 risposte