>> Delete No. 54697 article
No. RE: 초보 질문 --; C언어 scanf와 getchar 의 작동원리...

등록 2002-08-09 17:12:00 By localhost     조회 5
이름 Lunatine    

		안녕하세요. 루나틴입니다.
 작동원리에 차이가 있다기 보다는 변수 형에 때문에 그렇습니다.
현재 사용하는 ch가 int형이지요? 이것은 char보다 당연히 큽니다.
 그래서 scanf로 하면 int형이 잡힌(예를 들어 int가 4바이트라면)
4바이트의 공간에 기록합니다. 여기서 어긋나는 것이지요.
 첫번째 소스를 int가 아니라 char로 바꿔보세요. 제대로 나올것입니다.
그리고 두번째에서 getchar()가 제대로 되는 것은
man getchar해서 보시거나 레퍼런스를 보시면 아시겠지만 getchar()의
return값은 int입니다. ^^;; (char가 왜 아닌지는 저도 모르겠네요..)
 그렇기 때문에 ch에 정확히 값이 들어가고.. 결과도 제대로 나오는것이지요
 그럼 이만~--Lunatine CZ
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved