很奇怪的是,即使可以进行值转换,将int转换为float的转换总是会提示警告。为什么会这样呢?
int i = 0;
float f = 0; // warning here
// I thought this was an implicit conversion,
// meaning it is convertible with no warnings.
f = i; // another warning here
警告信息为:
warning C4244: '=' : conversion from 'int' to 'float', possible loss of data
f = MAXINT;
和f = INT_MAX;
都会产生相同的警告。 - user103214some_float = MAX_INT;
或者some_float = some_int
应该会有警告。但是,为什么对于0
也是必要的呢? - ruslik