char -128 ~ +127 (1 Byte)
short -32767 ~ + 32768 (2 Bytes)
unsigned short 0 ~ 65536 (2 Bytes)
int -2147483648 ~ +2147483647 (4 Bytes)
unsigned int 0 ~ 4294967295 (4 Bytes)
long == int
long long -9223372036854775808 ~ +9223372036854775807 (8 Bytes)
double 1.7 * 10^308 (8 Bytes)
unsigned int 0~4294967295
long long的最大值:9223372036854775807
long long的最小值:-9223372036854775808
unsigned long long的最大值:1844674407370955161
__int64的最大值:9223372036854775807
__int64的最小值:-9223372036854775808
unsigned __int64的最大值:18446744073709551615
DWORD是什么数据类型?
百度百科里就说的很详细了
DWORD值(REG_DWORD)
由 4 字节长(32 位整数)的数字表示的数据。设备驱动程序和服务的许多参数都是此类型,以二进制、十六进制或十进制格式显示在注册表编辑器中。REG文件中一般表现为“a”=“dword:00000001”。1个二进制位称为1个bit(位),8个二进制位称为1个Byte(字节),8 bit = 1 byte。2个字节就是1个Word(1个字,16位),DWORD(Double Word)就是双字的意思,两个字(32位)。
参考资料:http://baike.baidu.com/view/999769.htm
DWORD值是什么?
长度4字节的变量,表示该值可以保存0xFFFFFFFF到0x00000000的范围。
DWORD值的问题
我的理解:1个二进制位称为1个bit,8个二进制位称为1个Byte,也就是1个字节(8位),2个字节就是1个Word(1个字,16位),则DWORD(DOUBLE WORD)就是双字的意思,两个字(32位)
而REG-DWORD是指双字的数据在注册表中以十六进制数来表示,那么1个32位的二进制数用十六进制数来表示,当然只需要1-8位就够了
所以它们不矛盾,资料一说的是十六进制的表示方式,资料二说的是二进制的表示方式,当然不一样了,至于它们的转换,你可以参考一些资料,一般4个二进制位可以用1个十六进制位来表示,那么32个二进制位当然就用8个十六进制位来表示了
delphi中DWORD是什么数据类型的?
DWORD是32位无符号整型,取值范围0至2的32次方-1,在Delphi中,DWORD,LongInt,Cardinal三种数据类型都一样,都是32位无符号整型(无符号就是没有负的,最小值为0,和之相对的有符号32位整型就是最常用的Integer)
注册表中的DWORD是什么值呀
DWORD值是一个32位(4个字节)的数值。在注册表编辑器中也是以十六进 制的方式表示
C语言有没有DWORD数据类型?
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;
DWORD类型的一个问题?
确切的说DWORD 是 unsigned long类型,取值[0,2的32次方减1];long的取值[-2的31次方,2的31次方减1];
强转的时候注意;640 在这两种类型之间,可以无损转换
转载请注明出处51数据库 » dword范围 vc数据类型范围