DWORD与ULONG的区别

LONG与DWORD都是WinDef.h中定义的宏

typedef unsigned long ULONG;
typedef unsigned long DWORD;

两者一模一样.

为何我在很多地方看到同时使用这两个类型???

例1,在MSDN中代码:
DWORD dw; ULONG cbRead;

例2,在winterdom上的代码:
bool CreateIocp ( ULONG ConcurrentThreads,
ULONG InitialMaxThreads,
DWORD timeout = INFINITE )

两者实质一样的,但是从字面上看有一些差别
ULONG是偏向于“数值”的概念就是无符号长整形,从0到4294967295。
而DWORD则偏向于这种数据类型所占的字节数为4Bytes,表示双字的意思,而不是双字节,他可以分成高低“字”,等等,通常作为flag。

posted @ 2014-03-24 16:10  朱家牧  阅读(3855)  评论(0)    收藏  举报