您的位置:首页 > 其它

MFC中自定义的数据类型对照表

2010-03-17 23:35 211 查看
一.MFC中自定义的数据类型对照表

数据类型
意义
FAR
对应于far
NEAR
对应于near
CONST
对应于const
UINT
32位无符号整型,对应于unsigned int
BYTE
8位无符号整型,对应于unsigned char
WORD
16位无符号整型,对应于unsigned short int
DWORD
32位无符号长整型,对应于unsigned long int
SHORT
短整型
LONG
32位长整型,对应于long
LONGLONG
64位长整型
FLOAT
浮点型,对应于float
BOOL
Boolean值(TRUE or FALSE即1 或 0)
CHAR
Windows字符
VOID
任意类型
BSTR
32位字符指针
LPCSTR
32位字符串指针,指向一个常数字符串
LPSTR
32位字符串指针
LPCTSTR
32位字符串指针,指向一个常数字符串,用于移植到Unicode集
LPTSTR
32位字符串指针,用于移植到Unicode集
LPVOID
32位指针,指向一个未定义类型的数据
LPARAM
32位消息参数,作为窗口函数或回调函数(call back)的参数
LPRESULT
32位数值,作为窗口函数或回调函数的返回值
WPARAM
16位或32位数值,作为窗口函数或回调函数的参数
COLORREF
32位数值,代表一个颜色值
PROC
指向回调函数的指针
WNDPROC
32位指针,指向一个窗口函数
HANDLE
对象句柄,其他还有HPEN、HWND、HCURSOR、HDC、HFILE等
LPCRECT
32位指针,指向一个RECT结构的常量
POSITION
一个数值,代表collection对象(例如数组或链表)中的元素位置,常使用于MFC collection classes

[b]二.MFC/windows
基本数据类型的定义

[/b]
windef.h
Abstract:Basic Windows Type Definitions ,included in windows.h
winnt.h
Abstract:This module defines the 32-Bit Windows types and constants that are
defined by NT, but exposed through the Win32 API.
afx.h
Abstract:This is a part of the Microsoft Foundation Classes C++ library.
#define FALSE 0 afx.h
#define TRUE 1 afx.h
#define NULL 0 afx.h
typedef void VOID winnt.h
//短整型typedef unsigned short
typedef unsigned short USHORT; windef.h
typedef unsigned short WORD; windef.h
typedef unsigned short wchar_t
typedef short SHORT; winnt.h
//整型typedef int
typedef int BOOL; 取值为TRUE or FALSE windef.h
typedef int INT; windef.h
typedef unsigned int UINT; 定义一个新的Win32数据类型,它会把一个参数强制转换成Windows3.x应用中的16位值 或Win32应用中的32位值windef.h
//长整型typedef long
typedef unsigned long ULONG; windef.h
typedef unsigned long DWORD; windef.h
typedef DWORD COLORREF; windef.h
typedef long LONG; winnt.h
typedef __int64 LONGLONG; winnt.h
typedef unsigned __int64 ULONGLONG; winnt.h
typedef ULONGLONG DWORDLONG; winnt.h
//浮点型
typedef float FLOAT; windef.h
typedef double DOUBLE; wtypes.h
//字符类型typedef char
typedef char CHAR/CCHAR; winnt.h
typedef unsigned char UCHAR; windef.h
typedef unsigned char BYTE; windef.h
typedef wchar_t WCHAR; 声明一个16位的UNICODE字符,用来表示世界上所有已知的书写语言的符号winnt.h
typedef WCHAR TCHAR, *PTCHAR; winnt.h
//指向字符串的指针类型LP*
/*以下为winnt.h的部分内容*/
// UNICODE (Wide Character) types

typedef wchar_t WCHAR; // wc, 16-bit UNICODE character
typedef __nullterminated WCHAR *NWPSTR, *LPWSTR, *PWSTR;
typedef __nullterminated CONST WCHAR *LPCWSTR, *PCWSTR;
// ANSI (Multi-byte Character) types
typedef CHAR *PCHAR, *LPCH, *PCH;
typedef __nullterminated CHAR *NPSTR, *LPSTR, *PSTR;
指向Windows字符串(以空字符结束)的32位指针char*
typedef __nullterminated CONST CHAR *LPCSTR, *PCSTR;
指向Windows常字符串(以空字符结束)的32位指针const char*
// Neutral ANSI/UNICODE types and macros
#ifdef UNICODE // r_winnt
#ifndef _TCHAR_DEFINED
typedef WCHAR TCHAR, *PTCHAR;
typedef WCHAR TBYTE , *PTBYTE ;
#define _TCHAR_DEFINED
#endif /* !_TCHAR_DEFINED */
typedef LPWSTR PTSTR, LPTSTR;
指向Windows字符串(以空字符结束)的32位指针,用于移植到双字节字符集
LPTSTR For Unicode platforms,it is LPWSTR,For ANSI and DBCS platforms,it is LPSTR
typedef LPCWSTR PCTSTR, LPCTSTR;
指向Windows常字符串(以空字符结束)的32位指针const char* ,用于移植到双字节字符集
LPCTSTR For Unicode platforms,it is LPCWSTR,For ANSI and DBCS platforms,it is LPCSTR
typedef LPWSTR LP;
#define __TEXT(quote) L##quote // r_winnt
/*以上为winnt.h的部分内容*/
typedef WCHAR OLECHAR; wtypes.h
typedef /* [wire_marshal] */ OLECHAR *BSTR; unsigned short* wtypes.h
//函数参数、返回值类型
typedef UINT_PTR WPARAM; 窗口函数或callback函数的一个参数,在Win16中是16-bit,在Win32中是32-bit windef.h
typedef LONG_PTR LPARAM; 32位窗口函数或callback函数的一个参数windef.h
typedef LONG_PTR LRESULT; 32位作为窗口函数或callback函数的返回值windef.h
//指向函数的指针类型__stdcall
typedef int (WINAPI *PROC)();PROC指向回调函数的指针
typedef LRESULT (CALLBACK* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
WNDPROC指向在应用程序中定义的窗口过程的指针
#define CALLBACK __stdcall windef.h
#define WINAPI __stdcall windef.h
#define WINAPIV __cdecl windef.h
#define APIENTRY WINAPI windef.h
#define APIPRIVATE __stdcall windef.h
#define PASCAL __stdcall windef.h
typedef void far *LPVOID; 指向任意类型的指针windef.h
//Windows句柄类HANDLE32位的无符号整数,用于标识
窗口句柄 HWND
实例句柄 HINSTANCE
光标句柄 HCURSOR
图标句柄 HICON
位图句柄 HBITMAP
菜单句柄 HMENU
设备描述句柄 HDC
钢笔句柄 HPEN
画刷句柄 HBRUSH
字体句柄 HFONT

文件句柄 HFILE
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: