一个关于 CString 转换为 char * ,的问题?? 各位高手,如何将一个 CString 型的对象转换为 char * .在线等候,急!!!!!!!!!!!!!!急!!!!!!!!!!!!!!急!!!!!!!!!!!!!!急!!!!!!!!!!!!!!急!!!!!!!!!!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用CString类的GetBuffer函数即可得到CString对象的字符串缓冲区的地址。 char * trn;strcpy(trn,(char *)LPCSTR(str));我刚搞过,接着就有人问。不过是别人的。我转贴。 您可以(1)用CString的方法GetBuffer()来取得. 注意:使用过后,应该用ReleaseBuffer释放.(2)您可以用类型转换 CString str("Hello"); char* s=(char*)str;(3)在要求使用char*的地方,一般可以直接使用CString CString str;char str2[10];int i;for(i=0;i<str.GetLength();i++){ str2[i]=str[i];}str2[i]='\0' 如果只是用于读取,可以这么做#include <atlconv.h>CString str;char* pszString = T2A(str);//或str.operator LPCTSTR()如果用于写入,那就先GetBuffer,再做类型转换 strcpy(trn,(char *)LPCSTR(str));strcpy的第二个参数本来只要求const char *,干嘛要强制转换成char *CString str("Hello"); char* s=(char*)str;这样也行,你看看CString的源码CString str;如果是要用const char *,可以直接用str,或是LPCSTR(str)如果要用char *,就用str.GetBuffer(n);完了要str.ReleaseBuffer(); char* s=(char*)(LPCSTR)str;这样更好 使用运算符重载LPCSTR是最方便的。 使用运算符重载LPCSTR是最方便的。我使用过,不太好用. 新手,请各位推荐几本书籍 hook小问题 WinDbg dump文件,不知道如何分析? 为什么multiplyDll.lib呢? 怎么做 帮我看看! _variant_t 类型的时间怎样转换为CTime类型的时间?急!在线等待!谢谢 如何将WAV文件中指定开始、结束时间段的声音数据截成单独的文件? ADO如何更新记录? 请问在dll如何可以做到:接收到前台点击页面的消息? 如何替换掉VC在分割条上的那个默认的光标 要在Dialog中加入自己的浮动工具条,该怎么做?
strcpy(trn,(char *)LPCSTR(str));
我刚搞过,接着就有人问。
不过是别人的。我转贴。
(1)用CString的方法GetBuffer()来取得.
注意:使用过后,应该用ReleaseBuffer释放.
(2)您可以用类型转换
CString str("Hello");
char* s=(char*)str;
(3)在要求使用char*的地方,一般可以直接使用CString
char str2[10];
int i;for(i=0;i<str.GetLength();i++)
{
str2[i]=str[i];
}
str2[i]='\0'
#include <atlconv.h>CString str;
char* pszString = T2A(str);//或str.operator LPCTSTR()如果用于写入,那就先GetBuffer,再做类型转换
strcpy的第二个参数本来只要求const char *,干嘛要强制转换成char *CString str("Hello");
char* s=(char*)str;
这样也行,你看看CString的源码CString str;
如果是要用const char *,可以直接用str,或是LPCSTR(str)
如果要用char *,就用str.GetBuffer(n);
完了要str.ReleaseBuffer();
我使用过,不太好用.