c++ - 编译器对我的类型转换方法做了什么

标签 c++ type-conversion

嘿,如果你能告诉我编译器对我的方法做了什么,我将不胜感激。如果我用 Area(10.1,10.1); 调用它,它会返回 102。所以 .01 被剪掉了?您是否有一个好的站点,我可以从中获取有关该特定主题的信息?谢谢你的时间!

float Area (float length, float width){
int result;
result = length*width;
return result;
}

最佳答案

由于您将 float 表达式的值分配给 int,因此数据会在分配时被截断(但在计算表达式之后)。

关于c++ - 编译器对我的类型转换方法做了什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4892865/

相关文章:

c++ - Libuv:保护事件循环免受并发访问

c++ - 将 float 转换为字符串而不会丢失精度

C++ 错误 : invalid conversion from Inheritance

c - 当除以一个小的负数时,我只得到 0

c++ - c++中的全局变量错误LNK2020

c++ - 如何将权限从一个主要用户 token 复制到另一个主要用户 token ?

c++ - 覆盖 >> 像 int 这样的运算符

pointers - 如何将接口(interface)实现指针转换为接口(interface)指针?

c# - 将枚举转换为列表

c++ - 如何在 Qt 中为 QTabWidget 设置背景图片