Romi-知行合一

轻轻的风轻轻的梦,轻轻的晨晨昏昏, 淡淡的云淡淡的泪,淡淡的年年岁岁。
  博客园  :: 首页  :: 新随笔  :: 订阅 订阅  :: 管理

CString和char*相互转换

Posted on 2012-05-07 21:05  romi  阅读(783)  评论(0编辑  收藏  举报

以下是在VC6.0下,高版本CString定义的字符串要使用_T

1.CString转char*

方法1:直接转换

CString  str="卖火柴的小女孩";

char* ch=(LPTSTR)(LPCTSTR)(str);

方法2:精确的转换(防止字符丢失)

ch=str.GetBuffer(str.GetLength());

2.char*转CString

char ch[50]="卖火柴的小女孩";

CString str=(CString)ch;

3.将多个字符串转为char*

CString可以直接相加,相加之后还是CString,然后转为char*

4.int转char*

方法1:itoa(不是标准库函数,但是大部分编译器都支持)

itoa用法:http://www.cplusplus.com/reference/clibrary/cstdlib/itoa/

int a=100;

char ch[10];

itoa(a,ch,10); //第三个参数为进制

方法2:sprintf(这个C/C++编译器都支持)

sprintf用法:http://www.cplusplus.com/reference/clibrary/cstdio/sprintf/

sprintf(ch,"%d",a);