Variable Scope in Go

The scope of a variable in Golang  determines which part of the program the variable is accessible to. In Go, all identifiers have lexical scope, meaning the scope can be determined at compile time. A variable is only accessible within the block of code in which it is defined.

Variable Scope in Go

For example:

package main  
import "fmt"

// Khai báo biến toàn cụ
var myVariable int = 100 

func main() {
    // Biến cục bộ trong hàm chính
    var localVar int = 200 
    fmt.Printf("Inside main - Global variable: %d\n", myVariable) 
    fmt.Printf("Inside main - Local variable: %d\n", localVar) 
    display() 
}

func display() {
    fmt.Printf("Inside display - Global variable: %d\n", myVariable) 
}

Variable scope syntax in Golang

var variableName type = value 

Local variables

Local variables are declared within a function or a block and cannot be accessed outside that block. They can also be declared within loops and conditionals but are limited to the scope of the block.

For example:

package main
import "fmt"

func main() {
    var localVar int = 200 // Biến cục bộ
    fmt.Printf("%d\n", localVar) // Có thể truy cập tại đây
}

Result:

200

Global variables

Global variables are defined outside any function or block, making them accessible throughout the entire program.

For example:

package main
import "fmt"

// Khai báo biến toàn cục
var myVariable int = 100 // Biến toàn cục

func main() {
    fmt.Printf("%d\n", myVariable) // Có thể truy cập tại đây
}

Result:

100

Local variable priority

When a local variable has the same name as a global variable, the local variable takes precedence within its scope.

For example:

package main
import "fmt"

// Khai báo biến toàn cục
var myVariable int = 100 // Biến toàn cục
func main() {
    var myVariable int = 200 // Biến cục bộ
    fmt.Printf("Local variable takes precedence: %d\n", myVariable) // Truy cập biến cục bộ
}

Result:

Biến cục bộ có mức độ ưu tiên: 200
Sign up and earn $1000 a day ⋙

Leave a Comment

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.

Methods with the same name in Golang

Methods with the same name in Golang

Golang allows creating two or more methods with the same name in the same package, but the receivers of these methods must be of different types.

Functions in Go

Functions in Go

In Go, functions are blocks of code that perform specific tasks, which can be reused throughout the program to save memory, improve readability, and save time.

External monitors can have a negative impact on laptop batteries.

External monitors can have a negative impact on laptop batteries.

Using a laptop with an external monitor is a great combination for productivity and getting work done. But over time, you may find that your laptop suddenly runs out of battery quickly and the battery life starts to decrease.

8 major disadvantages of foldable screen phones that you didnt expect

8 major disadvantages of foldable screen phones that you didnt expect

There’s no denying that foldable phones are pretty cool. But after using them for a while, there are a few quirks to them. Here are 5 major downsides to foldable phones that you might not expect!

Adobe is bringing AI video creation technology to Premiere Pro

Adobe is bringing AI video creation technology to Premiere Pro

Adobe has brought AI video creation technology to the masses in a new way, although it has yet to create a finished movie using the technology.

Latest Genshin Impact Codes April 2025

Latest Genshin Impact Codes April 2025

Genshin Impact 5.5 Code helps you exchange for Primordial Stones, Magic Minerals, experience and many other rewards.

How to Turn Your iPad into an Extra Mac Display

How to Turn Your iPad into an Extra Mac Display

macOS Catalina and iPadOS include support for a new feature called Sidecar, designed to let you use your iPad as a secondary display for your Mac.

Wallpaper 1280, beautiful Nokia 1280 phone wallpaper

Wallpaper 1280, beautiful Nokia 1280 phone wallpaper

This is a set of Nokia 1280 wallpapers, if you have ever texted to get 1280 wallpapers, brick phone wallpapers, then try looking at these wallpapers.

Hypersonic space plane reaches speed of 11,115 km/h

Hypersonic space plane reaches speed of 11,115 km/h

Venus Aerospace has revealed the first images of its new hypersonic aircraft called the Stargazer, which can reach a top speed of 11,115 km/h, equivalent to Mach 9.

Eating bananas for breakfast helps you reduce bloating

Eating bananas for breakfast helps you reduce bloating

Bloating can happen to anyone. The good news is that breakfast is a great time to add a few ingredients to your meal that can help reduce bloating. That ingredient is bananas.

OpenAI Announces Major Update to AI Image Generation in ChatGPT

OpenAI Announces Major Update to AI Image Generation in ChatGPT

OpenAI has just officially introduced a remarkable upgrade to the AI ​​image generation capability in ChatGPT, an important step forward instead of using a separate image generation model like the previous DALL-E.

Deepseek Releases Free Language Model v3 That Runs Well on Common Hardware Configurations

Deepseek Releases Free Language Model v3 That Runs Well on Common Hardware Configurations

Chinese AI startup DeepSeek has just officially released its latest large language model (LLM), DeepSeek-V3-0324.

Reasons to ditch Gboard and switch to Samsung Keyboard

Reasons to ditch Gboard and switch to Samsung Keyboard

Gboard has long been the go-to keyboard on Android phones. However, many people have recently switched to Samsung Keyboard and haven't looked back.

Sweet and Romantic Weekend Wishes for Lovers

Sweet and Romantic Weekend Wishes for Lovers

Send sweet and romantic weekend wishes to your lover. Although they are just words or messages, they will be meaningful spiritual gifts, helping to strengthen your relationship.

Harry Potter TV series needs the following elements to be successful

Harry Potter TV series needs the following elements to be successful

HBO's Harry Potter remake is expected to premiere in 2026. Here's what makes the TV Harry Potter a success.

Stunning pictures of the supermoon from around the world

Stunning pictures of the supermoon from around the world

Beautiful moon pictures are not rare on the Internet. This article will summarize for you the most beautiful moon pictures in the world.

AMD Ryzen Users Should Install This BIOS Update for a Free Performance Boost

AMD Ryzen Users Should Install This BIOS Update for a Free Performance Boost

Now, AMD has responded to the issues with its underperforming flagship CPU line with a new update that could deliver a few more frames per second.