K.Maebashi's BBS 管理者削除


[2254] C言語体当り学習 filter.cプログラム
返信


投稿者:Hiroyuki Naito
2021/06/25 23:45:12

Link:
首記のプログラムをダウンロードして、gcc+VSCode(ターミナルはcommnad prompt)で
実行してみました。

123
123
^Z

のように、
123<enter>^Zと入力するとEOFを検知してプログラムが終了しますが、
123^Z<enter>のように入力するとプログラムが終了しません。

if文の前にprintf(" %d ", ch);を挿入して文字コードを表示させると、
前者の^Zは-1、後者の^Zは26と表示されます。^Zはよくひとつ前の状態に戻る
動作のショートカットキーに使われていたりするのが原因でしょうか。

また、getchar()は「標準入力から1文字読み込む」とありますが、EOF(FFFFFFFF)
という4バイトのコードに対してはどのような動作で読み込んでいるのでしょうか。
代替メッセージ
物理削除