Getchar und putchar in C

Gelöst/Geschlossen
Ferrari - Geändert am 16. August 2018 um 02:45
 amigos20 - 10. November 2011 um 14:53
Hallo zusammen,

Ich habe vor einer Woche angefangen C zu lernen, und habe momentan es schwer mit der Anwendung von getchar() und putchar() .
Was ist der Unterschied zwischen den Beiden Funktionen?
Hier ein Beispiel wo beide Funktionen auftauchen

#include <stdio.h> 
#include <stdlib.h>
int main()
{
int c;
c=getchar();
while (c!=EOF)
{
putchar(c);
c=getchar();
}
return 0;
}


Warum ist c als int definiert ???

Gruß Ferrari

4 Antworten

Hallo,

getchar liest die Eingaben ( Zeichen) und putchar gibt sie aus .

Hier ist etwa eine bessere (deutliche) Schreibweise deines Codes:


#include <stdio.h>

int main()
{  
    int c;

    while ((c = getchar()) != EOF)     <----- Zeichen lesen
        putchar(c);                            <----- Zeichen anzeigen
    return 0;
}


LG
4
Hallo,

Wenn es keine Eingaben eingetippt werden, gibt getchar einen Sonderwert EOF ( End Of File ) .
EOF ist nicht von Typ char und deshalb deklariert man c als int .

Gruß
3
Hallo,

bei mir geht auch mit dem folgenden Code ;-)

#include <stdio.h>
int main()
{
int c;

do{
c=getchar();
putchar(c);
}while(c != EOF);

return 0;
}



Gruß WerIstDA
2
Hallo,

Ich bin ein C-Anfänger und ich verstehe nicht warum ihr die Variable c als int definiert habt und nicht als char .

Danke euch für die Erklärung
1
Treten Sie der Community bei