1樓:鳴蟬百
在c**中可設定如下自編的intokey( )函式,用以接收方向鍵值。庫函式kbhit( )是檢測是否有按鍵被按下,庫函式getch( )是讀取鍵盤按鍵值的,不需按回車,也不回顯。dir是代表方向的變數,根據不同的方向鍵值,讓dir取1到4這四個不同的值。
其它的程式段就可根據dir的值讓東西朝某個方向移動。方向鍵按下後會產生2個值,第一個是224,另一個分別為上下左右的72、80、75、77,因此要讀取2次值來判斷。要包含#include.
void intokey( )
}
注:這個函式**於某些“貪吃蛇”的**,略有修改,足可獲取方向鍵值。其中的1、2、 3、4分別對應著上下左右。
當flag獲得鍵值後,分兩種情況:一是flag=224,此時再次獲取鍵值以判斷輸入的是4個方向中的哪一個;二是flag=13,表示按下回車鍵,我們就執行迴圈,程式暫停,等待再次輸入回車,程式繼續執行。
2樓:就無名
哪有他們說的那麼複雜,直接 int ch = _getch(); 試試不就知道了?上下左右都是不一樣的;注意是 int 不是 char ;
3樓:文正
一般是使用getch獲取
方向鍵(←): 0xe04b
方向鍵(↑): 0xe048
方向鍵(→): 0xe04d
方向鍵(↓): 0xe050
一個方向鍵要用兩個getch才能把它的資料獲取完.
然後對應著兩個字元資料, 一個當高位, 一個當低位, 就可以判斷按下的是什麼鍵, 如:
char ch = getch();
if(ch == 0xe000) //如果高位相等else //如果不是, 把這個字元吸收了.
getch()
新版的vc版本用_getch替換了.
4樓:匿名使用者
那你先要熟悉鍵盤編碼和asc碼,然後跟值比較啊!
5樓:匿名使用者
可以使用 _getch 函式
#include
#include
void main()
else if( key == 77 ) //right }neednextkey = false;
} if( key <= 0 ) }
printf_s( "press any key to continue...\n" );
_getch();}
6樓:匿名使用者
有點難度,我給你問下。。
如何獲分辨鍵盤是輸入了方向鍵,用的是c語言!
7樓:匿名使用者
1、一般是使用getch獲取
方向鍵(←): 0xe04b
方向鍵(↑): 0xe048
方向鍵(→): 0xe04d
方向鍵(↓): 0xe050
一個方向鍵要用兩個getch才能把內它的資料獲取完容.
然後對應著兩個字元資料, 一個當高位, 一個當低位, 就可以判斷按下的是什麼鍵, 如:
char ch = getch();
if(ch == 0xe000) //如果高位相等else //如果不是, 把這個字元吸收了.
getch()
2、例程:
#include
#include
main()
8樓:
//你好,來在接收方向鍵時只需獲取自鍵盤的按鍵bai鍵值,然後根據不du
同的鍵值進行不同的處理zhi即可
//一個簡單且完整dao的示例如下
#include
#include
int main()
}return 0;}
9樓:金色潛鳥
下面程式探測方向鍵編碼(16進位制和10進位制)。
按1個鍵,內讀得2個碼:
容#include
#include
main()
0xe0,0x48 上
0xe0,0x4b 左
0xe0,0x4d 右
0xe0,0x50 下
10樓:hh矢羽
用asc碼鍵盤上的鍵都有對應的asc碼
c語言如何使用鍵盤上的上下左右鍵
11樓:c基生物
int keydown()
return c;}
我也碰到這種事,暫時用這個..
12樓:天雲一號
用bioskey()函式可以實現讀取鍵盤的上下左右鍵函式原型:int bioskey (int cmd)說 明:bioskey()的函式原型在bios.
h中,即必須包含標頭檔案#include
讀取方向鍵可以用下面的程式啊!
#include
#include
#define key_up 0x4800 // 向上方向鍵#define key_down 0x5000 // 向下方向鍵#define key_right 0x4d00 // 向右方向鍵#define key_left 0x4b00 // 向左方向鍵void main()
case key_down :
case key_left :
case key_right : }}
C語言中對使用者輸入的讀取
因為你輸入完第一個字元後按了回車鍵,而回車鍵實際上輸入了2個字元,第一個字元被scanf用來確認輸入結束,第2個位元組仍保留在緩衝區內,被第2個scanf讀到了,因此b的值實際上是回車輸入的第2個字元,是個控制字元,不可見.以後注意了,在scanf c getchar之類輸入字元的語句前,要加ffl...
c語言怎樣輸入對數,在c語言中log怎麼輸入
大野瘦子 include include void main c語言中使用對數函式的方法 log 函式 返回以e為底的對數值 標頭檔案 1 include log 函式返回以 e 為底的對數值,其原型為 1double log double x log 用來計算以e為底的 x 的對數值,然後將結果返...
在c語言中怎麼實現輸入esc退出其他鍵繼續
四舍 入 include include intmain while 1 if kbhit getch 0x1b break printf dosomething.當前階段,在程式設計領域中,c語言的運用非常之多,它兼顧了高階語言和組合語言的優點,相較於其它程式語言具有較大優勢。計算機系統設計以及應...