選択肢の中から1つ選ぶときに、Switch文を使うのではなく、矢印キーなどを使って選べるようにしたい。
C
1コード 2#include<stdio.h> 3 4int main (void); 5{ 6 int i; //選ぶときに使うやつ 7 scanf("%d",&i); 8 rewind(stdin); 9 10 switch(i) 11 { 12 case 1: 13 printf("1のときの処理"); 14 break; 15 case 2: 16 printf("2のときの処理"); 17 break; 18 default : 19 printf("error"); 20 break; 21 } 22 23 getchar(); 24 return 0; 25} 26```みたいな感じではなく、 27コンソール画面に選択肢を表示し、'◀'や'←'などを選択肢の隣に表示して、カーソルキーで動かし、'◀'や'←'がある場所の処理を実行したい。 28 29分かりづらかったと思うので、私の頭の中にあるイメージを書いてみます。 30 31<出力例1> 32選んでください 33選択肢1 ◀ //これを矢印キーの上下で動かしたい。動かしてEnterキーで、その処理を実行。 34選択肢2 35 36このときにEnterを押すと、選択肢1の処理が実行されるようにしたい。 37このときに矢印キーの下を押すと以下のように出力したい。 38 39<出力例2> 40選んでください 41選択肢1 42選択肢2 ◀ 43 44このときにEnterを押すと、選択肢2の処理が実行されるようにしたい。 45このときに矢印キーの上を押すと出力例1のように出力したい。 46 47補足 48コンソール画面で実行したいです。 49選択肢を選ぶときに使う記号、出力例では'◀'ですが、どんな記号でもいいです。 50ただ、文字ではないほうがいいです。 51選ぶときに使うキー、出力例では矢印キーですが、どんなキーでもいいです。 52ただ、直感的に操作できるように、上下で並んでいるキーがいいです。 53 54OSはWindowsです。
printf や scanf ではその仕様は無理がありそうです。ncurses を使ってください。
回答1件
あなたの回答
tips
プレビュー