ユーザーが「q」と入力するとプログラムを終了するコードがいくつかあります
//press 'q' to quit application
ConsoleKeyInfo info = Console.ReadKey(true); ;
while (info.KeyChar != 'q') {
info = Console.ReadKey(true);
}
キャプチャされたキーが 'p' の場合に別の非終了動作が発生するように、この構造を変更するにはどうすればよいですか?
条件を次のように変更した場合:
(info.KeyChar != 'q') && (info.KeyChar != 'p')
次に、「p」もプログラムを終了します。「p」ケースを処理するためにwhileループ内にロジックを入れたとしても。
また:
ConsoleKeyInfo info = Console.ReadKey(true);
while (true) {
info = Console.ReadKey(true);
if (info.KeyChar == 'q') break;
else if (info.KeyChar == 'p') {
//other behavior
}
}
なんらかの理由で、プログラムを終了するにはユーザーが 'q' を 2 回押す必要がありますが、意図した動作は、キーを 1 回押すだけでアクションがトリガーされることです。