第一期活动:类型马甲知多少【参与送分】
NTSTATUS
HANDLE
DWORD
BYTE
太多了。。。简直无法枚举。。。
比如NTSTATUS就是long,BYTE就是unsigned char。
每爆一个马甲加10水晶币,多劳多得。。。
举例:
NTSTATUS <--> long
2011-1-19补充:
必须剥去类型所有的马甲!!!
比如DWORD是ULONG的马甲,但是ULONG本身也是马甲,而DWORD剥去所有的马甲是unsigned long!!! 本帖最后由 Xor 于 2011-1-18 21:28 编辑
这个主意不错,支持一下。
我应该把windef的内容都复制下来,不过太多了,所以挑了一些。
typedef WORD ATOM;
typedef HANDLE NEAR *SPHANDLE;
typedef HANDLE FAR *LPHANDLE;
typedef HANDLE HGLOBAL;
typedef HANDLE HLOCAL;
typedef HANDLE GLOBALHANDLE;
typedef HANDLE LOCALHANDLE;
以上都是马甲
还有
typedef struct tagRECT
{
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECT, *PRECT, NEAR *NPRECT, FAR *LPRECT;
typedef const RECT FAR* LPCRECT;
typedef struct _RECTL /* rcl */
{
LONG left;
LONG top;
LONG right;
LONG bottom;
} RECTL, *PRECTL, *LPRECTL;
typedef const RECTL FAR* LPCRECTL;
typedef struct tagPOINT
{
LONGx;
LONGy;
} POINT, *PPOINT, NEAR *NPPOINT, FAR *LPPOINT;
typedef struct _POINTL /* ptl*/
{
LONGx;
LONGy;
} POINTL, *PPOINTL;
typedef struct tagSIZE
{
LONG cx;
LONG cy;
} SIZE, *PSIZE, *LPSIZE;
typedef SIZE SIZEL;
typedef SIZE *PSIZEL, *LPSIZEL;
typedef struct tagPOINTS
{
#ifndef _MAC
SHORT x;
SHORT y;
#else
SHORT y;
SHORT x;
#endif
} POINTS, *PPOINTS, *LPPOINTS;
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME, *PFILETIME, *LPFILETIME;
数数多少个,我发财了! 整理一下:
WORD<-->ATOM;
HANDLE<-->*SPHANDLE;
HANDLE<--> *LPHANDLE;
HANDLE<-->HGLOBAL;
HANDLE<-->HLOCAL;
HANDLE<-->GLOBALHANDLE;
HANDLE<-->LOCALHANDLE;
tag<-->RECTRECT<-->*PRECT<--> *NPRECT<--> *LPRECT;
const<-->RECT<-->FAR* LPCRECT;
_RECTL<-->RECTL<--> *PRECTL<--> *LPRECTL;
const<-->RECTL<-->FAR* LPCRECTL;
tagPOINT<-->POINT<--> *PPOINT<-->*NPPOINT<-->*LPPOINT;
_POINTL <-->POINTL<--> *PPOINTL;
tagSIZE<-->SIZE<--> *PSIZE<--> *LPSIZE;
SIZE<-->SIZEL;
SIZE<-->*PSIZEL<--> *LPSIZEL;
tagPOINTS<-->POINTS<--> *PPOINTS<--> *LPPOINTS;
_FILETIME<-->FILETIME<--> *PFILETIME<--> *LPFILETIME;
我是用的“查找替换”功能,难免有误,请见上文 NTSTATUS <--> long
????? ......所以这就是我讨厌C的地方.....:Q
因此之前要写DLL和驱动,我宁愿用MASM......直接就是相应的BYTE啊DWORD多方便! 回复 马大哈 的帖子
你可以不理会马甲啊!!!
比如我基本都把NTSTATUS写成long。 还好我现在只偶尔写写C51的程序,基本上与汇编的类型一致,就没那么头大了.
页:
[1]