Go에서 fmt 패키지는 콘솔에 출력하는 함수들을 제공하고, fmt 패키지의 함수를 이용하여 텍스트 입출력을 할 수 있다.
출력
Print는 인자로 받은 값을 그대로 출력한다.
package main
import "fmt"
func main() {
fmt.Print("hello, world")
}
위 코드를 실행하면 hello, world 라는 문구가 콘솔에 출력된다.
Printf는 C 언어의 printf 함수와 유사한 형식으로 출력할 수 있도록 해줍니다.
package main
import "fmt"
func main() {
name := "John"
age := 30
fmt.Printf("My name is %s and I'm %d years old.\n", name, age)
}
위 코드에서 %s는 문자열, %d는 10진수 정수를 출력하기 위한 서식 지정자이다.
실행하면 "My name is John and I'm 30 years old."라는 문자열이 출력된다.
Println은 Print와 유사하지만 출력 후 개행 문자(\n)를 추가로 출력한다.
package main
import "fmt"
func main() {
fmt.Println("hello")
fmt.Println("world")
}
위 코드를 실행하면
hello
world
라고 출력이 된다.
입력
fmt 패키지를 이용하여 콘솔로부터 입력을 받을 수 있다.
Scan 함수는 콘솔로부터 값을 입력받아 변수에 저장한다.
package main
import "fmt"
func main() {
var name string
var age int
fmt.Print("What is your name? ")
fmt.Scan(&name)
fmt.Print("How old are you? ")
fmt.Scan(&age)
fmt.Printf("Hello %s, you are %d years old.\n", name, age)
}
위 코드에서 fmt.Scan 함수는 & 연산자를 이용하여 입력받을 변수의 메모리 주소를 전달한다.
실행하면 "What is your name?"과 "How old are you?"라는 메시지가 출력되며, 사용자로부터 이름과 나이를 입력받는다. 입력받은 값은 fmt.Printf 함수를 이용하여 출력이 된다.
Scanf 함수는 C 언어의 scanf 함수와 유사한 형식으로 입력을 받을 수 있다.
package main
import "fmt"
func main() {
var name string
var age int
fmt.Print("What is your name and age? ")
fmt.Scanf("%s %d", &name, &age)
fmt.Printf("Hello %s, you are %d years old.\n", name, age)
}
위 코드에서 %s와 %d는 입력받을 데이터 타입을 지정한다.
실행하면 "What is your name and age?"라는 메시지가 출력되며, 사용자로부터 이름과 나이를 입력받는다.
입력받은 값은 fmt.Printf 함수를 이용하여 출력이 된다.
'GoLang' 카테고리의 다른 글
GOPATH -> GoModule (0) | 2023.11.07 |
---|---|
라이트세일 GO언어 어플리케이션 서비스 등록 (0) | 2023.05.17 |
변수 (0) | 2023.02.28 |