1. 首页 > 单机排行 >

long类型的取值范围 long类型的取值范围c语言

ja 中byte.short,int,long,float,double 的取值范围分别是多少?

其中byte、short、int、long都是表示整数的,只不过他们的取值范围不一样

long类型的取值范围 long类型的取值范围c语言long类型的取值范围 long类型的取值范围c语言


long类型的取值范围 long类型的取值范围c语言


byte的取值范围为-128~127,占用1个字节(-2的7次方到2的7次方-1)

short的取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1)

int的取值范围为(-2147483648~2147483647),占用4个字节(-2的31次方到2的31次方-1)

long的取值范围为(-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)

float和double是表示浮点型的数据类型,他们之间的区别在于他们的度不同

float 3.402823e+38 ~ 1.401298e-45(e+38表示是乘以10的38次方,同样,e-45表示乘以10的负45次方)占用4个字节

double 1.797693e+308~ 4.9000000e-324 占用8个字节

double型比float型存储范围更大,精度更高,所以通常的浮点型的数据在不声明的情况下都是double型的,如果要表示一个数据是float型的,可以在数据后面加上“F”。

浮点型的数据是不能完全的,所以有的时候在计算的时候可能会在小数点几位出现浮动,这是正常的。

32位的long型和int型都占四个字节,那么它们的取值范围是否一样?

32位,long,int都是四个字节,取值都是一样的。

我写了测试代码,用无符号型int和long分别存储-1。然后打印出来就是值。

#include

64位的Windows使用的是LLP64(long long and point 64)模型。参照下表:

答:32位的long型和int型都占四个字节,那么它们的取值范围是同样的。

可以用以下语句查询(需要limits.h头文件):

printf(" INT_MAX = %d

这个得看你用的是什么程序语言和什么编译器.

按你的叙述来说, 可能是C/C++在32位编译器下.

long的完整写法应该是 long int

long int和int在32位编译器下都是4字节,效果完全相同,取值范围也一样.

但在其他编译器上就可能不一样.

long int固定为32位, int根据编译器而变.

一样。

只要确认int和long都占据四个字节,那么就是一样的。你可以看看limits.h头文件中对于int和long取值范围的定义。

在codeblock中见到的limits.hint和long的取值范围如下:

#define INT_MAX 2147483647

#define INT_MIN (-INT_MAX-1)

#define LONG_MAX 2147483647L

#define LONG_MIN (-LONG_MAX-1)

只要是32位,4个字节,那取值范围就是一样的,long和int的字节数是取决于编译器的,一般来说long是32位,int是16位。 可以在编译器里编写个小程序,输出long变量和int变量的值看看

一样,你可以通过定义一个数为long和int型 然后令他等于比较大到显示不了就可以测出来是一样的

一样,但是并不是所有时候int和long都是4个字节,这取决于作系统和编译器。

取值范围是一样的 都是四个字节

至于为什么还要保留long,可能是为了兼容性吧 。

long类型与int类型的在都是占4个字节时,其取值范围一模一样

long long 可以支持多少位的数?

可以。在C语言中,在目前主流的64位环境下,long long类型值为9223372036854775807。

扩展资料

#include

#include

int main(void)

{printf("%lld",LLONG_MAX);

return 0;

}

long long能表示2的64个数,因为要考虑正负数,所以是 -2^63 ~ (2^63)-1

在16位环境下,int/unsigned int 占16位,long/unsigned long占32位

在32位环境下,int占32位,unsigned int占16位,long/unsigned long占32位

何时需要使用:

long 和 int 范围是[-2^31,2^31),即-2147483648~2147483647

64位使用范围:

不 同的编译器对64位整数的扩展有所不同,VC使用__int64/unsigned __int64,范围是[-2^63, 2^63)和[0,2^64)即-9223372036854775808~9223372036854775807与0~18446744073709551615(约1800亿亿)。

long long的值:9223372036854775807

拓展资料:

一字节表示八位,即:1byte = 8 bit;

int: 4byte = 32 bit 有符号signed范围:2^31-1 ~ -2^31即:2147483647 ~ -2147483648无符号unsigned范围:2^32-1 ~ 0即:4294967295 ~ 0

long: 4 byte = 32 bit 同int型

double: 8 byte = 64 bit 范围:1.79769e+308 ~ 2.27e-308

long double: 12 byte = 96 bit 范围: 1.18973e+4932 ~ 3.3621e-4932

float: 4 byte = 32 bit 范围: 3.40282e+038 ~ 1.17549e-038

unsigned long long的值:18446744073709551615

__int64的值:9223372036854775807

参考资料:

64位长整范围

-2^63到2^63-1

7895373360280285264不支持的,这么大的数需要用字符数组存储,可以参考大数运算的做法

long long [int] 64 -2^63 ~ 2^63-1

可以是

9223372036854775808

7895373360280285264

是可以的

long long [int] 64 -2^63 ~ 2^63-1

可以是

9223372036854775808

7895373360280285264

是可以的

long long [int] 64 -2^63 ~ 2^63-1

可以是

9223372036854775808

可以的

范围负的2的32次方减1至2的32次方减1

JAVA四种整数数据类型的取值范围分别是多少

byte的取值范围为-128~127,占用1个字节(-2的7次方到2的7次方-1)

short的取值范围为-32768~32767,占用2个字节(-2的15次方到2的15次方-1)

int的取值范围为(-2147483648~2147483647),占用4个字节(-2的31次方到2的31次方-1)

long的取值范围为(-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)

扩展资料List特点和常用方法

List是有序、可重复的容器。

有序指的是:List中每个元素都有索引标记。可以根据元素的索引标记(在List中的位置)访问元素,从而控制这些元素。

可重复指的是:List允许加入重复的元素。更确切地讲,List通常允许满足e1.equals(e2) 的元素重复加入容器;

除了Collection接口中的方法,List多了一些跟顺序(索引)有关的方法:

void add (int index, Object element)

在指定位置插入元素,以前元素通通后移一位

Object set (int index,Object element)

修改指定位置的元素

Object get (int index)

返回指定位置的元素

Object remove (int index)

删除指定位置的元素,后面元素通通前移一位

int indexOf (Object o)

返回个匹配元素的索引。如果没有该元素,返回-1

int lastIndexOf (Object o)

返回一个匹配元素的索引。如果没有该元素,返回-1

List接口常用的实现类有3个:ArrayList、LinkedList、Vector。

【示例1】 List常用方法

运行效果图:

测试List中索引作常用方法:

看完之后自己写一遍试试,对你学习会很有帮助的

c语言中int,long的取值范围是多少?

int和long作为基本的整数类型,取值范围和位数直接相关。如果是n位整数的话,位表示符号位,剩下的n-1位以补码形式表示,因此范围是整数区间[-2^(n-1),2^(n-1))。

int和long并没有明确位数,具体和平台相关(有一点可以确定,sizeof(int)<=sizeof(long))。一般而言,32位机的int是32位的,于是范围是[-2^31, 2^31)也就是[-2147483648, -2147483648)。而非int的位数取决于机器字长外还决定于软件平台(作系统、编译器)上实现的特定的C语言数据模型(专指整数数据模型,不是数据库里讨论的那个),只是一般32位平台上的long都比较统一(基本上都是LP32),为32位,范围和int一致。(如果是64位平台,除了Windows上的LLP64模型中long是32位外,LP64、ILP64、SILP64的long都是64位)。

另外LS错误。首先用的无符号整数写法是错误的,其次printf使用不当(应该用字长无关的%i保证结果正确),再次结果意义不明确。

unsigned int i= -1;

unsigned long l = -1;

printf("%i %i", i, l);

-1转换为无符号数后表示负数的符号位“1”被作为非符号位,输出的是无符号整数的值。

printf("%i %i", i >> 1, l >> 1);

输出有符号整数值,该值加1再乘以-1后即得有符号整数最小值。

====

[原创回答团]

C数据类型int和long int 表示的范围一样吗

在16位编译器下不同,其它编译器下相同。 理由如下:

在C语言中,int的表围,是依赖于编译器的,而long int,也就是long则是固定的。

所以二者范围是否相同取决于编译器。

一、16位编译器:

1、int占2字节,取值范围为-32768~32767.

2、long 占4字节, 取值范围为-2147483648~2147483647

二者不同。

二、32位编译器及64位编译器。

int和long都占4字节, 取值范围相同, 均为-2147483648~2147483647。

此时二者相同。

ja中long类型的取值范围是多少?

(-9223372036854774808~9223372036854774807),占用8个字节(-2的63次方到2的63次方-1)

基本数据类型

Ja里面包含8个基本数据类型,boolean、byte、char、short、int、float、douboe、long

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息