日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

【C/C++】运算结果出现1.#Q0问题分析

發(fā)布時間:2025/3/21 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【C/C++】运算结果出现1.#Q0问题分析 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

打印代碼結(jié)果時發(fā)現(xiàn)出現(xiàn)了1.#Q0,就在網(wǎng)上搜索,發(fā)現(xiàn)相關(guān)的中文資料介紹很少,在stackoverflow上找到了個提問(https://stackoverflow.com/questions/5939573/what-float-value-makes-sprintf-s-produce-1-qo),雖然不完全相同,但還是按照介紹逐步分析,排查其中的原因。

char dispParams[100]

sprintf_s(dispParams,"( %.3f)", dist);

putText(srcImg, dispParams, Point(60,60), 2, 1, CV_RGB(0,255,0),1);

首先,1.#Q0是對1.#QNAN00進行%.3f格式控制輸出的結(jié)果。Debug下向前排查,找到計算dist的語句:

dist= 0.3*expf (-x * x * rho);

發(fā)現(xiàn)x的值為-1.#IND000,導(dǎo)致計算得到的dist的值為1.#QNAN00-1.#IND000表示負無窮大的意思。

再繼續(xù)往前排查,查看x-1.#IND000值是如何出現(xiàn)的。

x = a + b * y;

發(fā)現(xiàn)計算x時,ab的值是-1.#IND000;而導(dǎo)致ab的值出現(xiàn)問題的原因是:在求解最小二乘擬合系數(shù)時,只有1個支撐點,但是卻需要求解2個系數(shù),計算過程中出現(xiàn)除數(shù)為0,導(dǎo)致求出的系數(shù)ab-1.#IND000

總結(jié)

以上是生活随笔為你收集整理的【C/C++】运算结果出现1.#Q0问题分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。