Main and init functions in Golang

Go language has reserved two special purpose functions and those functions are main() and init() . Here are the things to know about using main() and init() functions in Golang .

Main and init functions in Golang

main() function

In Go, the main package is a special package used with executable programs and this package contains the main() function . The main() function is a special type of function and is the entry point for executable programs. It does not take any arguments and does not return anything. Go automatically calls the main() function, so there is no need to call the main() function directly and every executable program must contain a main package and a unique main() function.

For example:

// Chương trình Go minh họa
// khái niệm của hàm main() 

// Khai báo gói chính
package main

// Nhập các gói
import (
    "fmt"
    "sort"
    "strings"
    "time"
)

// Hàm chính
func main() {

    // Sắp xếp slice đưa ra
    s := []int{345, 78, 123, 10, 76, 2, 567, 5}
    sort.Ints(s)
    fmt.Println("Sorted slice: ", s)

    // Tìm chỉ mục
    fmt.Println("Index value: ", strings.Index("Quantrimang", "ks"))

    // Tìm thời gian
    fmt.Println("Time: ", time.Now().Unix())

}

Result:

Sorted slice:  [2 5 10 76 78 123 345 567]
Index value:  3
Time:  1257894000

init() function

The init() function is just like the main function, it does not take any arguments and does not return anything. It is present in every package and is called when the package is initialized. It is implicitly declared, so you cannot reference it from anywhere and you are allowed to create multiple init() functions in the same program and they are executed in the order they are created. You are allowed to create init() functions anywhere in the program and they are called in the order of the dictionary file name (Alphabetical order). You are allowed to put statements if there is an init() function, but always remember that the init() function is executed before the main() function call, so it is independent of the main() function. The main purpose of the init() function is to initialize global variables that cannot be initialized in the global context.

For example:

// Chương trình Go minh họa
// khái niệm của hàm init() 

// Khai báo gói chính
package main

// Nhập gói
import "fmt"

// Hàm init() có nhiều nhánh
func init() {
    fmt.Println("Welcome to init() function")
}

func init() {
    fmt.Println("Hello! init() function")
}

// Hàm chính
func main() {
    fmt.Println("Welcome to main() function")
}

Result:

Welcome to init() function
Hello! init() function
Welcome to main() function

Leave a Comment

How to use constants in Golang

How to use constants in Golang

What is a Constant or Const in Golang? Here's what you need to know about using constants in Go.

Volatile functions in Golang

Volatile functions in Golang

Variadic functions in Go allow you to pass a variable number of arguments to a function. Here's everything you need to know about variadic functions in Golang.

Named return parameters in Golang

Named return parameters in Golang

In Golang, named return parameters are often referred to as named parameters. Golang allows naming the return parameters or results of functions in the function signature or definition.

Keywords in Go

Keywords in Go

Keyword - Keywords are words in a language that are used for some internal processes or represent some predefined actions. Here is what you need to know about keywords in Golang.

Data types in Golang

Data types in Golang

Data types specify what type of data a valid Go variable can hold. In the Go language, types are divided into four categories as follows:

Function arguments in Golang

Function arguments in Golang

Go supports two main ways to pass arguments: Pass by Value and Pass by Reference. Go uses pass by value by default.

Function returning multiple values ​​in Golang

Function returning multiple values ​​in Golang

In Go language, you are allowed to return multiple values ​​from a function, using the return statement. In other words, in a function, a return statement can return multiple values.

Switch Statement in Go

Switch Statement in Go

Golang like most other programming languages ​​has switch statement. Here is how to use switch statement in Golang.

Cases to know when using selection statements in Golang

Cases to know when using selection statements in Golang

In this article, we will learn how to use default case to avoid deadlock. But first, we will learn what is deadlock case when using select command in Golang?

Anonymous structures and fields in Golang

Anonymous structures and fields in Golang

Anonymous structs in Golang are temporary structures with no names used for one-time purposes, while anonymous fields allow embedding of unnamed fields.

How to use Rune in Golang

How to use Rune in Golang

What is Rune in Golang? How to use Rune in Golang? This article will give you the answer.

How to use operators in Golang

How to use operators in Golang

Operators allow us to perform different types of operations on operands. In Go language, operators can be classified based on their different functions.

Void identifier in Golang

Void identifier in Golang

_(underscore) in Golang is called Blank Identifier. Identifier is a user-defined name of program elements used for identification purposes.

How to create basic program in Golang

How to create basic program in Golang

Hello, World! is the first basic program in any programming language. You can write this first program in Golang by following the steps below.

How to Install Go on Windows

How to Install Go on Windows

Golang can be easily installed on Windows. Here is a step-by-step guide to install Golang on Windows.

How to Fix Microsoft Teams Proxy Error on Windows 10

How to Fix Microsoft Teams Proxy Error on Windows 10

Struggling with Microsoft Teams proxy error on Windows 10? Discover step-by-step fixes to resolve proxy authentication issues, connection failures, and more. Get Teams running smoothly in minutes with our expert guide.

Solving Microsoft Teams Town Hall Event Error

Solving Microsoft Teams Town Hall Event Error

Tired of Microsoft Teams Town Hall Event Error ruining your events? Get step-by-step fixes for scheduling, access, and registration issues. Restore seamless virtual town halls today with our ultimate guide.

How to Download Microsoft Teams for Mac and MacBook Air/Pro

How to Download Microsoft Teams for Mac and MacBook Air/Pro

Discover the simplest way to download Microsoft Teams for Mac, MacBook Air, and MacBook Pro. Step-by-step instructions, system requirements, and troubleshooting tips for seamless installation in the latest version. Get started now!

How to Fix Microsoft Teams Web Login Error

How to Fix Microsoft Teams Web Login Error

Stuck with Microsoft Teams Web Login Error? Get instant fixes for common issues like "Something went wrong" or login loops. Step-by-step guide to resolve Teams web login problems and stay productive. Updated with latest browser tweaks.

How to Fix Microsoft Teams Error 657rx Update Failed

How to Fix Microsoft Teams Error 657rx Update Failed

Struggling with Microsoft Teams Error 657rx Update Failed? Discover step-by-step fixes, from quick restarts to advanced troubleshooting, to get your Teams app updated and running smoothly in minutes. No tech skills required!

Solving Microsoft Teams VDI Error Lag

Solving Microsoft Teams VDI Error Lag

Tired of Microsoft Teams "VDI Error" Lag freezing your video calls? This ultimate guide delivers step-by-step fixes for VDI environments like Citrix and VMware. Optimize performance now for lag-free collaboration!

Solving Microsoft Teams Join Meeting Error via Direct Link

Solving Microsoft Teams Join Meeting Error via Direct Link

Struggling with Microsoft Teams "Join Meeting Error"? Discover proven steps to solve it via direct links. Quick fixes for seamless joining – no tech skills needed!

How to Test Your Microsoft Teams Audio and Camera Before a Call

How to Test Your Microsoft Teams Audio and Camera Before a Call

Discover simple steps to test your Microsoft Teams audio and camera before a call. Ensure crystal-clear sound and video for professional meetings every time with our easy guide. Perfect for desktop, mobile, and web users.

How to Fix Microsoft Teams Error 53003: Access Denied

How to Fix Microsoft Teams Error 53003: Access Denied

Struggling with Microsoft Teams Error 53003 Access Denied? Discover proven, step-by-step fixes to resolve it quickly. Clear cache, update Teams, bypass proxies & more for seamless collaboration. Works on Windows, Mac & web!

Step-by-Step: Uploading Custom Backgrounds to Microsoft Teams

Step-by-Step: Uploading Custom Backgrounds to Microsoft Teams

Master uploading custom backgrounds to Microsoft Teams with this easy step-by-step guide. Personalize your meetings effortlessly on desktop, web, or mobile for a professional edge.

Troubleshooting Microsoft Teams Error on Phone (iOS/Android)

Troubleshooting Microsoft Teams Error on Phone (iOS/Android)

Struggling with Microsoft Teams "Error on Phone" on iOS or Android? Discover step-by-step fixes for calls, permissions, network issues, and more. Get back to seamless teamwork fast!

How to Fix Microsoft Teams OneDrive Error During File Sharing

How to Fix Microsoft Teams OneDrive Error During File Sharing

Tired of Microsoft Teams OneDrive error blocking file sharing? Follow our expert step-by-step guide to fix sync issues, permissions errors, and more quickly. Get back to seamless collaboration today!

Solving Microsoft Teams Error Screen Flickering

Solving Microsoft Teams Error Screen Flickering

Struggling with Microsoft Teams screen flickering? Discover step-by-step solutions to fix this annoying error, from disabling hardware acceleration to driver updates. Get smooth video calls today!

Solving Microsoft Teams Network Error on Public Wi-Fi

Solving Microsoft Teams Network Error on Public Wi-Fi

Struggling with Microsoft Teams "Network Error" on public Wi-Fi? Get instant fixes like VPN tweaks, port checks, and cache clears to restore calls and meetings seamlessly. Step-by-step guide for quick relief.

How to Fix Microsoft Teams Wheres My Team Search Error

How to Fix Microsoft Teams Wheres My Team Search Error

Tired of the frustrating Microsoft Teams "Where\