Go의 함수

Go에서 함수는 특정 작업을 수행하는 코드 블록으로, 프로그램 전체에서 재사용하여 메모리를 절약하고, 가독성을 높이고, 시간을 절약할 수 있습니다. Golang 함수는 호출자에게 값을 반환할 수도 있고 반환하지 않을 수도 있습니다.

Go의 함수

Golang 함수에 대해 알아야 할 사항

예를 들어:

package main
import "fmt"

// multiply() nhân 2 số nguyên và trả về kết quả
func multiply(a, b int) int {
    return a * b
}

func main() {
    result := multiply(5, 10)
    fmt.Printf("multiplication: %d", result)
}

결과:

multiplication: 50

Golang의 함수 구문

func function_name(Parameter-list)(Return_type) {
    // function body...
}

함수 선언

Go에서는 함수는 func 키워드로 선언되고, 그 뒤에 이름, 매개변수, 선택적 반환 유형이 옵니다.

통사론

func function_name(Parameter-list)(Return_type) {
    // function body...
}

곱셈 함수 예제

func multiply(a, b int) int {
    return a * b
}

func: 함수를 선언하는 키워드.
function_name: 함수의 이름, 예: 곱하다.
매개변수 목록: a, b int—매개변수와 그 유형.
Return_type: int는 반환 유형을 지정합니다.

호출 함수

함수를 사용하려면 필요한 인수를 지정하여 함수 이름으로 함수를 호출하면 됩니다. 여기서 multiply(5, 10)은 510을 인수로 사용하여 함수를 호출합니다 .

예를 들어

result := multiply(5, 10)
fmt.Printf("Result of multiplication: %d", result)

함수 인수

Go는 함수에 매개변수를 전달하는 두 가지 방법을 지원합니다. 값으로 호출하는 방법과 참조로 호출하는 방법입니다. 기본적으로 Go는 값 호출을 사용합니다. 즉, 값이 복사되고 함수 내부의 변경 사항은 호출자의 변수에 영향을 미치지 않습니다.

값으로 호출

값 호출에서는 인수 값이 함수 매개변수에 복사되므로 함수의 변경 사항이 원래 변수에 영향을 미치지 않습니다.

예를 들어:

package main
import "fmt"

func multiply(a, b int) int {
    a = a * 2 // chỉnh sửa bên trong hàm này
    return a * b
}

func main() {
    x := 5
    y := 10
    fmt.Printf("Before: x = %d, y = %d\n", x, y)
    result := multiply(x, y)
    fmt.Printf("multiplication: %d\n", result)
    fmt.Printf("After: x = %d, y = %d\n", x, y)
}

결과:

Before: x = 5, y = 10
multiplication: 100
After: x = 5, y = 10

참조로 호출

참조 호출에서는 포인터를 사용하여 함수 내부의 변경 사항이 호출자의 변수에 반영되도록 합니다.

예를 들어:

package main
import "fmt"

func multiply(a, b *int) int {
    *a = *a * 2 // chỉnh sửa giá trị của a ở địa chỉ bộ nhớ của nó
    return *a * *b
}

func main() {
    x := 5
    y := 10
    fmt.Printf("Before: x = %d, y = %d\n", x, y)
    result := multiply(&x, &y)
    fmt.Printf("multiplication: %d\n", result)
    fmt.Printf("After: x = %d, y = %d\n", x, y)
}

결과

Before: x = 5, y = 10
multiplication: 100
After: x = 10, y = 10
Sign up and earn $1000 a day ⋙

Leave a Comment

일반 TV와 스마트 TV의 차이점

일반 TV와 스마트 TV의 차이점

스마트 TV는 정말로 세상을 휩쓸었습니다. 이렇게 많은 뛰어난 기능과 ​​인터넷 연결 덕분에 기술은 우리가 TV를 시청하는 방식을 바꾸어 놓았습니다.

왜 냉동고에는 조명이 없는데 냉장고에는 조명이 있나요?

왜 냉동고에는 조명이 없는데 냉장고에는 조명이 있나요?

냉장고는 가정에서 흔히 볼 수 있는 가전제품이다. 냉장고는 보통 2개의 칸으로 구성되어 있는데, 냉장실은 넓고 사용자가 열 때마다 자동으로 켜지는 조명이 있는 반면, 냉동실은 좁고 조명이 없습니다.

Wi-Fi 속도를 저하시키는 네트워크 혼잡을 해결하는 2가지 방법

Wi-Fi 속도를 저하시키는 네트워크 혼잡을 해결하는 2가지 방법

Wi-Fi 네트워크는 라우터, 대역폭, 간섭 외에도 여러 요인의 영향을 받지만 네트워크를 강화하는 몇 가지 스마트한 방법이 있습니다.

Tenorshare Reiboot를 사용하여 데이터 손실 없이 iOS 17에서 iOS 16으로 다운그레이드하는 방법

Tenorshare Reiboot를 사용하여 데이터 손실 없이 iOS 17에서 iOS 16으로 다운그레이드하는 방법

휴대폰에서 안정적인 iOS 16으로 돌아가려면 iOS 17을 제거하고 iOS 17에서 16으로 다운그레이드하는 기본 가이드는 다음과 같습니다.

매일 요구르트를 먹으면 몸에 어떤 일이 일어날까요?

매일 요구르트를 먹으면 몸에 어떤 일이 일어날까요?

요거트는 정말 좋은 음식이에요. 매일 요구르트를 먹는 것이 좋은가요? 매일 요구르트를 먹으면, 몸에 어떤 변화가 있을까요? 함께 알아보죠!

어떤 종류의 쌀이 건강에 가장 좋은가요?

어떤 종류의 쌀이 건강에 가장 좋은가요?

이 기사에서는 가장 영양가 있는 쌀 종류와 어떤 쌀을 선택하든 건강상의 이점을 극대화하는 방법에 대해 설명합니다.

아침에 제 시간에 일어나는 방법

아침에 제 시간에 일어나는 방법

수면 일정과 취침 루틴을 정하고, 알람 시계를 바꾸고, 식단을 조절하는 것은 더 나은 수면을 취하고 아침에 제때 일어나는 데 도움이 되는 몇 가지 방법입니다.

Rent Please!를 플레이하기 위한 팁 초보자를 위한 집주인 시뮬레이션

Rent Please!를 플레이하기 위한 팁 초보자를 위한 집주인 시뮬레이션

임대해 주세요! Landlord Sim은 iOS와 Android에서 플레이할 수 있는 모바일 시뮬레이션 게임입니다. 여러분은 아파트 단지의 집주인 역할을 하며 아파트 내부를 업그레이드하고 세입자가 입주할 수 있도록 준비하여 임대를 시작하게 됩니다.

최신 욕실 타워 디펜스 코드 및 코드 입력 방법

최신 욕실 타워 디펜스 코드 및 코드 입력 방법

욕실 타워 디펜스 Roblox 게임 코드를 받고 신나는 보상을 받으세요. 이들은 더 높은 데미지를 지닌 타워를 업그레이드하거나 잠금 해제하는 데 도움이 됩니다.

변압기의 구조, 기호 및 동작 원리

변압기의 구조, 기호 및 동작 원리

변압기의 구조, 기호, 동작 원리에 대해 가장 정확한 방법으로 알아보겠습니다.

AI가 스마트 TV를 더욱 개선하는 4가지 방법

AI가 스마트 TV를 더욱 개선하는 4가지 방법

더 나은 화질과 음질, 음성 제어 등 AI 기반 기능 덕분에 스마트 TV가 훨씬 더 좋아지고 있습니다!

ChatGPT가 DeepSeek보다 나은 이유

ChatGPT가 DeepSeek보다 나은 이유

처음에 사람들은 DeepSeek에 큰 기대를 걸었습니다. ChatGPT의 강력한 경쟁자로 마케팅되는 AI 챗봇으로서, 지능적인 채팅 기능과 경험을 약속합니다.

Fireflies.ai를 만나보세요: 여러분의 업무 시간을 절약해주는 무료 AI 비서

Fireflies.ai를 만나보세요: 여러분의 업무 시간을 절약해주는 무료 AI 비서

다른 필수 사항을 적다 보면 중요한 세부 사항을 놓치기 쉽고, 채팅하면서 메모를 하려고 하면 주의가 산만해질 수 있습니다. Fireflies.ai가 해결책입니다.

마인크래프트에서 악솔로틀 키우는 법, 마인크래프트 도롱뇽 길들이는 법

마인크래프트에서 악솔로틀 키우는 법, 마인크래프트 도롱뇽 길들이는 법

Axolot Minecraft는 플레이어가 사용법을 안다면 수중에서 작업할 때 큰 도움이 될 것입니다.

A Quiet Place: The Road Ahead PC 게임 구성

A Quiet Place: The Road Ahead PC 게임 구성

'콰이어트 플레이스: 더 로드 어헤드'의 구성은 상당히 높은 평가를 받고 있으므로, 다운로드하기로 결정하기 전에 구성을 고려해야 합니다.