Windows定义的关于字符串的几种类型
来源:互联网 发布:sql password 编辑:程序博客网 时间:2024/05/18 01:17
经常被这几种类型搞混淆:PSTR, PWSTR, PTSTR, PCSTR, PCWSTR, PCTSTR, LPSTR, LPWSTR, LPTSTR, LPCSTR, LPCWSTR, LPCTSTR
不过只要明白了每个字母代表什么意思,就很容易区分这种类型了。首先解释一下类型名中几个大写字母所代表的含义:
N:代表near,在16位系统中代表16位的段内地址
L:代表long(far),在16位系统中代表16位的段地址+16位的偏移地址
在32位系统中 N和L已经没有作用,只是为了向前兼容(兼容16位机器)才保留这些定义。
P:代表指针
C:代表CONST(const)
W:代表WCHAR(wchar_t)
T:代表宏_T(一个兼容的宏,用于区分是否定义了UNICODE,如果定义了UNICODE或者_UNICODE,则表示WCHAR,否则表示char)
CH:char的简写
STR:string的简写
排列顺序:[L/N][P][C][W/T][CH/STR]
所以开始提到的几种类型的关系就是:
1, 普通非常量字符串指针:PSTR, PWSTR, PTSTR
if UNICODE is defined
PTSTR = PWSTR
else
PTSTR = PSTR
2,普通常量字符串指针:PCSTR, PCWSTR, PCTSTR
if UNICODE is defined
PCTSTR = PCWSTR
else
PCTSTR = PCSTR
3,长非常量字符串指针:LPSTR, LPWSTR, LPTSTR
if UNICODE is defined
LPTSTR = LPWSTR
else
LPTSTR =LPSTR
4,长常量字符串指针:LPCSTR, LPCWSTR, LPCTSTR
if UNICODE is defined
LPCTSTR =LPCWSTR
else
LPCTSTR = LPCSTR
这样几种类型就很容易区分了
- Windows定义的关于字符串的几种类型
- Windows定义的关于字符串的几种类型
- 关于结构体定义的几种类型
- 注解annotation的几种类型及定义
- 关于几种类型的快排函数的说明
- Oracle关于锁的几种类型和参数
- 关于触发器的几种类别
- NullPointerException 的几种类型
- Doctype的几种类型
- 排序的几种类型
- result_type的几种类型
- Dialog的几种类型
- 几种类型的toast
- DOCTYPE的几种类型
- NAT的几种类型
- Doctype的几种类型
- Toast的几种类型
- UML中几种类图的定义和表示
- 燕十八公益课堂总结~
- 使用 frameset frame布局 右侧session丢失 要整个页面进入登录界面
- 男人应该懂得!
- java.lang.SecurityException: Neither user 10039 nor current process has android.permissio
- eye blink
- Windows定义的关于字符串的几种类型
- jxl.jar包简介/java操作excel
- Linux基础操作命令
- Creating an Executable jar File
- 编译"Objective-C基础教程" 工程时出错, SDK不匹配的解决办法
- wxWidgets中文社区开通
- 所有笔记
- C# 序列化与反序列化
- 中国嵌入式应用市场四大热点及趋势