VC++语法理解
来源:互联网 发布:java log4j 用法 编辑:程序博客网 时间:2024/05/01 01:39
1、TCHAR、Char和CString之间的转换:
TCHAR是MFC中对Char的封装,当字符集是unicode时是双字节wchar,在其他字符集下为单字节char。
WideCharToMultiByte
函数功能:该函数映射一个unicode字符串到一个多字节字符串。 函数原型: int WideCharToMultiByte( UINT CodePage, //指定执行转换的代码页 DWORD dwFlags, LPCWSTR lpWideCharStr, //指定的宽字节字符串的缓冲区 int cchWideChar, //指定由参数lpWideCharStr指向的缓冲区的字符个数 LPSTR lpMultiByteStr, //指向接收被转换字符串的缓冲区 int cchMultiByte, //指定由参数lpMultiByteStr指向的缓冲区最大值 LPCSTR lpDefaultChar, LPBOOL pfUsedDefaultChar ); 参数: CodePage:指定执行转换的代码页,这个参数可以为系统已安装或有效的任何代码页所给定的值。你也可以指定其为下面的任意一值: CP_ACP:ANSI代码页;CP_MACCP:Macintosh代码页;CP_OEMCP:OEM代码页; CP_SYMBOL:符号代码页(42);CP_THREAD_ACP:当前线索ANSI代码页; CP_UTF7:使用UTF-7转换;CP_UTF8:使用UTF-8转换。char->TCHAR的转换:
char a[255];TCHAR b[255];int length = Mutilbytetowidechar(CP_ACP,0,a,strlen(a)+1,null,0);Mutilbytetowidechar(CP_ACP,0,a,strlen(a)+1,b,length);TCHAR->char的转化:
char a[255];TCHAR b[255];int length = Widebytetomutilchar(CP_ACP,0,b,strlen(b)+1,null,0);Mutilbytetowidechar(CP_ACP,0,b,strlen(b)+1,a,length);
CString->TCHAR * 或 char*的转换:
CString cs = "abdcd";int length = cs.GetLength();TCHAR tch[length+1];lstrcpy(tch,cs.GetBuffer(length));cs.RealeseBuffer();CString->const char*的转换:
CString类提供一个operator LPCTSTR把CString类型转换为LPCTSTR类型。
2、构造函数、copy构造和assignment构造
3、静态数据成员和函数
- VC++语法理解
- 理解VC
- VC#语法基础
- VC编译器命令行语法
- const语法理解
- 理解 ANTLR 语法文件
- const语法理解
- 理解clojure语法(1)
- 理解xml语法
- Markdown语法理解
- tensorflow基本语法理解
- 一句话理解复杂语法
- 用VC++设计语法编辑器
- 【4】VC编译语法解释
- VC++ switch语法中的注意事项
- -- 理解VC工程
- 理解VC中的句柄
- VC维的理解
- db2 的缓冲池设计
- 对于document.createElement 创建 input 控件无法得到值问题
- J2SE代码例子收集(IO)二
- VC++工具栏按钮手动添加响应函数
- 《数据机构与算法分析》(Java语言描述)读书笔记(1)---表
- VC++语法理解
- n4:lua sample
- Javascript 那些事《序》
- 今年你想盈利吗?
- amba_device使用分析
- 【构造】后缀数组求逆
- 【搬家】VB.NET开发全功能串口调试助手
- G711 G723 G729线路占多少带宽问题
- 设置输入法弹出时,处于焦点状态的控件所在界面保持原样