암호 입력시 *나오게 하는 프로그램은 어떤방식으로 구현?

skylandi의 이미지

도와 주세요~~

하는 방식이라도 갈켜 주시면 감사하겟습니다. ㅠㅠ

cdpark의 이미지

ioctl 함수를 써서 tty의 echo 기능과 buffer 기능을 꺼 준 후에 getchar()로 읽으면서 putchar('*')를 해 주면 됩니다. 물론 backspace 등에 대한 처리도 만들어야 하고요.

가장 좋은 방식은 원하는 방식이 구현된 "소스"를 구해다가 보는 거죠. :) 그게 공부하는 사람 입장에서 OpenSoftware의 장점 아닌가요?

realian의 이미지

도스에서 C 플밍 과제 중에 저게 있었습니다...
그냥 무식하게 getchar()다음에 바로 "^H*" 을 프린트 했었던 기억이 있군요..
아.. 물론.. 입력받은게 특수또는 제어문자가 아닐 경우에 한해서 저렇게 해 줘야
backspace 와 같은 경우 처리가 제대로 될 거 같네요..

별로 권장하고 싶진 않은 방법이지만 도스에서 짜신다면야.. 이렇게.. -_-;

..........No Sig.........|
-------------------+

unipro의 이미지

[url]http://kldp.org/script/bbs/read.php?table=qa2&no=2621&o[sc]=n&o[ss]=unipro&o[st]=a&o[at]=s&o[sct]=s&o[stt]=s[/url]

내 블로그: http://unipro.tistory.com

larycho의 이미지

getpass라는 함수가 있는 것으로 알고 있는데...[냉무]

skylandi의 이미지

다들 즐거운 설날 보내시길...

내가 하고자 하는길....

dotri의 이미지

힘들게 터미널제어하지 말고 ncurse 라이브러리 쓰세요.
하지만 getpass() 함수를 이용하는게 가장 편리한 방법이겠죠 아무래도.