int和string的相互装换 (c++)


int转换为string

  • 第一种方法

    to_string函数,这是c++11新增的函数
string to_string (int val);
string to_string (long val);
string to_string (long long val);
string to_string (unsigned val);
string to_string (unsigned long val);
string to_string (unsigned long long val);
string to_string (float val);
string to_string (double val);
string to_string (long double val)

这个函数还是非常的方便的

int a = 0;
cout << to_string(a) + "这是个字符串"<< endl; 输出时会输出 "0这是个字符串"
  • 第二种方法

    借助字符串流,标准库定义了三种类型字符串流:istringstream,ostringstream,stringstream

    看名字就知道这几种类型和iostream中的几个非常类似,分别可以读、写以及读和写string类型,它们也确实是从iostream类型派生而来的。

    要使用它们需要包含sstream头文件。
include<sstream>

int a = 0;
string b;
ostringstream os;//定义一个string输出流
os << a;//将a输出到string流中
b = a.str();

注意ostringstream 流只能单次使用,即一次只能将一个int变量输入转为string变量输出,不可以重复使用

string型转int型

  • 第一种方法

    采用标准库中atoi函数,需要文件头 < stdlib.h>
string s = "888";
int a = atoi(s.c_str());

同样的,还有浮点型atof(),long long 型atoll()等等

  • 第二种方法

    C++11中的stoi
string s = "888";
int n = stoi(str);

同样的还有stol,stoll等等函数。

  • 第三种方法

    借助字符串流,这个可以int转string,可以string转int
include<sstream>

istringstream is("888"); //构造输入字符串流,流的内容初始化为“12”的字符串
int i;
is >> i; //从is流中读入一个int整数存入i中

和上面一样,注意ostringstream 流只能单次使用

最新文章

  1. Node.js:dgram模块实现UDP通信
  2. R语言数据处理利器——dplyr简介
  3. SELinux关闭和开启
  4. hdu Hike on a Graph
  5. textkit 研究,mark一下,一个不错的开源库:MLLabel(但是没有文档)
  6. 【Qt】Qt Creator快捷键【转】
  7. *[codility]Fish
  8. [Poetize II]太鼓达人
  9. HDU4436---str2int 后缀树组(12年天津区域赛)
  10. Struts2中的ActionContext
  11. arm:c语言和汇编混合编程
  12. Gradle学习系列之一——Gradle快速入门(转)
  13. PLSQL_监控有些SQL的执行次数和频率
  14. apache-jmeter 使用记录
  15. PhotoShop 常用快捷键
  16. Java数据类型、赋值、类型转换、==运算
  17. Tomcat 部署一工程时Deploy Location 为什么 是 INVALID
  18. git修改文件权限方式
  19. BI实战派:医疗BI项目落地方案
  20. 使用sass与compass合并雪碧图(二)

热门文章

  1. CentOS8-网卡配置
  2. jar 命令使用
  3. 深入Dapper.NET源码 (文长)
  4. Ionic2优于Ionic1的6个理由
  5. 做高逼格程序员之说走就走的「Windows」
  6. 详解计算机中的Byte、bit、字、字长、字节
  7. vue3.0 vue.config.js 配置实战
  8. Java工程师学习指南(中级篇)
  9. java23种设计模式(一)工厂方法模式
  10. App元素定位