Getchar und putchar in C [Gelöst/Geschlossen]

- 18. Oktober 2011 um 12:17 - Letzte Antwort:  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
Mehr anzeigen 

4 Antworten

Beste Antwort
3
Danke
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

Danke weissengel 3

Reden Sie mit Kommentar hinzufügen

CCM hat diesen Monat 483 Benutzern geholfen

2
Danke
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ß
0
Danke
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
0
Danke
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