пятница, 15 февраля 2019 г.

Go FAQ: Каков размер int на 64-битной машине?

Размеры int и uint зависят от реализации, но одинаковы на данной платформе. Для переносимости, код, который опирается на определенный размер значения, должен использовать явно размерный тип, например, int64. На 32-битных машинах компиляторы используют 32-битные целые числа по умолчанию, в то время как на 64-битных машинах целые числа имеют 64-битный размер. (Исторически это не всегда было так.)

С другой стороны, скаляры с плавающей точкой и комплексные типы всегда имеют определенный размер (нет базовых типов float или complex), потому что программисты должны знать точность при использовании чисел с плавающей точкой. Тип по умолчанию, используемый для (нетипизированной) константы с плавающей точкой: float64. Таким образом, foo := 3.0 объявляет переменную foo типа float64. Для переменной float32, которая инициализирована (нетипизированной) константой, тип должен быть указан явно в объявлении переменной:

var foo float32 = 3.0

В качестве альтернативы, константе должен быть присвоен тип с преобразованием, как в foo: = float32(3.0).


Читайте также:


Комментариев нет:

Отправить комментарий