C 我可以用双重初始化类型浮点的变量
c++ Can I Initialize a variable of type float with a double?
真正无法找到太多。虽然当我使用double
初始化类型float
的变量时,编译器似乎并没有抱怨。
double a = 1.0;
float b = a;
它可以正常工作,但是我仍然很好奇是否可以这样做,/或安全?
(我在一个运行Windows的32位系统上)
4.8浮点转换
1 浮点类型的prvalue可以转换为另一种浮点类型的prvalue。如果是源值可以在目标类型中准确表示,转换的结果是表示。如果源值在两个相邻的目标值之间,则转换的结果是实施定义的这些值之一。否则,行为是不确定的。
创建变量的大小不同。" float = 4个字节"answers" double = 8字节"。因此,这里重要的是两种类型的值范围不同。如果使用小值AS 1.0,则不应影响工作流程。
顾名思义,双重的精度为2倍[1]。通常,双重的精度为15位十进制数字,而浮点有7个。
这是计算数字数的方式:
double has 52 mantissa bits + 1 hidden bit: log(253)÷log(10) = 15.95 digits
float has 23 mantissa bits + 1 hidden bit: log(224)÷log(10) = 7.22 digits
也许您会失去精确性。
相关文章:
- c++类声明时,相同的例程,不同的成员变量类型
- 如何为 c++ 的不同变量类型的结构元素创建动态数组?
- 创建类似于布尔值的变量类型
- std::cin 从控制台获取两种不同的变量类型,'storing'以后使用第二种类型?
- 如何使用变量模板比较 C++ 17 中的变量类型?
- 是否有一个库可以检查C++中的变量类型?
- 与不同变量类型相比,用于变量的 Clang AST 匹配器
- 继承类中的 C++ 成员变量类型重写
- 如何在编译器时动态获取元组内的变量类型C++?
- 在C++中动态分配变量类型
- 用于浮点值的最佳变量类型
- 定义变量类型
- 错误 - 变量类型 "X" 是一个抽象类 - c++
- 在函数 (c++) 中分配变量类型和大小数组
- 具有容器变量类型的类模板
- 获取变量类型名称
- 沿枚举 c++ 返回变量类型
- 是否可以通过模板指定抽象类变量类型
- 什么是变量类型位(32)
- C++ 在知道变量类型之前使用自动定义的变量