Преобразование в uint32

Преобразование в uint32 в Go выполняется с помощью явного приведения типов. Этот тип представляет собой 32-битное целое число без знака, которое может хранить значения от 0 до 4294967295. В первом параметре мы передаем значение, которое хотим преобразовать, во втором параметре указываем целевой тип uint32. Важно помнить, что при преобразовании из типов с большей разрядностью или из чисел с плавающей точкой может произойти потеря данных.

Синтаксис

gouint32(value)

Пример

Давайте преобразуем целое число 42 в тип uint32:

gopackage main

import "fmt"

func main() {
  var num int = 42
  res := uint32(num)
  fmt.Println(res)
}

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

go42

Пример

Преобразуем отрицательное число -10 в uint32. При таком преобразовании происходит переполнение, и мы получаем большое положительное число:

gopackage main

import "fmt"

func main() {
  var num int = -10
  res := uint32(num)
  fmt.Println(res)
}

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

go4294967286

Пример

Преобразуем число с плавающей точкой 123.45 в uint32. При таком преобразовании дробная часть отбрасывается:

gopackage main

import "fmt"

func main() {
  var num float64 = 123.45
  res := uint32(num)
  fmt.Println(res)
}

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

go123

Пример

Преобразуем строку в uint32 с помощью пакета strconv. Для этого используем функцию strconv.ParseUint:

gopackage main

import (
  "fmt"
  "strconv"
)

func main() {
  str := "12345"
  num, err := strconv.ParseUint(str, 10, 32)
  if err != nil {
    fmt.Println(err)
    return
  }
  res := uint32(num)
  fmt.Println(res)
}

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

go12345

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