2

私はcでプログラムをやっています。次のように入力をスキャンしたかった:

[root@localhost sudoers.d]# cd /home/Hitesh/
Display all 113 possibilities? (y or n)

ここで bash では、ユーザーが「n」または「y」を入力すると、プロンプトが直接表示されます。

しかし、C プログラムで getchar() を介して入力を取得している場合、「n」または「y」を押すと、実行を再開するには、その後明示的にエンター キーを押す必要があります。

したがって、「n」を押すとすぐに実行が再開され、Enterキーが押されるのを待つべきではありません。

Cプログラミングでこれをどのように達成できますか。

4

3 に答える 3

0

getchar()の代わりにgetch()を使用できます。getch()は1文字しか受け入れないため、Enterキーを押したくありません。

char opt = getch();
// show typed value
printf("%c", opt );
if( opt == 'y' )
{
  ............
}
else 
{
  ............
}

これが役立つことを願っています

于 2013-03-04T10:18:02.670 に答える
0

あなたが探している機能はgetch ()

于 2013-03-04T10:06:40.207 に答える
0

使用getch():

char answer = getch();
if(answer=='y')
   //yes!
else
   //no!
于 2013-03-04T10:11:53.553 に答える