키보드로 입력받는거에서요..
글쓴이: samdochen / 작성시간: 금, 2004/01/16 - 10:48오전
void menu(void) { unsigned int s; printf("\n Enter the number you wish to setup(Exit = 'x') => "); while(1) { s = getchar(); if((s>= 0x30) && (s <= 0x7f)) { switch(s) { case '0': menu_test(); break; case '1': menu_test(); break; case '2': menu_test(); break; case '3': menu_test(); break; default : break; } } if(s == 'x' || s == 'X') break; } return; }
이렇게 했을때요.
소스는 기본적인것을 생략하고 설명하기 위해 간단히 적었습니다.
컴파일에서 에러는 없어요.
실행했을때 키보드입력받는곳에서 걸리네요.
./menu & 이랬을때,
키보드만 치면 일시정지가 되버려요.
ps로 확인해보면 상태가 T로 되버리더라구요.
왜 그런지 모르겠습니다.
Forums:
동작에는 이상없는듯 한데여...다만 의도는 한개의 char를 받을려는
동작에는 이상없는듯 한데여...
다만 의도는 한개의 char를 받을려는것같은데 그렇다면 다른방법을 사용하셔야할듯하군여.
이렇게하면 1 ,enter 했을때 두개가 입력된게 되니까여.
한번더돌아두 소스상으로 크게 상관은 없겠지만여.
백그라운드
menu & 로 실행하셨기 때문입니다.
&로 인해 프로세스가 백그라운드에서 실행됩니다.
터미널에서 입력을 받으실려면 & 를 지워주세요.
댓글 달기