Тип int8

Тип int8 представляет собой 8-битное целое число со знаком. Он может хранить значения в диапазоне от -128 до 127 включительно. Этот тип часто используется для экономии памяти при работе с небольшими числами, а также при взаимодействии с системами, где ожидаются 8-битные целые значения. Важно помнить о возможном переполнении при выполнении арифметических операций.

Синтаксис

govar num int8

Для объявления переменной типа int8 используется ключевое слово var с указанием имени переменной и типа. Можно также использовать краткую форму объявления с инициализацией.

Пример

Давайте объявим переменную типа int8 и присвоим ей значение:

gopackage main

import "fmt"

func main() {
  var num int8 = 42
  fmt.Println(num)
}

Результат выполнения кода:

go"42"

Пример

Попробуем присвоить переменной типа int8 значение, превышающее допустимый диапазон:

gopackage main

import "fmt"

func main() {
  var num int8 = 200
  fmt.Println(num)
}

При компиляции кода произойдет ошибка:

go"constant 200 overflows int8"

Пример

Продемонстрируем переполнение при арифметической операции с переменной типа int8:

gopackage main

import "fmt"

func main() {
  var num int8 = 100
  num = num + 50
  fmt.Println(num)
}

Результат выполнения кода:

go"-106"

Мы видим, что вместо ожидаемого числа 150 произошло переполнение, и результат стал отрицательным. Это происходит потому, что максимальное значение int8 равно 127, а 100 + 50 = 150, что превышает допустимый диапазон.

Пример

Используем int8 для хранения небольшого числа в целях экономии памяти:

gopackage main

import "fmt"

func main() {
  var age int8 = 25
  fmt.Println(age)
}

Результат выполнения кода:

go"25"

Смотрите также

  • тип int,
    который представляет целое число со знаком, размер которого зависит от платформы
  • тип int16,
    который представляет 16-битное целое число со знаком
  • тип int32,
    который представляет 32-битное целое число со знаком
  • тип int64,
    который представляет 64-битное целое число со знаком