Mit cin für die Eingabe eines einzelnen Buchstaben in einen char
Ich habe versucht, mit "cin" zur Eingabe eines einzelnen Buchstaben in einen char-Namen schreiben. Ich habe die Eingabe der Buchstaben mit dieser Methode, aber jedes mal, dass ich ausgegeben, die der Brief nach der "cin" - Zeile habe ich ein nicht lesbares Zeichen.
int main()
{
char letter[2];
cout << "Enter a letter: ";
cin >> letter;
cout << letter[2];
return 0;
}
Ausgabe:
Enter a letter: a
▮
Ich bekomme auch zufällige Ausgabe von Zeichen manchmal, wie "1" und "s".
Jede Hilfe wäre sehr geschätzt werden!
Dank!
- Wenn Sie wollen ein Zeichen, und verwenden Sie eine
char
ist, und kein array. Auchletter[2]
ist nicht ein gültiges element in einem array der Größe 2. char letter[2];
ist ein array, wenn Zeichenchar letter;
ist ein Zeichen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie nicht die Eingabe oder die Ausgabe der Zeichen korrekt.
char letter[2]
ist ein array von 2 Zeichen, nicht ein einziges Zeichen. Sie möchtenchar letter
. Weiter sind Sie die Ausgabeletter[2]
, das ist das Dritte element in einem array hat nur zwei Werte (die Indizierung in C++ beginnt von 0; das erste element istletter[0]
und die zweite istletter[1]
)! Die Ausgabe wird immer Müll. Der richtige code sein sollte: