加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C++中string与int的相互转换实现代码

发布时间:2020-12-16 05:10:26 所属栏目:百科 来源:网络整理
导读:做ACM时,经常用到string和int的转换,下面的程序: 核心代码: #includeiostream#includestring#includesstreamusing namespace std;int main(){ /////////////////////////// string 转为 int string str="1234"; int n; istringstream iss;//istringstrea

做ACM时,经常用到string和int的转换,下面的程序:

核心代码:

#include<iostream>
#include<string>
#include<sstream>


using namespace std;

int main()
{
 /////////////////////////// string 转为 int
 string str="1234";
 int n;
 istringstream iss;//istringstream从string读入,和cin一样仅仅重载了>>,可以把string转为int
 iss.clear();//每次使用前先清空
 iss.str(str);
 iss>>n;//将输入流中的内容写入到int n,cout<<n<<endl;

 //////////////////////////////// int 转为 string

 n=111;
 ostringstream oss;//用于向string写入,和cout<<一样,仅仅重载了<<
 oss<<n;
 str=oss.str();
 cout<<str<<endl;


 ///////////////////////////////// string 转为 int
 str="22222";
 sscanf(str.c_str(),"%d",&n); //scanf前面加s用于把str输入到n中
 cout<<n<<endl;


 /////////////////////////////// int 转为 string


 int ss=1000;
 char temp[64];
 sprintf(temp,ss); //printf前面加s用于将ss按整数形式输出到数组temp中,不能直接给str.c_str();
 str=temp;//再把数组temp赋值给str;
 cout<<str<<endl;
 return 0;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读