我正在寻找反向双重值
if( temp1.p[j] == -temp2.p[j] ) {
cout << "Inverse Value \n";
}
我遇到的问题是,当我将以下值复用时,它们并不总是完全精确,例如最后3位数。
temp2.p[j] = 0.91217251125729792
-temp2.p[j] = -0.91217251124879162
现在我怀疑它与双精度和符号位的操作有关,但我的问题是什么是最快的解决方案?
我认为选择双精度会很容易,但这似乎只是打印时的情况。那么我需要将值转换为字符串才能进行比较或者是否有更快的方法?