在解決一個特定網站上的一個問題,我寫了這個代碼:關於C型雙查詢++
#include <iostream>
int main()
{
long l{12345678912345};
char ch{'a'};
double d{14049.30493};
std::cout << l <<'\n' << ch <<'\n' << d <<'\n';
return 0;
}
出人意料的是,雙的產量14049.3,不完整號碼。如果我明確提到
std::cout.precision(10);
然後它打印完整的數字。我究竟做錯了什麼?
閱讀http://floating-point-gui.de/ –
如果'std :: court.precision(10)'「修復」了這個問題,它不應該相當自我解釋問題是什麼嗎? – George
@DreamsOfElectricSheep不,對我來說。 C++中使用double的精度是否有一個通用規則?我找不到。 – anotherone