発生している問題
visual studio 2008 c++では'a'を押してからEnterを押すとmissは1回だったのに、 visual studio 2017 c++では'a'を押してからEnterを押すとmissは2回になってしまいます。 'a'、'b'と押してからEnterを押すとmissは4回になってしまいます。 調べてみると_getch()から0x00が吐き出されていました。 なぜ0x00が吐き出されるようになったのでしょうか?
該当のソースコード
#include<stdio.h> #include<conio.h> void main() { char input = 0; int miss = 0; printf("Enterを押すまで無限ループします。"); while (1) { input = _getch(); if (input == 0x0d) { break; } miss++; } printf("\n「missは%d回です。」\n", miss); }
結論
0x00が吐き出されるのは仕様っぽいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/24 11:50
2018/07/24 11:52
2018/07/24 11:57
2018/07/24 11:59
2018/07/24 12:07
2018/07/24 12:12
2018/07/24 12:18
2018/07/24 12:25
2018/07/24 12:31
2018/07/24 12:33