或者我需要使用哪種類型? 我有串,我嘗試將其轉換爲雙C++,如何從字符串中獲得正確的double值?
NFR_File.ReadString(sVal); // sVal = " 0,00003"
dbl = _wtof(sVal);
,並得到:
3.0000000000000001e-05
我需要0,00003,因爲那時我應該把它寫入到文件「0,00003 「但不像3e-05。
如果大於0,0009的數字一切正常。
顯示:
sOutput.Format(_T("%9g"),dbl);
NFP1_File.WriteString(sOutput);
我需要它沒有尾隨零,並且還保留9個數字(含空格)
該值是正確的,它只是一個關於你如何呈現*的問題,以及如何顯示*值。 *你如何顯示數值? –
其實你已經從字符串中獲得了正確的double值。 –
使用您使用的格式字符串,結果是正確的。 [在這裏閱讀有關格式字符串的更多信息](https://msdn.microsoft.com/en-us/library/56e442dc.aspx)。 –