C++中string类型与int、float互相转换运用模板函数实现,代码如下:
/*
filename : test.cpp
author : lijd
data : 2019-09-06
*/
#include <iostream>
#include <string>
#include <sstream>
using namespace std;
template <typename T>
T fromString(const string& s)
{
std::istringstream is(s);
T t;
is>>t;
return t;
}
template <typename T>
string toString(const T& t)
{
std::ostringstream s;
s<<t;
return s.str();
}
int main()
{
int a = 512;
float b = 123.456;
string c = "1234.56";
string d = "1234";
string a1 = toString(a);
string b1 = toString(b);
float c1 = fromString<float>(c);
int d1 = fromString<int>(d);
cout<<a1<<endl;
cout<<b1<<endl;
cout<<c1<<endl;
cout<<d1<<endl;
return 0;
}
运行结果:

本文介绍了一种在C++中实现string类型与int、float等数值类型互相转换的方法,通过使用模板函数和标准库中的istringstream和ostringstream。代码示例展示了如何将整数和浮点数转换为字符串,以及如何从字符串中读取数值。
725

被折叠的 条评论
为什么被折叠?



