C语言的数据类型
操作系统是使用C语言开发的,C语言本身有数据类型,由于C语言本身数据类型在开发操作系统时发现原生的C语言数据类型并不能满足要求。所以在开发操作系统时,微软就在C语言的基础上开发了丰富的数据类型,这些数据类型就被称为windows数据类型;
Windows数据类型
windows数据类型都是使用大写字母;
| 常见数据类型 | 描述 |
|---|---|
| WORD | 16位无符号整形数据 |
| DWORD | 32位无符号整型数据(DWORD32) |
| DWORD64 | 64位无符号整型数据 |
| INT | 32位有符号整型数据类型 |
| INT_PTR | 指向INT数据类型的指针类型 |
| INT32 | 32位符号整型 |
| INT64 | 64位符号整型 |
| UINT | 无符号INT |
| LONG | 32位符号整型(LONG32) |
| ULONG | 无符号LONG |
| LONGLONG | 64位符号整型(LONG64) |
| SHORT | 无符号短整型(16位) |
| LPARAM | 消息的L参数 |
| WPARAM | 消息的W参数 |
| HANDLE | 对象的句柄,最基本的句柄类型 |
| HICON | 图标的句柄 |
| HINSTANCE | 程序实例的句柄 |
| HKEY | 注册表键的句柄 |
| HMODULE | 模块的句柄 |
| HWND | 窗口的句柄 |
| LPSTR | 字符指针,也就是字符串变量 |
| LPCSTR | 字符串常量 |
| LPCTSTR | 根据环境配置,如果定义了UNICODE宏,则是LPCWSTR类型,否则则为LPCSTR类型 |
| LPCWSTR | UNICODE字符串常量 |
| LPDWORD | 指向DWORD类型数据的指针 |
| CHAR | 8比特字节 |
| TCHAR | 如果定义了UNICODE,则为WCHAR,否则为CHAR |
| UCHAR | 无符号CHAR |
| WCHAR | 16位Unicode字符 |
| BOOL | 布尔型变量 |
| BYTE | 字节类型(8位) |
| CONST | 常量 |
| FLOAT | 浮点数据类型 |
| SIZE_T | 表示内存大小,以字节为单位,其最大值是CPU最大寻址范围 |
| VOID | 无类型,相当于标准C语言中的void |
| WINAPI | Windows API的函数调用方式,常见于SDK头文件中对API函数的声明中,相当于_stdcall(更严格地说,这不是数据类型,而是一种函数调用约定 |