Zum Hauptinhalt springen

So geben Sie eine Zeichenfolge über die Tastatur in C++ ein: Eine einfache Möglichkeit, einen string zu verwenden

Die Dateneingabe ist eine der wichtigsten Programmieroperationen. In C++ gibt es mehrere Möglichkeiten, eine Zeichenfolge über die Tastatur einzugeben. In diesem Artikel werden wir uns einige gängige Ansätze ansehen und erklären, wie Sie die am besten geeignete Option auswählen können.

Eine der einfachsten Möglichkeiten, eine Zeichenfolge in C++ einzugeben, ist die Verwendung einer Funktion cin aus der Standardbibliothek. Bei diesem Ansatz gibt es jedoch einige Nuancen, die mit der Verarbeitung von Leerzeichen und Sonderzeichen verbunden sind.

Eine bequemere und zuverlässigere Methode ist die Verwendung der Funktion getline. Sie können Zeichenfolgen beliebiger Länge eingeben und Leerzeichen korrekt verarbeiten. Darüber hinaus ist die Funktion getline kann verwendet werden, um von jeder Quelle zu lesen, nicht nur von der Tastatur.

Anmerkung: Wenn das Programm die Eingabe eines Kennworts oder anderer sensibler Daten erfordert, wird empfohlen, die Funktion zu verwenden getpass aus der Standardbibliothek. Diese Funktion verbirgt die eingegebenen Zeichen, wodurch die Daten vor unerwünschtem Zugriff geschützt werden.

Eingabe einer Zeichenfolge in C++: Highlights

  1. Mit der Funktion getline() : Mit dieser Funktion können Sie eine Zeichenfolge mit Leerzeichen lesen und in eine Variable vom Typ string speichern. Das Verwendungsformat der Funktion ist wie folgt:
#include #include int main()
#include int main()> str;std::cout
#include int main()

Welche dieser Methoden verwendet werden sollen, hängt von der spezifischen Aufgabe und den Gewohnheiten des Programmierers ab. Beachten Sie jedoch, dass die Verwendung der getline() –Funktion mit String-Variablen und die Verwendung des cin-Operators oder der scanf() -Funktion mit char-Variablen praktisch ist.

Beschreibung der Eingabe einer Zeichenfolge über die Tastatur

Um eine Zeichenfolge über die Tastatur in C++ einzugeben, wird die Getline-Funktion verwendet, mit der Sie die gesamte Zeichenfolge einschließlich Leerzeichen und anderer Sonderzeichen lesen können.

Um die Getline-Funktion zu verwenden, müssen Sie die Bibliothek verbinden.

Die Syntax der Getline-Funktion lautet wie folgt:

FunktionssignaturDie Beschreibung
istream& getline(istream& input, string& str)Liest eine Zeichenfolge aus dem input-Stream in die Variable str . Gibt einen Verweis auf den Eingabestream zurück.

Beispiel für die Verwendung der Getline-Funktion :

#include #include int main()

In diesem Beispiel fordert das Programm den Benutzer auf, seinen Namen einzugeben, liest die Zeichenfolge mithilfe der Getline-Funktion von der Tastatur aus und gibt eine Begrüßung mit dem eingegebenen Namen aus.

Nachdem Sie eine Zeichenfolge über die Tastatur eingegeben haben, wird sie in einer Variablen vom Typ std::string gespeichert und kann im Programm für weitere Operationen verwendet werden.

Eine wichtige Regel ist die Verarbeitung von Leerzeichen und anderen Zeichen

Wenn Sie in C++ eine Zeichenfolge über die Tastatur eingeben, müssen Sie berücksichtigen, dass Leerzeichen und andere Zeichen im Programm eine wichtige Rolle spielen können. Daher ist es wichtig, diese Symbole richtig zu verarbeiten.

Eine Möglichkeit, Leerzeichen zu behandeln, besteht darin, die Funktion getline() zu verwenden. Damit können Sie eine Zeile bis zum Zeilenumbruch lesen, der beim Drücken der Eingabetaste eingegeben wird. Die resultierende Zeichenfolge kann Leerzeichen und andere Zeichen enthalten.

Sie können eine Schleife auch mit der cin-Funktion verwenden.get(), um Zeichen zu lesen, bis das angegebene Zeilenende-Zeichen (z. B. ein Zeilenumbruch) erreicht ist.

Denken Sie daran, dass Sie bei der Eingabe einer Zeichenfolge über die Tastatur vorsichtig sein und die Möglichkeit berücksichtigen müssen, falsche Zeichen einzugeben. Dazu können Sie die Funktionen isdigit(), isalpha() und andere verwenden, um zu überprüfen, ob das eingegebene Zeichen mit einem bestimmten Typ übereinstimmt.

Die Verarbeitung von Leerzeichen und anderen Zeichen ist ein wichtiger Teil der Arbeit mit der Tastatureingabe in C++. Die korrekte Verwendung von Funktionen und Kontrollen ist der Schlüssel zur Korrektheit des Programms.

Verwenden der Getline-Funktion zum Eingeben einer Zeichenfolge

Die Funktion getline() in C++ wird verwendet, um eine Zeichenfolge über die Tastatur im Terminal einzugeben. Es ermöglicht Ihnen, Zeichen aus der Standardeingabe zu lesen, bis ein Zeilenumbruch (Enter) gefunden wird. Die resultierende Zeichenfolge wird in der angegebenen Variablen gespeichert. Diese Funktion bietet eine einfache und zuverlässige Möglichkeit, Zeichenfolgen beliebiger Länge einzugeben.

Die Syntax der getline() -Funktion lautet wie folgt:

Hier repräsentiert istream& input_stream den Eingabestream (z. B. cin) und string& variable_name die Variable, in der die resultierende Zeichenfolge gespeichert wird.

Beispiel für die Verwendung der Funktion getline():

#include #include int main()

In diesem Beispiel fragt das Programm den Benutzer mithilfe der Funktion getline() nach seinem Namen und speichert ihn in der Variablen name. Das Programm zeigt dann eine Begrüßung mit dem eingegebenen Namen an.

Die Funktion getline() ist eine bequeme und sichere Möglichkeit, eine Zeichenfolge in C++ von der Tastatur zu lesen. Sie vermeidet Probleme mit der Eingabe von Leerzeichen oder anderen Sonderzeichen und stellt sicher, dass die gesamte Zeichenfolge korrekt gelesen wird, einschließlich Leerzeichen und anderer Zeichen.

Zeilenweise lesen: Merkmale und Beispiele

Merkmale des Zeichenfolgenlesens:

  1. Funktion getchar() liest ein Zeichen aus dem Eingabepuffer, einschließlich Leerzeichen und Zeilenumbrüchen.
  2. Nach dem Lesen des Zeichens bewegt sich der Zeiger zum nächsten Zeichen.
  3. Funktion getchar() gibt den ASCII-Code eines Zeichentyps zurück int.
  4. Um ein Zeichen zu speichern, können Sie eine Variable vom Typ verwenden char entweder der ASCII-Zeichencode.
  5. Das Lesen von Zeichen wird fortgesetzt, bis das angegebene Zeichen (z. B. ein Zeilenumbruch) oder das Zeilenende (Nullzeichen) erreicht ist.

Beispiel für das Lesen einer Zeichenfolge zeichenweise mit einer Schleife for:

#include using namespace std;int main() >cout

In diesem Beispiel deklarieren wir ein Array von Zeichen str Groess MAX_SIZE, in dem die eingegebene Zeichenfolge gespeichert wird. Dann mit einer Schleife for wir lesen Zeichen mit Hilfe der Funktion zeichenweise von der Tastatur aus getchar() und wir speichern sie in einem Array str. Die Schleife wird ausgeführt, bis ein Zeilenumbruch eingegeben wird, ein Nullzeichen am Zeilenende hinzugefügt wird und die Schleife unterbrochen wird. Schließlich geben wir die eingegebene Zeichenfolge mit einem Objekt auf dem Bildschirm aus cout.