int,Int16,Int32和Int64有什么区别?
int
, System.Int16
, System.Int32
和System.Int64
除了它们的大小之外有什么区别?
每种类型的整数具有不同的存储容量范围
Type Capacity
Int16 -- (-32,768 to +32,767)
Int32 -- (-2,147,483,648 to +2,147,483,647)
Int64 -- (-9,223,372,036,854,775,808 to +9,223,372,036,854,775,807)
正如James Sutherland在他的回答中所述:
int
和Int32
确实是同义词; int
会更加熟悉, Int32
使32位对读取代码更加明确。 我会倾向于在我只需要'整数'的Int32
中使用int, Int32
中的大小很重要(密码代码,结构),以便将来的维护人员知道在适当的情况下放大int
是安全的,但应该注意改变Int32
变量一样的方法。
生成的代码将完全相同:区别纯粹是可读性或代码外观之一。
这里唯一真正的区别是尺寸。 这里所有的int类型都是有符号的整数值,它们具有不同的大小
Int16
:2个字节 Int32
和int
:4个字节 Int64
:8个字节 Int64
和其他的有一点区别。 在32位平台上,对Int64
存储位置的分配不保证是原子性的。 它保证所有其他类型。
INT
这是一个在C#中定义的原始数据类型。
它被映射到FCL类型的Int32。
它是一个值类型,代表System.Int32结构体。
它被签名并占用32位。
它的最小值为-2147483648,最大值为+2147483647。
INT16
这是一个FCL类型。
在C#中,short被映射到Int16。
它是一个值类型,代表System.Int16结构体。
它被签名并占用16位。
它具有最小值-32768和最大值+32767的值。
INT32
这是一个FCL类型。
在C#中,int被映射到Int32。
它是一个值类型,代表System.Int32结构体。
它被签名并占用32位。
它的最小值为-2147483648,最大值为+2147483647。
Int64的
这是一个FCL类型。
在C#中,long被映射到Int64。
它是一个值类型,代表System.Int64结构体。
它被签名并占用64位。
它具有最低-9,223,372,036,854,775,808和最多9,223,372,036,854,775,807的价值。
链接地址: http://www.djcxy.com/p/21045.html上一篇: What is the difference between int, Int16, Int32 and Int64?
下一篇: What is the difference between an int and an Integer in Java and C#?