問題タブ [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 投票する
3 に答える
163 参照

c - Cでループの反復ごとに3文字を読み取りますか?

これは私には意味がありませんが、うまくいけば、あなたの一人がなぜこれをしているのか理解しています。

隣り合った3つの整数は互いに関連しているため、getchar()で3文字を読み取る必要がある割り当てがあるため、次のように構造化されたループを設定します。

問題は、文字数が3で割り切れない場合、最後の反復が実行されないことです。したがって、文字「Abcd」が入力された場合、Abcで最初の反復が実行されますが、2番目の反復はDでは何も実行されません。「Abcde」についても同じですが、Abcdefは機能します。

これは宿題なので、私にとっては問題を解決しないでください。しかし、これはgetcharの奇妙な点で、多くの文字が見つからない場合はループを終了するだけですか?

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

c - 各単語が新しい行にある C で詩を出力する

getcharC プログラミング クラスで、関数とのみを使用して、新しい行に各単語を含む詩を出力する割り当てがありputcharます。私はプログラムの大部分を書きましたが、複数のスペースに対して改行を 1 つだけにする方法がわかりません。たとえば、複数のスペースがある場合、出力にギャップが生じますが、これは望ましくありません。これを修正する方法を知っている人はいますか?

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

c++ - getchar()と改行に関して明確にする必要があります

getchar()ユーザーからの文字入力の読み取りに使用することに疑問があります。

2ユーザーからの入力としてcharを取得する必要があります。この場合、ユーザーが文字の'A'後にnewline。、次に文字を入力'B'すると、何が格納されますか?char2それは改行文字ですか、それとも文字'B'ですか?

WindowsのCodeBlocksで試してみて、char2実際には改行文字を格納しましたが、文字を格納することを意図していました'B'

期待される動作が何であるか、そしてそれがコンパイラに依存しているかどうかを知りたいだけですか?もしそうなら、ターボCとmingWの間にどのような違いがありますか?

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

c - scanf の使用時に getchar が停止しない

理解に苦しむgetchar()。次のプログラムgetcharでは、期待どおりに動作します。

ただし、次のプログラムでは、getcharは遅延を作成せず、プログラムは終了します。

次の奇妙な回避策がありますが、これは機能しますが、理由がわかりません。

私の質問は次のとおり
です。 1. 何をしているのscanfですか? なぜscanfこれを行うのですか?
2. 回避策が機能するのはなぜですか?
3. 次の Python コードをエミュレートする良い方法は何ですか?

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

c - C の getchar から正しい変数割り当てが得られない

簡単な計算プログラムを書いていますが、使える文字列操作関数は getchar と putchar だけです。現在、入力から変数に数値を割り当てようとしていますが、変数を出力すると、それは乱数になります。たとえば、コンソールに 3 と入力すると、出力は 505110 でした。ありがとうございました。

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

c - C の電卓プログラムで、逆さまの疑問符とプロンプトが 2 回出力される

簡単な計算プログラムを書いていますが、有効な出力が得られません。私が得ているのは、逆さまの疑問符だけです。また、プログラムの最後に、別の計算を入力するかどうかをユーザーに尋ねるプロンプトが表示されます。ただし、計算を入力すると、プロンプトがコンソールに 2 回表示されます。なぜこれらのことが起こっているのか誰か知っていますか?最後に、入力と出力の処理には getchar と putchar しか使用できません。助けてくれてありがとう。

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

c - getchar() == EOF のテストが期待どおりに機能しない

「ユーザーが最大 20 個の整数を入力できるようにする C プログラムを作成する (センチネル値に基づいて、または 20 個の整数制限に達したことに基づいて、数値の受け入れを停止します)」という課題があります。その後、プログラムは数値を表示する必要があります。エントリーの逆順です。」

センチネル値を "EOF" (または CTRL+D / CRTL+Z) にすることにしました。私のコードには、いくつかの非常に不安定な動作があります。

  1. EOF キーを 2 回押す必要があります (これにより、配列にカウントされる空白のエントリも作成されます。
  2. 最初のエントリの最初の桁が切り捨てられます。

他のすべては正常に動作しているように見えますが、これは明らかに望ましい結果ではありません。以下は私のコードです。何が悪いのか説明できますか?

}

編集済み:これが私の最終的なコードです。ご協力いただきありがとうございます:

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

c - この 2 次元の char 配列に対する char 入力の何が問題になっていますか? K*K 入力の合計を取らないのはなぜですか?

ユーザーから 2 次元の char データを取得しようとしていますが、ユーザーからの入力を適切に取得していません。次のコードのバグを強調していただけますか?

で置き換えてみましcharint。整数に対してはうまく機能します。

charからの読み取りの何が問題になっていstdinますか?

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

c - ファイルに何も書き込まれていません

コード:

ここで2つの問題に直面しています:

  1. ファイルが作成されていますが、ファイルに何も書き込まれていません。
  2. 量を入力すると、すべての print ステートメントが出力され、getchar で待機しない while ループの最初に移動します。
0 投票する
1 に答える
1348 参照

c - C で getchar() とポインター表記を使用してユーザー入力を取得できない

プログラムを通常の配列表記から純粋なポインター表記に変更していますが、while ループで getchar() を使用してユーザー入力を受け取ることができません。プログラムが受信していたものを印刷すると、逆さまの疑問符が出力されました。変数の型を変更したことがないため、なぜこれが起こっているのかわかりませんでした。問題は、ユーザー入力を受け取る 2 番目の関数にあります。お手伝いありがとう。