Declaring and Calling Functions in Go

In the Go programming language, functions are one of the key building blocks. They allow developers to encapsulate a piece of code that performs a specific task or set of tasks. This article will explore how to declare and call functions in Go.

Declaring Functions

To declare a function in Go, we start with the func keyword, followed by the function name, parentheses (), and optional parameters and return types. The general syntax for declaring a function in Go is as follows:

func functionName(parameter1 type, parameter2 type) returnType {
    // Function body
    // Perform tasks and computations
    // Return value(s) if applicable

Let's break down the different components:

  • func: The keyword that declares a function.
  • functionName: The name you assign to the function.
  • parameter1 type, parameter2 type: The parameters the function takes in (if any), along with their respective types. You may have multiple parameters separated by commas.
  • returnType: The type of value the function returns (if any). If the function doesn't return anything, this can be omitted.
  • Function body: The code that is executed when the function is called. This is enclosed in curly braces {}.

Calling Functions

Once you have declared a function, you can call it by using its name followed by parentheses (). If the function expects parameters, you provide them between the parentheses. If the function returns a value, you can assign it to a variable or use it directly.

Here's an example of calling a function in Go:

package main

import "fmt"

func main() {
    result := multiply(5, 3)

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

In this example, we have a main function that calls another function multiply. The multiply function takes two integer parameters and returns their product. By calling multiply(5, 3), we obtain the result of 15 and assign it to the variable result. Finally, we print the result using fmt.Println.


Functions are an essential part of Go programming. They enable developers to break down large code into smaller, more manageable pieces. By declaring functions with the appropriate parameters and return types, and calling them when needed, you can create flexible and reusable code. Understanding how to declare and call functions in Go is vital for building robust and maintainable applications.

noob to master © copyleft