我有一個字符串,它看起來像這樣:格式字符串轉換成科學記數法
"0.4794255386042030002732879352156"
這大約是罪(0.5)。我想格式化字符串,以看起來更漂亮
"4.794255386042e-1"
我怎樣才能做到這一點?記住我正在處理字符串而不是數字(float,double)。此外,我需要輪流保持數字儘可能準確,我不能只是截斷。如果我需要轉換成不同的數據類型,我寧願長雙,因爲常規的雙不具有足夠的精度。在舍入之前我至少需要12位十進制數字。也許我可以做一個簡單的sprintf()轉換。
沒有,輸出0.4794255386042030002732879352156,這是不是他提出的要求。 – dcp 2009-12-29 19:40:24
不,它輸出4.794255e-01(默認精度爲6)。 'cout.precision(12)'將它設置爲十二。 – 2009-12-30 17:42:49