C# 與數據庫中字段類型 Int16(short), Int32(int), Int64(long)的取值范圍、區別 。string長度


Int取值范圍:

一開始看到Int16, Int32, Int64這三種類型就覺得有點怪, 為什么要整個數字結尾的, 挺怪的.

昨天互相想到, ms這么干就是想讓大家一眼就知道這個數據類型占多大空間吧.

Int8 //等於byte,

Int16 //等於short, 占2個字節. -32768 32767

Int32 //等於int, 占4個字節. -2147483648 2147483647

Int64  //等於long, 占8個字節. -9223372036854775808 9223372036854775807

這樣, 看起來比short,int,long更加直觀些!

另外, 還有一個Byte, 它等於byte, 0 - 255.

這么說來  int8  16  32  64 就是 short int  long的別名

 

 String 長度:

1. 我們用 string.Length 讀取字符串長度,它是int類型,所以理論上 Int32.MaxValue 就是string.Length 能達到的最大值 。
2. .NET 中單個對象占內存不得超過2GB,使用unicode編碼的字符串類型每個字符占2個bytes,所以能達到的最大長度為1,073,741,823。而且這個長度在32位系統中是無法滿足的。
資料內有達人本着實事求是的科學嚴謹態度去測試,跑到1,000,000,000后就悲劇了,所以結論是能超過1,000,000,000,但隨后內存溢出。其實我也測試過了,只是沒看到最多達到幾位就內存溢出了…


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM