嗯那是具有讽刺意味,今天玩的时候我想知道是否可以在某种程度上增加Int64.MaxValue,并且刚刚建立了Int64.MaxValue不是Int64而是Long。
为什么会这样,如果我像Int64 myInt = Int64.MaxValue;
那样存储比myInt仍然是一个Int或者它将变成一个Long,那么在这个字段存储一个Long而不是Int64
的目的是什么意思
答案 0 :(得分:16)
因为Int64和long是同一类型。
Int64 = long
Int32 = int
Int16 = short
答案 1 :(得分:9)
long
是Int64
参考:http://msdn.microsoft.com/en-us/library/ctetwysk(v=VS.100).aspx
答案 2 :(得分:3)
long
只是Int64
的别名。见here。
答案 3 :(得分:3)
来自语言规范:
简单类型的成员直接对应于简单类型别名的结构类型的成员:
•
long
的成员是System.Int64
结构的成员。
您可以在§3.4.2中看到其他别名。
从4.1.4开始:
C#提供了一组称为简单类型的预定义结构类型。简单类型通过保留字标识,但这些保留字只是System命名空间中预定义结构类型的别名,如下表所示。
Reserved word Aliased type
long System.Int64
答案 4 :(得分:2)
Int64很长:
Type t1 = typeof(Int64);
Type t2 = typeof(long);
bool same = t1.Equals(t2); // true
查看MSDN:
答案 5 :(得分:0)
Int16
,Int32
和Int64
分别别名为short
,int
和long
。请注意,该数字是用于存储值的位数。