gpt4 book ai didi

c++ - 如何在 C++ 中检查音调中的 float ?

转载 作者:行者123 更新时间:2023-11-28 02:03:21 26 4
gpt4 key购买 nike

调音符(A,B)的简单方法

if (A < X && X < B) ...

不过貌似+INF,.NAN也在调音区

最佳答案

您的条件不是音程(diapason)。它在功能上等同于

X < std::min(A, B)

你只有一个上限,根本没有下限。


NaN 和 +Inf 的确切行为取决于浮点表示,这不是由 C++ 标准指定的,而是特定于 cpu 的。

如果我们假设通常使用的 IEEE-754,则 X=+Inf 和 X=NaN 都不能满足 A 和 B 的任何值的条件。


这是检查 float 是否在下限和上限之间(但两者都不相等)的方法:

X > low && X < high

low < X && X < high

同样,如果我们假设 IEEE-754,那么 X=+Inf 和 X=NaN 都不能满足任何低值和高值的条件。但是,由于可能无法保证 IEEE-754,因此未指定此类数字的行为。您可能需要明确支持外来硬件:

low < X && X < high && std::isfinite(X)

关于c++ - 如何在 C++ 中检查音调中的 float ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38502039/

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