为什么这些双精度的返回值是-1
Why are the return values of these doubles -1.#IND?
我有:
double score = cvMatchContourTrees( CT1, CT2, CV_CONTOUR_TREES_MATCH_I1, 0.0 );
cout<<score<<endl;
返回值为-1。#IND。除此之外,正值是正常的,如1.34543。
为什么会发生这种情况?怎么解呢?
正如Frederic所说,这是由windows上使用visual studio构建的应用程序格式化'Not a Number'的结果。John D Cook有一个很好的参考:
Windows显示NaN为-1。#印第安纳州("IND"for "indeterminate"),而Linux显示nan。
…
简而言之,如果你得到1。#INF或INF,查找溢出或除零。如果你得到1。#IND或nan,查找非法操作
如果对字符串进行格式化,请注意截断;当我自己处理这些类型的错误时,我遇到了相关的问题
std::cout << (0/0.f);
// Output: -1.#IND
南。
根据我的经验,-1.#IND
来自虚数。因此,执行cout << sqrt(-1.);
应该输出-1.#IND
相关文章:
- 特征::矩阵<双精度,1,3> 结构类型函数中的返回类型函数
- C 字符串返回字符串的整数/双精度/长整型值
- 如何使双精度值的 C++ 和 C# 中的结果相同
- 如何防止双精度值到整数的隐式转换
- 将双精度变量设置为另一个变量的值
- 如何在 C++ 中将双精度数组中的值"force convert"到字符串输出中?
- 我想读取文本文件中的所有内容(但文本文件中只有一个双精度值),转换为双精度值并返回值
- 如何在 Linux asm 中正确返回双精度值
- 视觉对象 返回 C++ 中的双精度值
- 对应该返回的双精度变量进行舍入,而不是打印
- 在C++中,将浮点值转换为双精度并返回浮点值会得到相同的值吗
- C++试图返回一个双精度数组的字符串(有点)
- 对于一些非常大的双精度值,abs()返回一个负值
- QDdoubleSpinBox value()返回错误的双精度值
- 返回c++双精度给Python
- 存储在char数组中的双精度数据返回浮点值
- 为什么这些双精度的返回值是-1
- 当我从函数返回一个双精度值时,它变成了一个整数
- NaN或false作为双精度返回值
- 如何在c++中从pthread返回双精度值