windows中的数据类型是将C语言的基础数据类型进行再包装产生的,并不是一种新的数据类型.它只适用于windows的SDK中,并不在其他地方通用.
上面是windows将c语言的基础数据类型进行再包装后产生的数据类型..另外windows还包装了一些结构体和一些权限操作的数据类型
数据类型的本质其实上是我们可以操作内存的大小
内存大小的单位 bit内存中最小的单位 byte 1byte = 8bit..byte是数据类型的最小单位
Windows部分数据类型
BOOL typedef int BOOL BOOL在Windows中占4byte 1表示TRUE, 0表示FALSE
BOOLEAN typedef BYTE BOOLEAN BOOLEAN 占1BYTE 1表示TRUE, 0表示FALSE
DWORD typedef unsigned long DWORD DWORD 在Windows中是比较常用的一个数据类型
DWORD_PTR typedef unsigned long DWORD_PTR DWORD_PTR本质看起来与DWORD一样,,但是他们的语义会有所不同 DWROD_PTR代表里面存放的数据为一个地址,虽然它本身不是一个指针,但是我们可以通过强制转换对它存的地址里面的值进行改变,,
DWORD dwNum = 10; DWORD_PTR dwpNum = &dwNum; *(DWORD*)dwpNum = 100;这样dwNum的值就变成了100 虽然这种用法很别扭,,但它会在WinAPI的传参或者返回值中用到
HANDLE typedef void* HANDLE 这个也是在windows编程中经常会使用到的一个数据类型
CHAR typedef char CHAR 8bit
WCHAR typedef wchar_t WCHAR 16bit
windows命名的规则
用LPCWSTR举例 L –> long P –> point C –> const W –> 代表宽字节 STR代表一个字符串