2014-03-29 76 views
1

我正在使用termios.h頭文件在RAW模式下實現控制檯,並試圖禁用 箭頭鍵。我目前使用ctype.h文件來測試從控制檯得到的字符是否是字母數字,但向上箭頭是以字母A的形式發送的。如何禁用控制檯中的箭頭鍵C

如何禁用箭頭鍵。

感謝

+0

向上箭頭應該顯示爲帶有修飾符/轉義序列的A.你需要檢查你的界面。 –

+0

轉義序列是^ A,但我一次得到一個字符我不知道該怎麼做。 – DangerousDave23

回答

0

有可能提前字符被扔出去的A的。你需要弄清楚這些角色是什麼。以下代碼將幫助您找出每個箭頭鍵生成的字符序列。一旦你知道了,你可以修改代碼來忽略這些序列。

int main(void) 
{ 
    int c; 

    while ((c = getchar()) != EOF) 
     printf("%02x\n", c); 
} 
+0

事實上,答案是:0x1b(ASCII ESC),0x5b('['),0x41('A'))。所以,如果你想禁用這個,當你看到0x1b時,檢查'['下一步,如果是的話,再加上一個字符。 –

相關問題