標籤:http io ar os sp 資料 on cti 代碼
最近在學習中突然想到,我在64位環境下,int取值範圍是否有變化?為了檢測這個結果,我做了以下這個測試:
1、環境:win7旗艦版64位+vs2010 sp1(版本號碼:10.0.40219.1SP1Rel)+.Net 4.0.30319 SP1Rel
2、代碼:
代碼如下 複製代碼
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("int類型的最大值:"+int.MaxValue);
Console.WriteLine("Int64類型的最大值:" + Int64.MaxValue);
Console.WriteLine("long類型的最大值:" + long.MaxValue.ToString());
Console.WriteLine("ulong類型的最大值:" + ulong.MaxValue.ToString());
Console.ReadKey();
}
}
}
從中可以看出,程式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(www.111cn.net),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
from:http://www.111cn.net/net/160/41798.htm
asp.net C# int 類型在32/64位環境下取值範圍無變化