为什么此C 静态铸造代码产生而不是双重
why does this c++ static cast code produce and int not a double
我是C 的新手,我不确定为什么此代码的输出为8而不是8.25?
有人可以解释为什么此代码输出INT而不是双重?
谢谢:)
#include "stdafx.h"
#include <iostream>
int main()
{
double x = 8.25;
int y;
y = x;
double z = static_cast<double>(y);
std::cout << z << std::endl;
return 0;
}
数据在语句y = x
中转换为整数8
。
a static_cast
通过转换为 int
扔掉后无法恢复丢失的" .25"。
相关文章:
- Android Studio 中带有静态库的原生C++代码
- 以下代码执行哪种内存分配(动态或静态)?
- 如何以静态代码分析友好的方式使用 #define 防护?
- 静态代码检查器抱怨.虚惊一场?
- 如何在 C++11 中解释静态代码
- 使用"静态"如何影响我的代码速度?
- 如何解决C++中声纳库贝静态代码分析错误"Explicitly define the missing copy constructor, move constructor .."
- 如何启用使用另一个类的静态方法的模板函数的自动推导,从而消除冗长的调用方代码
- 函数范围的静态变量如何导致与共享库中函数代码的未来使用不兼容
- 在静态初始化期间运行代码
- 生成代码(在编译时)以调用模板的每个实例化的静态函数
- C++代码中奇怪的未使用的静态字符串声明
- 我可以在将项目编译为静态库(未定义的引用)时在代码中使用 QImage 吗?
- C++静态库的代码混淆
- Cppcheck 静态代码分析器实际上可以检测到不太常见的警告(如 "Relative Path Traversal (CWE-23)" 或"Buffer Under-read(CWE-127)")吗
- 如果要测试,我是否应该将C 代码写为静态或动态库
- Android NDK-天然C 代码的静态分析
- 我怎么知道C++编译器是否制作线程安全的静态对象代码
- 设备代码中的CUDA类静态成员的成语
- 仅在满足静态constexpr时才包含代码