問題タブ [getchar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
15832 参照

c - 関数を使用してCで文字列を印刷する

私はCを初めて使用し、関数を使用して文字列を取得して印刷する方法を学習しようとしています。を使用している例はどこにでもありますwhile(ch = getchar(), ch >= 0)が、(main()の代わりに)関数に入れるとすぐに機能しなくなります。今、それは無限ループで立ち往生しています...それはなぜですか?

0 投票する
5 に答える
68392 参照

c - c で getchar() を使用すると、入力後に「Enter」が取得されます

ユーザーにループ内のメニューから選択するように求める簡単なプログラムを作成しようとしています。getchar() を使用して入力を取得しますが、文字を入力して「Enter」を押すと、プログラムが 2 つのループを作成することに気付きました (2 回押したかのように)。入力として。

これを修正するにはどうすればよいですか?

0 投票する
1 に答える
1222 参照

c - fgets() の後、改行はバッファに残りますか?

問題を引き起こしているコードのスニペットは次のとおりです。

名前を入力して Enter キーを押すと、getchar() は次の文字を待つ代わりに改行もキャプチャします。名前が入力された後、 getchar() が期待どおりに文字を待機するように、コードを修正するにはどうすればよいですか?

0 投票する
3 に答える
3286 参照

c - Cで「ファイルの終わり」とはどういう意味ですか?

上記のコードで、どの文字がループを中断しますか?
私はCが初めてです、助けてください。
また、このエラーの意味は次のとおりです。
codec5.c:8:2: warning: no newline at end of file

0 投票する
3 に答える
23452 参照

c - コンソールバッファをフラッシュするには?

私は繰り返し実行するいくつかのコードを持っています:

printf("続行しますか? Y/N: \n");
キーププレイ = getchar();

次の私のコードは実行されており、入力を待ちません。getchar が 2 番目の時間に文字として '\n' を使用していることがわかりました。これはsdioが持っているバッファが原因であると思っているので、「Y\n」または「N\n」であった最後の入力を保存します。

私の質問は、getchar を使用する前にバッファをフラッシュするにはどうすればよいですか?

0 投票する
4 に答える
9801 参照

c - C でファイルから入力を読み取る

わかりましたので、各行の単語と文字の量を正常に計算する入力ファイルがあります。以下のコードを使用して行末に到達すると、ループを終了し、最初の行のみを読み取ります。プログラムを続行するために次の入力行に移動するにはどうすればよいですか?

編集:各行を個別に解析する必要があるため、EOFを使用できません

0 投票する
1 に答える
15380 参照

c - getchar()と行ごとの読み取り

私の演習の1つでは、行ごとに読み取り、getcharとprintfのみを使用して出力する必要があります。私はK&Rをフォローしており、例の1つはgetcharとputcharの使用を示しています。私が読んだものから、getchar()はEOFまで一度に1文字ずつ読み取ります。私がやりたいのは、行末まで一度に1文字ずつ読み取りますが、char変数に書き込まれたものはすべて格納します。したがって、Hello、World!と入力すると、すべてが変数に格納されます。strstrとstrcatを使用しようとしましたが、成功しませんでした。

0 投票する
2 に答える
185 参照

c - Cのgetchar()について質問がありますか?

私はCの本を学び、読んでいます。この本では、「getchar()は、入力を変換せずに、標準の入力ストリームバッファから1文字を取得します」と述べています。

「入力を翻訳せずに」と言って作者が何を意味するのかわかりません。私はグーグルを試しましたが、運がありません。

ありがとう。

0 投票する
3 に答える
614 参照

c - scanf が int を想定しているのに文字を受け取ったときにメニューが誤作動するのを防ぐ方法 (C)

たとえば、次のようにします。

通常は getchar() を追加して、プログラムが無限ループ (バッファーから '\n' 文字を読み取る) しないようにします。ただし、このステートメントに続くメニューで使用すると、余分な文字が読み込まれ、文字入力に続く (入力された文字数までの) すべての scanfs がスキップされます。

私が理解したいのは、int 以外のタイプの入力を読み取るときに、プログラムのいくつかのセクションをスキップしないようにする方法です。これは、変数が予想されるドメインに入るまで継続しないループ内に配置することで解決するのが最善でしょうか?