cin を使用したベクトルへのユーザー入力の保存
C では、ベクトルは同じ型の要素を格納できる動的配列です。ユーザー入力をベクトルに保存するには、cin ストリーム オブジェクトを使用できます。ただし、提供されるコードの制限を考慮することが重要です。
提供されるコードについて
指定されたコードは、ユーザーから数値を読み取り、それをファイルに保存しようとします。ベクター。ただし、入力された最初の数値のみがキャプチャされます。この問題を解決するには、複数の整数を継続的に受け入れるループが必要です。
解決策
以下のコードの修正版:
<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>
この更新されたコードはループを利用することで、ユーザーが Ctrl D (Linux/Mac) または Ctrl Z (Windows) を押すまで数値を読み取ります。入力された各数値がベクトルに追加されます。
追加の考慮事項
別のアプローチには、センチネル値の使用が含まれます。これにより、以下に示すように、特定の値で入力の終了を知らせることができます:
<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>
このシナリオでは、「-1」を入力するとユーザー入力が停止され、ループが終了します。
以上がC で cin を使用して複数のユーザー入力をベクトルに保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。