golang - tip. 터미널 입력에서 입력 문자열 표시하지 않기, uintptr을 int로 변환
아래 글은 golang을 공부할 목적으로 웹에서 본 글들을 정리한 것이다.
터미널 입력에서 입력 문자열 표시하지 않기
- 패스워드 등을 입력 받을 때 화면에 문자가 나오지 않게 하는 방법.
- 아래 코드는 Windows에서는 동작하지 않음
package main
import (
"fmt"
"log"
"syscall"
"golang.org/x/crypto/ssh/terminal"
)
func main() {
fmt.Print("Password: ")
password, err := terminal.ReadPassword(int(syscall.Stdin))
if err != nil {
log.Fatal(err)
} else {
fmt.Printf("\nYour password is %v\n", string(password))
}
}
uintptr을 int로 변환
// packetHeaderSt는 구조체
var packetHeader packetHeaderSt
packetHeaderSize := *(*int)(unsafe.Pointer(unsafe.Sizeof(packetHeader)))
이 글은 2018-11-13에 작성되었습니다.