为什么C ++没有< cstdfloat>浮点数的标题,如它有< cstdint>整数?
编辑:
由< cstdfloat>我的意思是为float和double提供typedef的标头。就像Qt中的qreal typedef一样。希望我的问题现在很明确。
答案 0 :(得分:6)
一个应用程序通常需要16位来表示一个整数,比如一个位域,但是对于一个浮点只有16位是没用的。在整数中操作位很容易,所以恰好有16位很好。在浮点数中操作位需要将其转换为整数,使float16
类型相当无关。
出于同样的原因,具有能够存储(并且还执行数学运算)指针的整数类型是有用的,但是谁需要将指针值转换为浮点值,然后对其执行浮点数学运算,然后将它转换回指针?
关键是stdint.h
(或cstdint
对于C ++的大多数功能,除了stdint.h
是C99标头,并且在技术上不是C ++的一部分)不适用于浮点值。
答案 1 :(得分:2)
您是在寻找<float.h>
及其C ++兄弟<cfloat>
吗?