std::stod
是 C++ 标准库中的一个函数,它用于将字符串转换为 double
类型的浮点数
std::stod
函数的原型如下:
double stod(const char* str, size_t* idx);
其中,str
是一个指向以空字符结尾的字符串的指针,idx
是一个可选参数,用于存储转换后小数点后的位数。如果提供了 idx
参数,std::stod
函数会更新该参数的值以反映小数点后的位数。
下面是一个简单的示例:
#include <iostream>
#include <string>
#include <cstdlib> // 包含 std::stod
int main() {
const char* str = "3.14159";
double d;
size_t idx;
d = std::stod(str, &idx);
std::cout << "Converted double: "<< d << std::endl;
std::cout << "Decimal part length: " << idx << std::endl;
return 0;
}
输出:
Converted double: 3.14159
Decimal part length: 5
在这个示例中,std::stod
将字符串 “3.14159” 转换为浮点数 3.14159,并将小数点后的位数(5)存储在 idx
参数中。