码迷,mamicode.com
首页 > 其他好文 > 详细

CString 转换成 char *

时间:2014-12-22 16:19:10      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:c++   cstring   char   

写程序时 要实现CString转换成 char *,晚上找了一些方法,可总是会有错误,不是我想要的。

比如下面这两种转换格式:

1.

 <span style="white-space:pre">	</span>CString strItem("1238djj");
	char *chItem1;
	chItem1 = (LPSTR)(LPCTSTR)strItem1;


2.

 <span style="white-space:pre">	</span> CString strItem("1238djj");
	 char chItem1[100];
	strncpy(chItem1,(LPSTR)(LPCTSTR)strItem1,sizeof(chItem1));

其中的 chItem1的值 只是字符串strItem1的首字母。


正确的方法:

<span style="white-space:pre">	</span>wchar_t *chItem1,*chItem2;
	chItem1=(LPWSTR)strItem1.GetBuffer(strItem1.GetLength());
	chItem2=(LPWSTR)strItem2.GetBuffer(strItem2.GetLength());

这样才可以得到字符串的全部字符。

//wchar_t *转换成int
int intItem1 = _ttol(chItem1);


CString 转换成 char *

标签:c++   cstring   char   

原文地址:http://blog.csdn.net/u013147600/article/details/42080055

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!