Putchar und Getchar in C

Bin ich beim Lesen K&R ist Der Programmiersprache C und haben verwirrt auf putchar und getchar. Ich machte ein Programm, wo Sie 10 chars und das Programm druckt Ihnen wieder auf den Bildschirm.

#include <stdio.h>

int main() 
{
    int i;
    int ch;
    for(i = 0; i < 10; i++)
    {
        printf("Enter a single character >> ");
        ch = getchar();
        putchar(ch);
    }

    return 0;
}

Erwartet, dass ich bekommen eine Ausgabe wie diese:

Enter a single character >> a
a
Enter a single character >> b
b

...und so weiter 10 mal, aber das ist die Ausgabe, die ich habe: (ich habe aufgehört nach der Eingabe von 2 chars)

Enter a single character >> a
aEnter a single character >>
Enter a single character >> b
bEnter a single character >>
Enter a single character >>

nicht sicher, warum meine eingegebenen Zeichen wird in Kombination mit der festen Zeichenfolge und ausgegeben wird.

Außerdem bin ich mir auch nicht sicher, warum int-Werte verwendet werden, um Zeichen zu speichern.

InformationsquelleAutor CS Student | 2013-10-14

Schreibe einen Kommentar