- 締切済み
標準入力の違い
今C言語の学習を行っています。 そこで、文字入力の学習を行っていますが、 getchar() getche() で改行(¥n)の取得値が異なります。 getchar() => 0x10 getche() => 0x13 改行復帰という言葉があるのはわかるのですが、 なぜ、getchar()のほうは、0x10で見えるのでしょうか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- jacta
- ベストアンサー率26% (845/3158)
回答No.1
getcheは標準関数ではないので、処理系による違いがあるかも知れませんが... getcharは標準入力からの1文字入力ですので、改行文字は内部的に'\n'に変換されます。 それに対して、getcheはコンソールからの(エコーバック付きでの)1文字入力なので、キーボードでEnterが押された場合、それに対応するCR(=0x0d)が入力されます。 標準関数と、処理系の独自関数とは、はっきり区別しながら学習しないと、余計な混乱を招くことになります。