Heim >Backend-Entwicklung >C++ >Wie lese ich eine ganze Eingabezeile vom Benutzer in C?
So lesen Sie mit C effektiv eine ganze Zeile vom Benutzer vor
In Ihrem Code wollten Sie Textzeilen in eine Datei schreiben Es war jedoch schwierig, die vollständige Zeile des Benutzers zu lesen. In diesem Leitfaden erfahren Sie, wie Sie mit der richtigen Eingabemethode effektiv vollständige Zeilen abrufen können.
Um eine ganze Eingabezeile zu lesen, müssen Sie getline verwenden. Die Syntax lautet wie folgt:
string response; getline(cin, response);
Hier ist eine modifizierte Version Ihres Codes, die diese Änderung enthält:
#include <iostream> #include <fstream> #include <string> using namespace std; int main() { char x; cout << "Would you like to write to a file?" << endl; cin >> x; if (x == 'y' || x == 'Y') { string y; cout << "What would you like to write?" << endl; getline(cin, y); // Use getline to read the entire line ofstream file; file.open("Characters.txt"); file << strlen(y) << " Characters." << endl; file << endl; file << y; file.close(); cout << "Done. \a" << endl; } else { cout << "K, Bye." << endl; } return 0; }
In diesem aktualisierten Code ist die Zeile cin >> y; wird durch getline(cin, y); ersetzt, wodurch das Programm die gesamte vom Benutzer eingegebene Zeile lesen und im y-String speichern kann. Dadurch wird sichergestellt, dass die gesamte Zeile in die Datei geschrieben wird.
Das obige ist der detaillierte Inhalt vonWie lese ich eine ganze Eingabezeile vom Benutzer in C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!