如下:
#include
<
stdio.h
>
#include
<
stdlib.h
>

#include
<
iostream
>
using namespace std;

void
main()
...
{
//int和char*互转:
//int型转char*型,保持int数值显示等于结果字符串,如13转成"13"
int _int=123;
char _char[10];
itoa(_int,_char,10);
printf("%s ",_char);
//itoa()函数有3个参数:第一个参数是要转换的数字,第二个参数是目标字符串,
//第三个参数是转移数字时所用 的基数。
//char*型转int型:
int _int2=atoi(_char);
printf("%d ",_int2);
//如果使用int _int2=(int)_char,则是_char的地址变成int
//而如果使用int _int2=(int)(_char),则是这句话是把_char[0]变成asc码的int

//char*和string互转:
//char*转string:
string s1=(string)_char;
string s2=_char;
//这两种方法都是可以的
//string转char*,两个方法
const char* _char2=s1.c_str();
printf("%s ",_char2);
const char* _char3=s1.data();
printf("%s ",_char3);
//string和int互转:
//string转int,没有直接的好方法,这里给两个方便的,其实就是先转成char*,再转成int
int _int4=atoi(s1.data());
int _int5=atoi(s2.c_str());
printf("%d ",_int4);
printf("%d ",_int5);
//int转string,也同理,就不写了
}
本文详细介绍了C++中不同类型间的转换方法,包括int与char*、char*与string以及string与int之间的相互转换,并提供了具体的代码示例。
172万+

被折叠的 条评论
为什么被折叠?



