C++string和数值类型的转化

本文讲解string类型和其他数据类型的转化,以int类型为例。

有时候,string对象与数值之间需要相互转换,下面这个例子详细说明了如何完成这项工作。

#include <iostream>
#include <string>
#include <sstream>
using namespace std;

//C++方法:将数值转换为string
string convertToString(int x)
{
    ostringstream o;           //创建格式化输出流
    if(o<<x)                   //把值传递到流中
        return o.str();
    return "convert error";    //如果发生错误
}

//C++方法:将string转化为数值
int convertFromString(const string &s)
{
    istringstream i(s);
    int x;
    if(i>>x)
        return x;
    return 0;                    //如果发生错误
}
int main()
{
    //将int转化为string的第一种方法:C方法
    char b[10];
    string a;
    sprintf(b,"%d",1975);
    a=b;
    cout<<a<<endl;

    //将int转化为string的第二种方法:C++方法
    string cc=convertToString(1976);
    cout<<cc<<endl;

    //将string转化为int的方法:C++方法
    string dd="2018";
    int p=convertFromString(dd);
    cout<<p<<endl;

    return 0;
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值