📘 Go 언어 4강 - 함수와 리턴값
Go 언어에서 함수는 코드 재사용의 핵심입니다.
특히 Go는 다중 리턴과 이름 있는 리턴도 지원해서 매우 유용해요!
1️⃣ 기본 함수 선언
func sayHello(name string) {
fmt.Println("Hello,", name)
}
호출 예시:
sayHello("Gopher")
2️⃣ 리턴값 있는 함수
func add(a int, b int) int {
return a + b
}
호출 예시:
result := add(3, 5)
fmt.Println("결과:", result)
3️⃣ 다중 리턴값
func divide(dividend int, divisor int) (int, int) {
quotient := dividend / divisor
remainder := dividend % divisor
return quotient, remainder
}
호출 예시:
q, r := divide(10, 3)
fmt.Println("몫:", q, "나머지:", r)
4️⃣ 이름 있는 리턴값
func getUser() (name string, age int) {
name = "고퍼"
age = 10
return
}
리턴값에 이름을 주면 return
만으로 반환됩니다.
💡 예제 1: 짝수 확인 함수
func isEven(n int) bool {
return n%2 == 0
}
호출:
fmt.Println("4는 짝수인가?", isEven(4))
💡 예제 2: 문자열 길이 계산
func length(s string) int {
return len(s)
}
fmt.Println("문자열 길이:", length("Hello"))
🧠 요약
- 함수 선언:
func 이름(매개변수) 반환타입 {}
- 다중 리턴 가능 →
(int, int)
형식 - 이름 있는 리턴은 변수 선언 생략 가능
한 줄 요약: "Go 함수는 심플하지만 다중 리턴으로 강력하다!"