INT 代表int,
DWORD 代表 unsigned long
int会随着机器位数的不同而发生变化,比如在16位机上为16为,在32位机上为32位,在64位机上为64位。
看看最原始的定义就知道了。
DWORD是无符号的,相当于unsigned long ,它是MFC的数据类型。
而int是有符号性的,而且他所占的字节数不一定是4个,主要和你的
IDE有关,像在Turbo C中就是2个字节,VC6.0中就是4个字节
切忌把 int 看成 32 位
书中早就说了
long 32位有符号整数
int 32位有符号整数
DWORD 32位无符号整数 typedef unsigned long DWORD; DWORD 一般用于返回值不会有负数的情况。
到底是用 int 还是 DWORD,要看具体情况。
C++中 DWORD和int的区别 - kelseyling - 博客园 http://www.cnblogs.com/kelseyling/articles/4165931.html
C语言有没有DWORD数据类型?_百度知道 https://zhidao.baidu.com/question/80349137.html
DWORD数据类型是windows定义的数据类型,不是标准c中的数据类型。
标准c包含的基本数据类型有以下几种:
short、int、long、char、float、double 而DWORD是无符号32位整型,因此在目前32位和64位系统下一般我们在代码中可以如下自定义DWORD:
typedef unsigned int DWORD;
同理WORD、BYTE等都可以如下自定义:
typedef unsigned short WORD;
typedef unsigned char BYTE; 在一些大型、专业软件的源代码中经常使用;
它本身C里面是没有的,但为了提高代码可读性,程序员们就将经常用的数据类型重新自定义了。
如:
typedef unsigned long DWORD;
typedef unsigned int UINT;
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)