C++里的int 和string类型相互转换
C++不像Java和C#一样在进行数据类型转换时直接调用一些类方法就可以了,使用起来很简单。
一个很简单的例子就是string str=“D:\\”+1+“.txt”;这在Java或者C#里面是可以自动拆箱和包
箱就可以了,但是在C++里面是不可以的。当然这只有一个文件还好,但是当我们要使用for循环去遍
厉一个文件夹下的1,2,3...命名的文件时或许就有点麻烦了。由于我自己碰到过这种情况,所以这里写
写几种方法。或许不是最好的方法,但是权当练练笔了,如果你发现错误或者有更好的方法欢迎指教。
方法一:这个方法比较笨就是自己写个函数如string getString(int value){},实现很简单就不写了。
通过一个个判断然后进行字符连接,最后把字符返回即可。类似的int getInt(string str){},可以把string
换为int。
方法二:就是使用一些C++的文件流或者C的函数:
如下
/*
C++ String 和int的相互转换
*/
#include<iostream>
#include<sstream>
using namespace std;
int main(){
/*
使用C标准库里面的atoi
*/
//string to int
string str="123";
int value=std::atoi(str.c_str());
cout<<"string to int value:"<<value<<endl;
/*
C++标准库里面,使用stringstream:
(stringstream 可以用于各种数据类型之间的转换)
*/
std::stringstream sstr;
//string to int
sstr<<"520";
int value2;
sstr>>value2;
cout<<"string to int value2: "<<value2<<endl;
//int to string
int value3=125;
std::stringstream sstr2;
sstr2<<value3;
string str2;
sstr2>>str2;
cout<<"int to string str2:"<<str2<<endl;
string filepath="D:\\"+str2+".txt";
cout<<filepath<<endl;
/*
to_string();
*/
int value4=33;
string str3=to_string(value4);
cout<<"int to string str3:"<<str3<<endl;
}
下面是结果截图:

C++里的int 和string类型相互转换的更多相关文章
- Java之byte、char和String类型相互转换
package basictype; /** * byte.char和String类型相互转换 */ public class CHJavaType { public static void main ...
- java中Object转换成int或String类型方法
转载: http://www.cnblogs.com/1020182600HENG/p/6137206.html Object obj = getObject(); if(obj instanceof ...
- JAVA中int与String类型的相互转换
Java的int和String类型间互相转换,小功能但是经常用到,下面是几种实现的方法: 字符串类型String转换成整数int 1. int i = Integer.parseInt([String ...
- List<Integer>里有可能存String类型元素吗?
这其实是我遇到的一个线上bug,在这里分享给大家. 如果是用反射,那就很简单了,毕竟泛型只是在编译期进行约束,对运行期是无能为力的. 想想看,如果不使用反射,有没有办法做到呢? 问题起因 在我们公司的 ...
- 转载 int和string 类型的互换
https://blog.csdn.net/u012421436/article/details/51386690 不论是在什么语言下编程(除C,因为C是没有string类型的),int与string ...
- 【Java】 int与String类型间的相互转化
public class Test { public static void main(String[] args) { /* * int类型转String类型 */ int n1 = 9; //1. ...
- JAVA中int转String类型有三种方法
String.valueOf(i) Integer.toString(i) i+"" i+""也就是一个int型的常量.+上个空的字符串,这里牵涉到了strin ...
- c++ int转string类型
std::string int2string(int input){ std::ostringstream ss; //clear string //ss.str(""); //s ...
- int与string类型的转换
在SQL语句中 在JS中, (1) var x=100 a = x.toString() (2) var x=100; a = x +"" ...
随机推荐
- IOS开发之 ---- 苹果系统代码汉字转拼音
NSString *hanziText = @"我是中国人"; if ([hanziText length]) { NSMutableString *ms = [[ ...
- jquery 延迟加载代码
<!--引入以下两个js文件--> <script type="text/javascript" src="./js/jquery.min.js&quo ...
- Jfinal极速开发微信系列教程(一)--------------Jfinal_weixin demo的使用分析
概述: Jfinal_weixin已经出了有好一段时间了!一直在关注当中......最近工作上有需要到这个东西,所以,话了两个小时来看看这个东西,看完demo以后,豁然开朗,原理微信和一般的web项目 ...
- 文件TEXTBOX
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- CMake 命令行设定编译环境
笔者电脑安装了两个版本的VS(VS2012 和 VS2010),在使用CMake编译的时候,如果只在对应目录的命令行输入 "cmake .." 则系统会自动选择使用新版本(VS2 ...
- android学习日记07--Canvas画布
1.Canvas Canvas类主要实现了屏幕的绘制过程,其中包含了很多实用的方法,比如绘制一条路径.区域.贴图.画点.画线.渲染文本,当然Android官网提示大家很多方法有不同的重载版本,参数更灵 ...
- XAMPP环境下用phpStorm+XDebug进行断点调试的配置
具体过程: 服务器端(本地调试的情况下就是在本机)安装好XAMPP,停止apache服务(注意,如果直接退出XAMPP,是不会停止apache的) 在安装目录下找到php.ini,类似于D:\xamp ...
- PAT 1010
1010. Radix (25) Given a pair of positive integers, for example, 6 and 110, can this equation 6 = 11 ...
- android离线安装adt
打开Eclipse, 在菜单栏上选择help->Install New SoftWare 出现如下界面: 点击 Add按钮,出现如下界面 在Name这而随意输入一个名字:ADT15:点击打开Ar ...
- linux vi 撤销重做于前进后退--转
在vi中按u可以撤销一次操作 u 撤销上一步的操作Ctrl+r 恢复上一步被撤销的操作 注意:如果你输入“u”两次,你的文本恢复原样,那应该是你的Vim被配置在Vi兼容模式了.重做如果你撤销得太多 ...