C で標準入力からスペースを読み取る方法
C で cin を使用して入力を読み取る場合、通常、スペースはデフォルトで無視されます。スペースを含む文字を処理する場合、これは問題になる可能性があります。この問題に対処する方法は次のとおりです。
1 つのアプローチは、cin の前に noskipws マニピュレータを使用することです。このマニピュレータは、空白を含むすべての文字を読み取るように cin に明示的に指示します。
int main() { char a[10]; // Enable reading spaces cin >> noskipws; for (int i = 0; i < 10; i++) { cin >> a[i]; if (a[i] == ' ') { cout << "It is a space!!!" << endl; } } return 0; }
または、get 関数を使用してストリームから個々の文字を読み取ることもできます。 get は、改行または指定された文字数に達するまで文字を取得します。
int main() { char a[10]; // Read 10 characters into the array 'a' cin.get(a, 10); for (int i = 0; i < 10; i++) { if (a[i] == ' ') { cout << "It is a space!!!" << endl; } } return 0; }
どちらのメソッドでも、標準入力ストリームからスペースを読み取り、それに応じて処理できます。
以上がC の標準入力からスペースを読み取る方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。