Golang int64 is a 64-bit signed integer ranging from -9223372036854775808 to 9223372036854775807. The int64 only stores signed numeric values composed of up to 64 bits.
Golang has an int data type for numeric values. An int data type will only store signed numeric values. Integers are like their mathematical counterpart numbers without a decimal component. Saving string value to an int variable returns an error.
Types of Ints in Golang
Go has the following type of integers.
- int8
- int16
- int32
- int64
- uint8
- uint16
- uint32
- uint64
Golang’s integer types are: int8, int16, int32, int64, uint8, uint16, uint32, and uint64.
Integers are platform-dependent because if you are on a 32-bit system, it will hold a signed int32 variable; if you are working on a 64-bit system, it will have a signed int64 variable.
The 8, 16, 32, and 64 tell us how many bits each type uses.
The uint means “unsigned integer”, while an int means “signed integer”. Unsigned integers only contain positive numbers (or zero).
In this tutorial, we will explicitly talk about the int64 type.
How to create an int64 variable?
To create an int64 variable in Golang, you can use the var var_name int64 syntax.
package main
import (
"fmt"
"reflect"
)
func main() {
var num int64 = 10
fmt.Print(num, "\n")
fmt.Print(reflect.TypeOf(num), "\n")
}
Output
10
int64
In this example, we created an int64 variable and printed its value and data type using the reflect.TypeOf() function.
We explicitly initialize a variable num with int64 type. Then, the num is stored as a variable of type int64.
While converting, you need to ensure that you don’t have a type that has a range lower than your current range; otherwise, you will lose your data.
Golang Integer Overflow
The integer overflow error in Golang may occur if you assign a type and then use a number larger than the types range to assign it.
package main
import (
"fmt"
"reflect"
)
func main() {
var num int8 = 1000
fmt.Print(num, "\n")
fmt.Print(reflect.TypeOf(num), "\n")
}
Output
cannot use 1000 (untyped int constant) as int8 value in variable declaration (overflows)
To fix the overflows error in Go, continually assign a type and use an integer compatible with that type.
That’s it.

Krunal Lathiya is a Software Engineer with over eight years of experience. He has developed a strong foundation in computer science principles and a passion for problem-solving. In addition, Krunal has excellent knowledge of Distributed and cloud computing and is an expert in Go Language.