看到这样的作品有点惊讶:
float f = 10.25f;
int i = (int)f;
// Will give you i = 10
有什么收获?
OTOH 10.25 与 10 完全不同,这是公认的,这种软转换可能会发生坏事。
哪些语言会引发错误?
会期待像这样的东西:"Error: Can't represent 10.25 as an integer"
。
WRT同时给出的答案:是的,它可能认为像“圆形”这样的功能是可靠的。但不是直接 WRT 到预期的数据/信息的完整性。
也许一个默认为“int”行为的函数“truncate”会是一个更好的选择?