vc数据类型分基本数据类型和扩展(特有)数据类型,现整理下,为了记忆,也为了开发过程中进行查阅,必竟人脑不是电脑,会有遗忘的过程。
一、基本数据类型
主类型 | 分类型 | 修饰符 | 占用空间 | 表示范围 |
Integer | int | short | 2 bytes | -32768~32768 |
long | 4 bytes | -231~(231-1) | ||
Unsigned short | 2 bytes | 0~65535 | ||
Unsigned long | 4 bytes | 0~(232-1) | ||
Real | Float | --- | 4 bytes | -3.4E38~3.4E38 |
Double | long | 8 bytes | -1.7E308~1.7E308 | |
Char | Char | Signed | 1 bytes | -128~127 |
Unsigned | 1 bytes | 0~255 | ||
Logical | Bool | --- | 1 bytes | 0,1 |
注意: 对于不同的编译系统,比如基于16bit,32bit和64bit编译系统,×××数据类型的长度可能有所不同,这时可用sizeof操作符测试您好所使用的编译系统中的数据类型长度。例如:
cout<<sizeof(short)<<' '<<sizeof(int)<<' '<<sizeof(long)<<endl;
二、扩展数据类型
类型 | 描述 |
BOOL | 布尔型(值: True或False) |
BYTE | 字节类型(8bit) |
CHAR | 8bit字节(ANSI) |
CONST | 常量,相当于标准C中的"const"关键字 |
DWORD | 32字节无符号×××数据 |
DWORD32 | 32字节无符号×××数据 |
DWORD64 | 64字节无符号×××数据 |
FLOAT | 浮点数据类型 |
HANDLE | 对象的句柄、最基本的句柄类型 |
HINSTANCE | 程序实例的句柄 |
HICON | 图标的句柄 |
HKEY | 注册表键的句柄 |
HMODULE | 模块的句柄 |
HWND | 窗口的句柄 |
INT | 32bit符号×××数据类型 |
INT_PTR | 指向INT类型数据的指针类型 |
INT32 | 32bit符号整型 |
INT64 | 64bit符号整型 |
LONG | 32bit符号整型、相当于C语言的标准数据类型long |
LONGLONG | 64bit符号整型 |
LONG32 | 32bit符号整型 |
LONG64 | 64bit符号整型 |
LPARAM | 消息的L参数 |
WPARAM | 消息的W参数 |
LPCSTR | windows(ANSI)字符串常量 |
LPCTSTR | 根据环境配置,如果定义了UNICODE宏,则是LPCWSTR类型,否则是LPCSTR类型 |
LPCWSTR | UNICODE字符串常量 |
LPDWORD | 指向DWORD类型数据的指针 |
LPSTR | windows(ANSI)字符串变量 |
LPTSTR | 根据环境配置,如果定义了UNICODE,则是LPWSTR类型,否则是LPSTR类型 |
LPWSTR | UNICODE字符串变量 |
SHORT | 16bit符号整型(16bit) |
SIZE_T | 表示内存大小,以字节为单位,其最大值是CPU最大寻址范围 |
TCHAR | 如果定义了UNICODE,则为WCHAR,否则为CHAR |
UCHAR | 无符号CHAR |
UINT | 无符号INT |
ULONG | 无符号LONG |
VOID | 无类型,相当于标准C语言的void |
WCHAR,wchar_t | 16bit Unicode字符 |
WINAPI | Windows API的函数调用方式,常见于SDK头文件中对API函数的声明中,相当于_stdcall(属于函数调用约定) |
WORD | 16bit无符号整型数据 |
windows数据类型名命名的规律:
1、基本扩展数据类型是BYTE,CHAR,WORD,SHORT,DWORD,INT。
2、指针类型的命名方式方法:一般在其指向的数据类型前加"LP"或"P"
3、各种句柄类型的命名方式:一般都是在对象名前加"H"
4、无符号类型一般是以"U"开头。
具体更详线的类型命名信息可以参考:C:\Program Files\Microsoft VisualStudio\VC98\Include查看头文件WINDEF.H的定义
转载于:https://blog.51cto.com/tommy/1357258