在C++中,使用stod函數(shù)將字符串轉(zhuǎn)換為雙精度浮點數(shù)時,可以通過設(shè)置std::setprecision函數(shù)來控制轉(zhuǎn)換后雙精度浮點數(shù)的精度。例如:
#include <iostream>
#include <string>
#include <iomanip>
int main() {
std::string str = "3.14159265358979323846";
double num = std::stod(str);
std::cout << std::fixed << std::setprecision(10) << num << std::endl;
return 0;
}
在上面的例子中,通過調(diào)用std::setprecision(10)設(shè)置了轉(zhuǎn)換后雙精度浮點數(shù)的精度為10。輸出結(jié)果為3.1415926536。
需要注意的是,設(shè)置精度只是控制輸出時的小數(shù)位數(shù),并不會改變雙精度浮點數(shù)本身的精度。