C++--string类型转为int、double、float(函数模板实现)

测试代码

#include<string> 
#include<iostream> 
#include<sstream>
using namespace std; 
 
//数据类型转换模板函数 
template <class Type>    
Type stringToNum(const string str)   
{        
	istringstream iss(str);       
	Type num;       
	iss >> num;       
	return num;       
}  
 
int main() 
{  
	string a="3.2";
	string b="4.33";
	string c="5";
	double d0 = stringToNum<double>(a);
	float  d1 = stringToNum<float>(b);
	int    d2 = stringToNum<int>(c);
	cout<<"string转换为double:"<<d0<<endl;
	cout<<"string转换为float:"<<d1<<endl;
	cout<<"string转换为int:"<<d2<<endl;
	return 0; 
}    

测试结果

备注:对于数据精度要求高的话,可以不用cout输出,而是利用printf(c语言中的输出函数)
在这里插入图片描述

发布了218 篇原创文章 · 获赞 523 · 访问量 13万+

猜你喜欢

转载自blog.csdn.net/weixin_44225182/article/details/105367300