CString,string,char*, int之间的常用转换

1 string转CString

CString.format("%s",string.c_str());

2 CString 转 string

UNICODE编码:
CString inStr;
setlocale(LC_ALL,"chs");
char* p = new char[...];//足够长
wcstombs( p , str , str.GetLength() );
string outStr = p;
ASCII编码:
CString inStr;
string outStr = (const char*)str;

3 Char* 转CString

CSstring.format("%s",char*);

4 CString互转char*   

CString strtest;  
char * charpoint; 
charpoint=strtest.GetBuffer(strtest.GetLength()); 

5 char *转 string 

string s(char*);

6 string 转 char * 

char *p = string.c_str();  
《C++标准函数库》中说的  
有三个函数可以将字符串的内容转换为字符数组和C—string 
1.data(),返回没有”/0“的字符串数组 
2,c_str(),返回有”/0“的字符串数组 
3,copy() 


7 CString转int 

CString ss="1212.12";  
int temp=atoi(ss); 
//CString aaa = "16" ; 
//int int_chage = atoi((lpcstr)aaa) ; 

8 int转CString

CString aa;  
aa.Format("%d",temp); 
Format函数的功能很强,好好研究一下。

9 int 转 string

int a = 2;
char p[NUM];//NUM够用
string desStr = itoa(a,p,10)//第三个参数很有意思,这里的10代表的是10进制,假如你的例子中 a =10 ,itoa(a,p,16)的话,desStr = "a";

10 string 转 int

string srcStr= "222";
int a = atoi(srcStr);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值