首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >“int”和“uint”/“long”和“ulong”有什么区别?

“int”和“uint”/“long”和“ulong”有什么区别?
EN

Stack Overflow用户
提问于 2010-09-16 14:36:32
回答 3查看 221.1K关注 0票数 133

我知道intlong (32位和64位数字),但是什么是uintulong

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-09-16 14:39:27

以"u“为前缀的原始数据类型是具有相同位大小的无符号版本。实际上,这意味着它们不能存储负数,但另一方面,它们可以存储两倍于其有符号的对应物的正数。带符号的对等体没有"u“前缀。

int (32位)的限制为:

int: –2147483648 to 2147483647 
uint: 0 to 4294967295 

对于long (64位):

long: -9223372036854775808 to 9223372036854775807
ulong: 0 to 18446744073709551615
票数 260
EN

Stack Overflow用户

发布于 2010-09-16 14:40:40

不同之处在于uintulong是无符号数据类型,这意味着范围不同:它们不接受负值:

int range: -2,147,483,648 to 2,147,483,647
uint range: 0 to 4,294,967,295

long range: –9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
ulong range: 0 to 18,446,744,073,709,551,615
票数 12
EN

Stack Overflow用户

发布于 2010-09-16 14:40:48

u的意思是unsigned,所以ulong是一个没有符号的大数字。您可以在ulong中存储比long更大的值,但不允许使用负数。

long值以64位存储,其第一个数字表示它是正数还是负数。而ulong也是64位的,全部用64位来存储数字。因此,ulong的最大值是2(64)-1,而long是2(63)-1。

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3724242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档