最近在学习中突然想到,我在64位环境下,int取值范围是否有变化?为了检测这个结果,我做了以下这个测试:
1、环境:win7旗舰版64位+vs2010 sp1(版本号:10.0.40219.1SP1Rel)+.Net 4.0.30319 SP1Rel
2、代码:
| 代码如下 | 复制代码 |
|
using System; namespace ConsoleApplication1 } |
|
从截图中可以看出,程序ConsoleApplication1.exe已经运行在64位状态下(非64位的有 *32 标记),但是int依然还是21亿(小数不计了^Q^)
所以说,int在64位环境下,超过21亿还是会溢出的
另外.Net中的Int64和C#的long,取值是一样的。
c# int Int32 Int64 的区别
Int16 值类型表示值介于 -32768 到 +32767 之间的有符号整数。
Int32 值类型表示值介于 -2,147,483,648 到 +2,147,483,647 之间的有符号整数。
Int64 值类型表示值介于 -9,223,372,036,854,775,808 到 +9,223,372,036,854,775,807 之间的整数。
----------------------------------------------------------------------------------------------------------------------------
short 关键字表示一种整数数据类型,该类型根据下表显示的大小和范围存储值。
| 类型 | 范围 | 大小 | .NET Framework 类型 |
|---|---|---|---|
|
short |
-32,768 到 32,767 |
有符号 16 位整数 |
System.Int16 |
----------------------------------------------------------------------------------------------------------------------------
int 关键字表示一种整型,该类型根据下表显示的大小和范围存储值。
| 类型 | 范围 | 大小 | .NET Framework 类型 |
|---|---|---|---|
|
int |
-2,147,483,648 到 2,147,483,647 |
有符号 32 位整数 |
System.Int32 |
----------------------------------------------------------------------------------------------------------------------------
long 关键字表示一种整型,该类型根据下表显示的大小和范围存储值。
| 类型 | 范围 | 大小 | .NET Framework 类型 |
|---|---|---|---|
|
long |
-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
有符号 64 位整数 |
System.Int64 |
创造与魔法九游版本
创造与魔法九游版采用了极致创新的魔幻游戏玩法感受,游戏具备最
疯狂医院达什医生中文版(Crazy Hospital)
疯狂医院达什医生最新版是一款医院模拟经营类游戏,逼真的场景画
宝宝庄园官方版
宝宝庄园官方版是一款超级经典好玩的模拟经营类型的手游,这个游
桃源记官方正版
桃源记是一款休闲娱乐类的水墨手绘风格打造的模拟经营手游。玩家
长途巴士模拟器手机版
长途巴士模拟器汉化版是一款十分比真好玩的大巴车模拟驾驶运营类