EVC下CString和TCHAR*的转换

在EVC下写程序,经常会遇到CString和TCHAR之间相互转换的问题。

CString->TCHAR*的转化可以用函数GetBuff()

函数原型为:LPTSTR GetBuffer( int nMinBufLength );
CString str("CString");
 TCHAR* szMsg = new TCHAR[100];
 //其参数为CString字符串的长度
 szMsg = str.GetBuffer(str.GetLength());
 str.ReleaseBuffer();
 delete []szMsg;
 szMsg = NULL;

TCHAR*->CString的转化

TCHAR szTchar[18] = L"TCHAR";  
 CString  str;  
 str.Format(_T("%s"),szTchar);


在EVC中,字符串的一些函数也都发生了变化,例如字符串拷贝,比较和连接变成了wcscpy 、acscmp 和wcscat。

还有一点要注意:在EVC下编程很容易发生内存泄漏。这一点在VC中体现的不是很明显,但是在EVC中特别明显,有一个new或malloc来申请内存,一定要有相应的delete或free来释放内存,否则很容易发生死机。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值