Golden Blonde 发表于 2014-5-28 16:56:30

【Windows】C/C++语言类型马甲

1字节:
BOOLEAN <-> BYTE <-> UCHAR <-> unsigned char

2字节:
WORD <-> USHORT <-> unsigned short

4字节:
NTSTATUS <-> BOOL <-> long <-> int
DWORD <-> ULONG <-> unsigned long

8字节:
QWORD <-> ULONG64 <-> unsigned long long

根据平台位数而变化:
HANDLE <-> PVOID <-> VOID*


欢迎补充。。。

0xAA55 发表于 2014-5-28 17:19:20

1字节:
bool <-> unsigned char//但是你给bool赋值的时候,除非是0,否则bool的值会被强制设置为1,VC6测试结果。
CHAR <-> char
BYTE <-> unsigned char

2字节:
SHORT <-> short
WCHAR <-> wchar_t

4字节:
LONG <-> long <-> unsigned short
FLOAT <-> float
LPARAM <-> LONG <-> unsigned long
LRESULT <-> LONG <-> unsigned long

8字节:
DOUBLE <-> double
LONGLONG <-> __int64
ULONGLONG <-> unsigned __int64
USN <-> LONGLONG <-> __int64
DWORDLONG <-> ULONGLONG <-> unsigned __int64


根据平台位数而变化:
INT <-> int
UINT <-> unsigned int
WPARAM <-> UINT <-> unsigned int
LPCSTR <-> CONST CHAR * <-> const char *
LPCWSTR <-> CONST WCHAR * <-> const unsigned short *

其它:
VOID <-> void//你不能把它定义为0字节
CONST <-> const

watermelon 发表于 2020-1-27 13:31:11

支持楼上两位大佬,学习一下。

系统消息 发表于 2020-1-28 11:54:36

0xAA55 发表于 2014-5-28 17:19
1字节:
boolunsigned char//但是你给bool赋值的时候,除非是0,否则bool的值会被强制设置为1,VC6测试结 ...

WPARAM是UINT_PTR,UINT_PTR在Win32下是UINT,Win64下是UINT64。

0xAA55 发表于 2020-1-30 01:01:46

系统消息 发表于 2020-1-28 11:54
WPARAM是UINT_PTR,UINT_PTR在Win32下是UINT,Win64下是UINT64。

挖坟。
页: [1]
查看完整版本: 【Windows】C/C++语言类型马甲