1、int型与string型的互相转换
int型转string型
void int2str(const int &int_temp,string &string_temp) { stringstream stream; stream<<int_temp; string_temp=stream.str(); //此处也可以用 stream>>string_temp }
string型转int型
void str2int(int &int_temp,const string &string_temp) { stringstream stream(string_temp); stream>>int_temp; }
在C++中更推荐使用流对象来实现类型转换,以上两个函数在使用时需要包含头文件 #include <sstream>,不仅如此stringstream可以实现任意的格式的转换如下所示:
template <class output_type,class input_type> output_type Convert(const input_type &input) { stringstream ss; ss<<input; output_type result; ss>>result; return result; }
stringstream还可以取代sprintf,功能非常的强大!
#include <stdio.h> #include <sstream> int main(){ char *gcc= "gcc"; int no = 1; std::stringstream stream; stream << gcc; stream << " is No "; stream << no; printf("%s\n", stream.str().c_str()); //重复使用前必须先重置一下,clear方法不如这个,但是值得注意的是使用stream的时候只是用str("")不能得到满意的答案我们需要我们需要将stringstream的所有的状态重置clear() stream.str(""); stream << "blog"; stream << ' '; stream << "is nice"; printf("%s\n", stream.str().c_str()); return 0; }
原文链接: https://www.cnblogs.com/yskn/p/9669422.html
欢迎关注
微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍
原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/281409
非原创文章文中已经注明原地址,如有侵权,联系删除
关注公众号【高性能架构探索】,第一时间获取最新文章
转载文章受原作者版权保护。转载请注明原作者出处!