C에서 문자 하나만 입력받기
글쓴이: feelsocrazy / 작성시간: 일, 2008/04/13 - 3:57오후
문자를 딱 한개만 받게 할 수는 없나요???
printf(" I 를 입력하면 입력할 수 있습니다.\n");
while((c = getchar()) != 'I')
{
printf("오류~ 다시 입력하세요 !! : ");
fflush(stdin);
}
대충 이렇게 할려고 하는대요~!!
한 문자 입력해도......버퍼에 \n 이 녀석이 남아서.....오류~!!가 2번 찍히고......
오류! 문구가 한번 찍히게 하고 싶은대요.....그리고 getchar로 한문자가 아니고....3-4문자를 받아들이면
while문이 많이 도는대......한번만 돌게 하면서....오류 문구 찍어내게 하는 방법이 없을까요??
scanf도 써보고.....했는대 안되내요.....ㅠㅠ
getch를 써볼려고 했는대......리눅스에서 짜고 있어서.....그것도 안 써지내요~~~
좀 도와주세요~~ 하루종일 이 것 때매 죽겠내요~~~ㅠㅠ
간단한 소스 예제 좀 들어주세요~
Forums:
몰랐던 점이네요.
getch() 는 리눅스에서 못쓰는군염 ㅇ.,ㅇ
---------------------------------------------------------------------------------------------------------------
루비 온 레일즈로 만들고 있는 홈페이지 입니다.
http://jihwankim.co.nr
여러 프로그램 소스들이 있습니다.
필요하신분은 받아가세요.
getchar()로 확인하고
확인하고 아니면 ungetchar()로 다시 집어 넣을 수 있습니다
ncurses 를 사용하면
ncurses 를 사용하면 됩니다.
http://wiki.kldp.org/wiki.php/NCURSES-Programming-HOWTO#s-1.2.1
--
오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...
http://mytears.org ~(~_~)~
나 한줄기 바람처럼..
오랫동안 꿈을 그리는 사람은 그 꿈을 닮아간다...
http://mytears.org ~(~_~)~
나 한줄기 바람처럼..
ncurses
fflush로 입력 스트림을 플러시할 수 없습니다.
ncurses 라이브러리리를 쓰시면 getch 함수를 쓸 수 있습니다.
컴파일할 때는 -lncurses 옵션을 붙여주세요.
gets 를 사용하면 될
gets 를 사용하면 될 것 같은데요.
gets 로 MAX 개수만큼 읽어드린 후 문자의 길이가 strlen() 이 1이 아니면 한문자 이상을 입력한 것이죠.
요렇게 하는 방법도
요렇게 하는 방법도 있지요 ~
---------------------------------------
세계는 넓고, 할일은 많다.
---------------------------------------
세계는 넓고, 할일은 많다.
댓글 달기