초짜질문입니다....;
글쓴이: kykisk / 작성시간: 일, 2004/01/11 - 11:17오후
아직 유닉스나 리눅스 초짜라 vi나 gcc 등밖에 사용할줄몰라서
질문도 좀 이상할지도....죄송.....;;
zterm사용하는데요....
어떤 키를 눌렀을때 그 키를 어떤값으로 입력받는지를 알고싶어서
#include<stdio.h>
int main(void)
{
int k;
k = getchar();
printf("%d\n",k);
}
이렇게한뒤
curses 를 포함시켜 컴파일을 했는데요...
1이나 2등 다른값은 되는데
ESC, F1, F2.....등등은 동일한값만나오네요....27이라고...;;
보통 ESC등을 눌렀을때 ^[[ 식으로 모니터에 찍혀서 ^ 나 [ 를 입력시켜봤는데
이건또 91등이 나오네요....
아무래도 ESC키등을 인식못하는듯하기도하고..........
죄송하지만 조언좀....;;
Forums:


man ncursesman curs_initscrinitscr
man ncurses
man curs_initscr
initscr(), endwin() 참고.
C FAQ: http://www.eskimo.com/~scs/C-faq/top.html
Korean Ver: http://cinsk.github.io/cfaqs/
curses를 사용했다고 하셨는데어디에 쓰신건지, 전혀 안보이네요..
curses를 사용했다고 하셨는데
어디에 쓰신건지, 전혀 안보이네요... ;
이렇게 해보세요.
#include <ncurses.h> int main() { int ch; initscr(); keypad(stdscr, TRUE); /* We get F1, F2 etc... */ noecho(); printw("Press any key...\n"); ch = getch(); printw("The pressed key is "); printw("%d\n", ch); refresh(); endwin(); return 0; }답변 감사합니다...
답변감사합니다....
그런데 이것도 ESC부터 F1 F2 F3등은 똑같이 27 만나오네요...
F1 F2 ESC 등을 입력하면 서로 다른 함수를 호출하려고 하는데
F1 키등은 안먹나요?
한번더 답변주시면 감사하겠습니다..
테스트하고 올린 소스인데... -_-;<Esc>는 27
테스트하고 올린 소스인데... -_-;
<Esc>는 27이 나오고
<F1>는 259가 나오더군요.
어떻게 컴파일을 했는지 보여주세요.
위에보여주신거랑....
위에 보여주신거 그대로 썼거든요?
컴파일은 gcc -o bios bios.c -lcurses 라고했는데.....
근데 값이 전 똑같이 27만....;;;
아 근데 F1~ F4까지만 그렇네요...나머진 제대로나오는데...;;
zterm에 문제가??-_-a;;
도스랑 같은거면...오래전이라 기억이 가물가물한데,F1이나 방
도스랑 같은거면...
오래전이라 기억이 가물가물한데,
F1이나 방향키 등은 키값이 연속으로 2개가
발생했던 것 같은데요.
첫번째 esc+키캆 이거든요..
getch를 한번 더 해야할 것 같은데요.
테스트를 해 봤는데, 터미널마다 문제가 있군요.로컬에서 했으면 괜
테스트를 해 봤는데, 터미널마다 문제가 있군요.
로컬에서 했으면 괜찮은진 모르겠는데
원격에서는 문제가 됩니다.
zterm 으로 했을 시에는 (TERM=xterm)
F1 : 1b 5b 31 31 7e 즉, esc[11~
F2 : esc[12~
윈도xp telnet 으로 했을때는 ansi 모드인데
F1 : 1b 4f 50 -> esc O P
F2 : 1b 4f 51 -> esc O Q
이 들어오는군요..
다른 방법을 써여 할 것 같은걸요....
더이상은 잘 모르겠네요...
ps.
그리고 위에 esc + 키값 이 아니고 0 + 키값 인것 같네요..
답변감사합니다
답변감사합니다
아무래도 그런듯하네요....
댓글 달기