Heim >Backend-Entwicklung >C++ >Wie kann ich mit cin in C mehrere Benutzereingaben in einem Vektor speichern?
Benutzereingaben in einem Vektor mit cin speichern
In C ist ein Vektor ein dynamisches Array, das Elemente desselben Typs speichern kann. Um Benutzereingaben in einem Vektor zu speichern, können Sie das Cin-Stream-Objekt verwenden. Es ist jedoch wichtig, die Einschränkungen des bereitgestellten Codes zu berücksichtigen.
Den bereitgestellten Code verstehen
Der angegebene Code versucht, Zahlen vom Benutzer zu lesen und sie in einem zu speichern Vektor. Allerdings wird nur die erste eingegebene Nummer erfasst. Um dieses Problem zu beheben, ist eine Schleife erforderlich, um kontinuierlich mehrere Ganzzahlen zu akzeptieren.
Lösung
Die modifizierte Version des Codes unten:
<code class="cpp">int main() { int input; vector<int> V; cout << "Enter your numbers to be evaluated: " << endl; // Use a loop to read multiple integers from cin while (cin >> input) V.push_back(input); write_vector(V); return 0; }</code>
Durch die Verwendung der Schleife liest dieser aktualisierte Code Zahlen, bis der Benutzer Strg D (Linux/Mac) oder Strg Z (Windows) drückt. Jede eingegebene Zahl wird dem Vektor hinzugefügt.
Zusätzliche Überlegungen
Ein alternativer Ansatz beinhaltet die Verwendung eines Sentinel-Werts. Dadurch kann ein bestimmter Wert das Ende der Eingabe signalisieren, wie unten gezeigt:
<code class="cpp">int main() { int input; vector<int> V; cout << "Enter numbers (enter -1 to stop): " << endl; // Use a sentinel value to terminate input while (cin >> input && input != -1) V.push_back(input); write_vector(V); return 0; }</code>
In diesem Szenario stoppt die Eingabe von „-1“ die Benutzereingabe und beendet die Schleife.
Das obige ist der detaillierte Inhalt vonWie kann ich mit cin in C mehrere Benutzereingaben in einem Vektor speichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!