반응형 fmt2 Golang의 fmt.Print는 heap으로 간다? Golang에는 fmt라는 패키지가 있습니다. 그리고 fmt.Print 를 사용하여 사용자에게 출력해주죠. 하지만 fmt를 사용하여 변수를 출력하면 해당 변수는 stack에서 heap으로 가버리게 됩니다. 다음 예시를 봅시다. package main import "fmt" func main() { i := 10 fmt.Println(i) } $ go build -gcflags '-m' struct.go # command-line-arguments .\struct.go:7:13: inlining call to fmt.Println .\struct.go:7:13: i escapes to heap .\struct.go:7:13: []interface {}{...} does not escape :1: .this.. 2021. 5. 23. Go "fmt" 패키지의 사용법과 Print, 내장함수 println 차이 Golang 에서는 "fmt" 라는 기본적인 패키지를 제공해줍니다. 처음 Golang을 접하게 되면 당연 출력하는 것이 "Hello warld"라고 생각합니다. 다음 예제를 보시죠. package main import "fmt" func main() { println("hi") fmt.Println("fmt") } //Output hi fmt fmt 패키지를 사용해 Println이라는 메소드를 호출하여 흔히 문자열을 출력합니다. 그럼 println 은 뭘까요?? fmt.Println()은 stdout 으로 표준 문자열 출력을 제공하는 함수입니다. println()은 내장된 함수로 stderr를 출력해주는 내장함수 입니다. 때문에 println()은 주로 디버깅 할때 유용하다고 합니다. 그럼 fmt 패키지.. 2021. 4. 18. 이전 1 다음 728x90 반응형