gpt4 book ai didi

c++ - float 转换为整数的行为

转载 作者:太空宇宙 更新时间:2023-11-04 11:57:23 25 4
gpt4 key购买 nike

我有一个固定长度的整数类,我知道如何实现从我的类型到 native float 的转换,反之亦然,但有一些特殊情况我不知道该怎么做:

假设签名类型名称是T,未签名版本是UT,类型大小是128-bit

(1) native 浮点值大于/小于 TUT 可以表示的值?

(2) TUT 的值大于/小于 native float 可以表示的值?

我应该截断、抛出异常还是将结果设置为零?

谢谢。

最佳答案

从你的问题来看,我不确定你是否完全理解 float 。浮点表示具有量级和精度,但您的问题只是在谈论量级。因此,尽管您的整数可能在 float 可表示的范围内,但它仍然可能无法准确表示为 float 。你关心准确性的损失吗?

我的选择是抛出异常,但也包括预先检查一个数字是否可以用另一种格式表示的方法。换句话说,让您的代码用户选择他们希望如何处理特殊情况。

关于c++ - float 转换为整数的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15608807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com