DWORD类型
Posted Good Good Study~
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DWORD类型相关的知识,希望对你有一定的参考价值。
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;
以上是关于DWORD类型的主要内容,如果未能解决你的问题,请参考以下文章
如何将 double 类型转换为 DWORDLONG 或 DWORD 转换为 DWORDLONG 或 DWORD_PTR 转换为 DWORDLONG
RegEnumValue函数读取注册表中的REG_BINARY和REG_DWORD类型数据