char * 转LPCTSTR若干方法
来源:互联网 发布:大数据分析系统源代码 编辑:程序博客网 时间:2024/05/18 02:36
如何将char* 转换为LPCTSTR??
rainForestBache (百奇) 2004-10-19 20:17:48 在 VC/MFC / 基础类 提问
请多多指教
问题点数:20、回复次数:10
1楼 stephen_young () 回复于 2004-10-19 20:33:45 得分 5
实际上将char*转换成CString对象就成了.
char* p = "aaaa";
CString s = p;//或
CString m(p);
LPCTSTR lp = (LPCTSTR)s;// LPCTSTR lp = (LPCTSTR)m;
这两句都行。
Top
2楼 rainForestBache (百奇) 回复于 2004-10-19 20:34:34 得分 0
除了用CString 还有什么办法么?
Top
3楼 fanqing (火影忍者+28%(准备学习进程/线程)) 回复于 2004-10-19 20:34:46 得分 5
CString dd="fanqing";
dd.getbuffet(10);
Top
4楼 BestBear (天外飞熊) 回复于 2004-10-19 20:37:28 得分 5
1> char*转换成CString
若将char*转换成CString,除了直接赋值外,还可使用CString::Format进行。例如:
char chArray[] = "This is a test";
char * p = "This is a test";
或
LPSTR p = "This is a test";
或在已定义Unicode应的用程序中
TCHAR * p = _T("This is a test");
或
LPTSTR p = _T("This is a test");
CString theString = chArray;
theString.Format(_T("%s"), chArray);
theString = p;
2>CString to LPCTSTR
LPCTSTR lpText;
CString str;
str.Format("%d",a);
lpText = (LPCTSTR)str;
Top
5楼 rainForestBache (百奇) 回复于 2004-10-19 20:41:38 得分 0
非常感谢以上各位stephen_young() , fanqing(宇繁),BestBear(天外飞熊)
但是小弟不想使用CString类库,还有其他的办法么?
Top
6楼 rainForestBache (百奇) 回复于 2004-10-19 20:49:41 得分 0
我想开发一个WINCE的网络程序,使用API和socket2函数,
char hostname[100];
int len;
len = 100;
memset(&hostname[0],'\0',100);
if(gethostname(&hostname[0],len)==0){
SetWindowText(GetDlgItem(g_hwndMyDialog,IDC_EDIT1),&(hostname[0]));
}
else{
SetWindowText(GetDlgItem(g_hwndMyDialog,IDC_EDIT1),_T("error"));
break;
}
以上程序由于gethostname必须使用char* ,而SetWindowsText又是使用LPCTSTR,因此必须转换。
Top
7楼 huwei001982 (编程浪子) 回复于 2004-10-19 20:54:52 得分 5
啊
char *p = "dfkdslf"
LPCTSTR d = (LPCTSTR)p;
不行吗
Top
8楼 huwei001982 (编程浪子) 回复于 2004-10-19 20:55:55 得分 0
更正楼上, char *p = "dfkdslf"; //掉了一个分号 ;
Top
9楼 rainForestBache (百奇) 回复于 2004-10-19 21:09:32 得分 0
huwei001982(编程浪子)
char *p = "dfkdslf"
LPCTSTR d = (LPCTSTR)p;
这样子不行,LPCTSTR实际上为unsigned short *,以2byte为单位,而char *以1个byte 为单位。
Top
10楼 rainForestBache (百奇) 回复于 2004-10-19 21:36:08 得分 0
谢谢以上各位,问题解决了,最后只能用最笨的办法。
BOOL LPCSTR2LPTSTR(LPCSTR str,LPTSTR wstr)
{
int l,i;
l=strlen(str);
for (i=0;i<=l;i++)wstr[i]=str[i];
return TRUE;
};
如果各位有更好的办法,请发消息给我。
再次谢谢各位。
- char * 转LPCTSTR若干方法
- LPCTSTR转const char
- 【转】char*与LPCTSTR,LPTSTR的转换
- unicode下 LPCTSTR 转换为const char*的方法
- wchar_t*转LPCTSTR的方法
- LPSTR,LPCTSTR,CString,Char *
- 关于'const char[]' TO 'LPCTSTR'
- char*怎么转换成LPCTSTR
- LPCTSTR LPCSTR _T() CString char*
- LPCTSTR转换为const char *
- char*与LPCTSTR相互转化
- Unicode char*转化为LPCTSTR
- CString, LPCTSTR,string,char[],char*转换(-)
- vs2010 LPCTSTR 到 const char* 的转换 inet_addr LPCTSTR
- CString、LPCTSTR、LPTSTR、TCHAR、WCHAR、string、wchar_t、char解析 (转)
- [Error]“CWnd::MessageBoxW”: 不能将参数 1 从“char [100]”转换为“LPCTSTR[转]
- 分解 LPSTR,LPCTSTR,CString,Char *)
- Cannot convert from 'const char [..]' to 'LPCTSTR'
- OnClosed 和 OnDestroy
- KVM各种管理工具
- 败者树 和 胜者树---数组实现
- C语言获取系统时间的几种方式 !
- JDK配置以及maven的安装(win7)
- char * 转LPCTSTR若干方法
- 到了姥姥家我在小点点c++
- Windows8和Windows Phone应用开发主题编码汇总
- DFS and BFS
- 2012-04-10 10:30 ubuntu11.10下个人总结的安装及配置jdkmyeclipstomcatmysql
- iOS文件存磁盘的设想
- 异常处理与MiniDump详解(4) MiniDump
- UE 汇编语法高亮文件新版 与 UE 常用技巧
- 一、初识PyObject