Подтвердить что ты не робот

Unsigned double в С++?

Почему С++ не поддерживает двойной синтаксис без знака?

4b9b3361

Ответ 1

Поскольку типичные форматы с плавающей запятой не поддерживают беззнаковые числа. См., Например, этот список форматов IEEE 754.

Добавление числового формата, не поддерживаемого общим оборудованием, просто затрудняет жизнь для авторов компилятора и, вероятно, не считается заслуживающим внимания.

Ответ 2

С++ не поддерживает неподписанные типы с плавающей запятой, поскольку большинство аппаратных средств с плавающей запятой не поддерживают типы неподписанных типов с плавающей запятой. Некоторые графические карты работают с беззнаковым числом с плавающей запятой, но обычно это внутренне, не очень заметно для программы или пользователя.

Ответ 3

Неподписанные целые числа получают дополнительный бит точности и имеют немного другую побитную семантику для целых чисел со знаком. Поплавки и удвоения всегда резервируют бит для знака (на большинстве аппаратных средств) и не имеют бит-мудрой семантики, поэтому нет реальной выгоды при использовании неподписанного реального типа.