c++中 string转float怎么写
时间: 2023-04-10 07:05:19 浏览: 120
你可以使用 atof() 函数将字符串转换为浮点数。例如:
```
char str[] = "3.14";
float f = atof(str);
```
这将把字符串 "3.14" 转换为浮点数 3.14。
相关问题
c++ string转float
在C++中,将字符串转换为浮点数可以使用以下方法:
1. 使用标准库函数stof():
```cpp
#include <string>
#include <iostream>
int main() {
std::string str = "3.14";
float f = std::stof(str);
std::cout << f << std::endl;
return 0;
}
```
这里使用了std::stof()函数将字符串转换为浮点数。注意,如果字符串无法转换为有效的浮点数,将会抛出std::invalid_argument异常。
2. 使用C函数sscanf():
```cpp
#include <cstdio>
#include <iostream>
int main() {
std::string str = "3.14";
float f;
sscanf(str.c_str(), "%f", &f);
std::cout << f << std::endl;
return 0;
}
```
这里使用了sscanf()函数,通过指定格式"%f"将字符串转换为浮点数。需要注意的是,sscanf()函数返回成功匹配的参数个数,如果返回值不等于1,则表示转换失败。
3. 使用C++11的std::stod()函数:
```cpp
#include <string>
#include <iostream>
int main() {
std::string str = "3.14";
double d = std::stod(str);
std::cout << d << std::endl;
return 0;
}
```
这里使用了std::stod()函数将字符串转换为双精度浮点数。与std::stof()类似,如果字符串无法转换为有效的浮点数,将会抛出std::invalid_argument异常。
c++string转float
你可以使用`std::stof`函数将C风格的字符串转换为浮点数。它是C++标准库中的函数,可以将字符串转换为float类型。以下是一个示例:
```cpp
#include <iostream>
#include <string>
int main() {
const char* str = "3.14";
float result = std::stof(str);
std::cout << "Float value: " << result << std::endl;
return 0;
}
```
在上面的示例中,我们将字符串"3.14"转换为浮点数,并将结果存储在`result`变量中。然后,我们通过`std::cout`将结果打印到标准输出。输出将显示为`3.14`。
阅读全文