我最近听了一堂系统编程的讲座,我的教授告诉我
我知道在将
难道它不应该像
下面是我理解这个问题的方式的图片:
非常抱歉我的问题没有表达清楚。
问题不在于声明,而是关于
f == (float) (double) f
是错误的,但我不理解为什么错了。我知道在将
double
类型转换为float
类型时会失去数据,但我认为只有当double
类型中存储的数字无法用float
类型表示时才会发生数据丢失。难道它不应该像
x == (int)(double)x;
那样正确吗?下面是我理解这个问题的方式的图片:
非常抱歉我的问题没有表达清楚。
问题不在于声明,而是关于
double
类型的转换。
希望你不要因为我的错误而浪费宝贵的时间。