难怪.net这么重视类型转换,做的那么好
vc里类型转换根本不知道用什么啊!!!LPCWSTR 类型的字符串怎么转换成string?
或转成char *也行
vc里类型转换根本不知道用什么啊!!!LPCWSTR 类型的字符串怎么转换成string?
或转成char *也行
解决方案 »
- toolbarctrl问题
- 开了个驱动群,有兴趣的加
- 使用SetPower将机器进入S3状态后用WindowProc返回后CRT不显示
- SOCKET对象创建成UDP方式后,能不能再改变其创建时的端口号来接受另一端口数据? 急!
- 求助:谁能提供Install Shield 6.3软件或者下载地址?急啊……
- 求助 ~
- 请问:在全局函数中怎么得到视图类的指针呢??
- 求救!!!
- 在Console中调用COM和在单文档中调用COM有什么不同?
- 请教,我的vc6.0中Debug和Release运行结果不一样,有几种可能导致这种情况,如何解决?
- winxp下的原始套接字recv不返回问题
- switch语句的条件数只能是数值型的吗?不可以是CString吗?
CString str(lpsz);
str.Format();
format()用法和printf一样
LPCTSTR 操作符(或者更明确地说就是 TCHAR * 操作符)在 CString 类中被重载了,该操作符的定义是返回缓冲区的地址,因此,如果你需要一个指向 CString 的 字符串指针的话,可以这样做:
CString s("GrayCat");
LPCTSTR p = s;
////////////////////////
如果你要格式化字符串怎么办呢?
CString graycat("GrayCat");
CString s;
s.Format("Mew! I love %s", graycat);CString转化成char* 之二:使用 CString 对象的 GetBuffer 方法;
如果你需要修改 CString 中的内容,它有一个特殊的方法可以使用,那就是 GetBuffer,它的作用是返回一个可写的缓冲指针。 如果你只是打算修改字符或者截短字符串,你完全可以这样做:
CString s(_T("File.ext"));
LPTSTR p = s.GetBuffer();
LPTSTR dot = strchr(p, ''.''); // OK, should have used s.Find...
if(p != NULL)
*p = _T(''\0'');
s.ReleaseBuffer();详见VC知识库文章:CString 操作指南
系统提供了丰富的函数,作为类的数据类型通常有操作符,可能令人疑惑的究竟该使用何种方式转换:(
三楼的说得不错,VC知识库有这样一篇文章,你仔细看看,相信你的问题可以解决了.
位置:http://www.vckbase.com/document/viewdoc/?id=1094
可以结贴了,只是现在没法进入管理。。