Windows定义的关于字符串的几种类型
来源:互联网 发布:h3c 怎么修改端口23 编辑:程序博客网 时间:2024/06/05 16:33
转载自:http://blog.csdn.net/lifeng5055/article/details/8123175
经常被这几种类型搞混淆: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中几种类图的定义和表示
- 应用平台概述(基于微软平台)
- hdu 4417 划分树 求一个区间内小于n的数
- UNREFERENCED_PARAMETER的作用
- 使用Jquery分页插件jquery.pagination.js 实现无刷新分页效果
- SCU 4315: Sequence
- Windows定义的关于字符串的几种类型
- 内存管理之伙伴系统算法(The Buddy System Algorithm)
- GetLastError,ErrLookUp,$err,hr,$eax
- FS获取KERNEL32基址的三种方法
- code001
- Access2003公司数据库管理综合应用(奋斗的小鸟)_PDF 电子书
- 关于php中自增的问题
- poj2777Count Color(线段树,段更新,段查询用map函数)
- peb获取kernel32基址,用第一和第二种