在c++中使用std::istringsteam将字符串转换为浮点数
Converting a string to float using std::istringsteam in C++
我一直在尝试将一个简单的字符串转换为浮点数,但我没有运气。这是我目前得到的:
int main()
{
float value;
std::string stringNum = "0.5";
std::istringstream(stringNum) >> value;
return 0
}
但是我得到这个错误:
Error 2 error C2440: '<function-style-cast>' : cannot convert from 'std::string' to 'std::istringstream' c:usersadministratordesktopTestmain.cpp 12
谁能给我一些指导在这里如何只是简单地将字符串转换为浮点数?
谢谢
很可能你没有包括所有相关的标题:
#include <string>
#include <sstream>
下面是一个示例,显示了当包含适当的头文件时,代码将编译。
一般来说,你不应该依赖于间接地从另一个标准头文件中包含必要的标准头文件(当然,除非这种包含在标准本身中被记录)。
还要注意,您正在创建一个临时字符串流,它将在表达式 求值结束时被销毁。std::istringstream(stringNum) >> value
你可以这样创建一个流对象:
std::istringstream ss(stringNum);
ss >> value;
// Here you can use ss again...
相关文章:
- 如何将包含epoch时间的十六进制字符串转换为time_t
- 当字符串存储在变量中时,如何将字符串转换为wchar_t
- 如何将这个std::字符串转换为std::基本字符串
- 如何正确将字符串转换为标准::时间::system_clock::time_point?
- 如何在C++中将十六进制字符串转换为文本数据
- 需要帮助在 c++ 中将字符串转换为字符 ----错误 "const char *" 类型的值不能用于初始化 "char" 类型的实体
- 如何从字符串转换为双精度*
- C++:如何将 unix 时间的字符串转换为 *tm?(使用时间错误:"cannot convert 'String' to 'tm*' ")
- 如何在C++中将 Python 字符串转换为其转义版本?
- 如何在 C++11 中将标准::字符串转换为标准::u32字符串?
- 如何将整数字符串转换为整数的二维向量?
- 使用 "stringstream " 将字符串转换为整数
- 将字符串转换为浮点数或整数,而无需使用内置函数(如 atoi 或 atof)
- 将文件复制到自定义位置,存在字符串转换问题
- 将ANSI C字符串转换为UNICODE
- 如何将节点 V8 字符串转换为 C++ 字符串
- 在C++中将字符串转换为双精度,而无需科学记数法
- 使用从文件(stod、strtod、atof)中提取的数据C++从字符串转换为双精度.csv
- 如何在C++中将字符串转换为双精度?
- 将字符串转换为无符号字符数组/字节数组