В clang есть типы с плавающей запятой фиксированной ширины? - PullRequest
0 голосов
/ 28 декабря 2018

GCC предоставляет _Float32 и _Float64 для плавающих элементов фиксированной ширины.

Однако они не являются стандартными и не существуют в clang.Я также не могу найти эквиваленты для clang.

Некоторые платформы могут определять float или double, чтобы они не были 32 или 64 битами, поэтому использование этих типов не вариант.

Ответы [ 2 ]

0 голосов
/ 29 декабря 2018

Да.Они называются float и double.

0 голосов
/ 28 декабря 2018

Отвечая на поставленный вопрос, документированные языковые расширения CLang не включают аналогов типов _Float32 и _Float64 GCC.Тем не менее, обратите внимание, что даже GCC предоставляет их только для целей, которые изначально поддерживают соответствующие типы.

С другой стороны, поскольку clang построен поверх LLVM, стоитрассмотрим документацию LLVM для представлений типа FP :

Двоичный формат half, float, double и fp128 соответствует спецификациям IEEE-754-2008 для binary16, binary32, binary64.и двоичные 128 соответственно.

В этом смысле эквиваленты CLang _Float64 и _Float32 равны double и float соответственно.(Действительно, такая же эквивалентность сохраняется в GCC практически для всех целей, где поддерживаются версии с явной шириной.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...