Sobes.tech
Junior

Bir sayının saklanması kaç bayt alır?

sobes.tech yapay zeka

AI'dan gelen yanıt

Go'da bir sayının depolama boyutu, türüne bağlıdır.

Veri Tipi Boyut (bayt) Değer aralığı
int Mimariye bağlıdır (32 veya 64 bit) Mimariye bağlıdır
uint Mimariye bağlıdır (32 veya 64 bit) Mimariye bağlıdır
int8 1 -128 ile 127 arasında
uint8 1 0 ile 255 arasında
int16 2 -32768 ile 32767 arasında
uint16 2 0 ile 65535 arasında
int32 4 -2147483648 ile 2147483647 arasında
uint32 4 0 ile 4294967295 arasında
int64 8 -9223372036854775808 ile 9223372036854775807 arasında
uint64 8 0 ile 18446744073709551615 arasında
float32 4 Yaklaşık ±3.4e38
float64 8 Yaklaşık ±1.8e308
complex64 8 İki float32 değeri (gerçek ve sanal kısımlar)
complex128 16 İki float64 değeri (gerçek ve sanal kısımlar)
byte 1 uint8 için eşanlamlı
rune 4 int32 için eşanlamlı (Unicode kod noktası)

Belirli bir platformda tür boyutunu belirlemek için örnek:

import (
	"fmt"
	"unsafe"
)

func main() {
	// `int` ve `uint` boyutları işlemci mimarisine bağlıdır
	fmt.Printf("int boyutu: %d bayt\n", unsafe.Sizeof(int(0)))
	fmt.Printf("uint boyutu: %d bayt\n", unsafe.Sizeof(uint(0)))

	// Sabit türlerin boyutları sabittir
	fmt.Printf("int8 boyutu: %d bayt\n", unsafe.Sizeof(int8(0)))
	fmt.Printf("float64 boyutu: %d bayt\n", unsafe.Sizeof(float64(0)))
}