在c#中,變數分為以下幾種型別直接分配給值型別變數乙個值,值型別變數直接包含資料,宣告乙個值型別的變數時,系統分配記憶體來儲存值。獲得值型別的長度,使用方法sizeof(type)。
型別描述
範圍預設值
bool
布林值true 或 false
false
byte
8 位無符號整數
0 ~ 255
0char
16 位 unicode 字元
u +0000 ~ u +ffff
『\0』
decimal
128 位精確的十進位制值,28-29 有效位數
(-7.9 x 1028 ~ 7.9 x 1028) / 100 ~ 28
0.0m
double
64 位雙精度浮點型
(+/-)5.0 x 10-324 ~ (+/-)1.7 x 10308
0.0d
float
32 位單精度浮點型
-3.4 x 1038 ~ + 3.4 x 1038
0.0f
int32 位有符號整數型別
-2,147,483,648 ~ 2,147,483,647
0long
64 位有符號整數型別
-923,372,036,854,775,808 ~ 9,223,372,036,854,775,807
0lsbyte
8 位有符號整數型別
-128 ~ 127
0short
16 位有符號整數型別
-32,768 ~ 32,767
0uint
32 位無符號整數型別
0 ~ 4,294,967,295
0ulong
64 位無符號整數型別
0 ~ 18,446,744,073,709,551,615
0ushort
16 位無符號整數型別
0 ~ 65,5350
引用型別變數指向的是乙個記憶體位置,內建的的引用型別有:object、dynamic、string;使用者自定義的引用型別有:class、inte***ce、delegate等。
當乙個值型別被轉換為物件型別即是裝箱,當物件型別被轉換為值型別時即為拆箱。
1. object型別
object是system.object類的別名,是所有型別的父類,可以被分配任何型別,分配之前先進行型別轉換即可。
2. dynamic(動態)型別
可以儲存任何型別的值。eg: dynamic d =10;
3. string型別
string型別是system.string類的別名,它是從object型別派生來的,字串型別的值通過兩種形式進行分配:引號和@引號。
eg: string str = 「hello」;
string s = @」hello」;(@稱作逐字字串,將轉義字元\當作普通字元對待。
string s = @」c:\windows」;
等價於
string s= 「c:\windows」;
@字串可以任意換行,換行符和縮排空格都計算在字串長度之內。
指標型別變數儲存另一種型別的記憶體位址,與c和c++中的指標型別具有相同功能。
宣告:type* identifier;
eg: char* cptr;
int* iptr;
3 C 復合型別
儲存資料時必須跟蹤的三個屬性 資訊儲存在何處,儲存的值,儲存的型別 include using namespace std intmain 始化賦值3,自己計算個數 short c 沒賦值的位置會初始化為預設0 short d 6 始化賦值4,省略等號 int e cout e 2 1.連續字元組成...
C 學習筆記(C 資料型別)
使用程式語言進行程式設計時,需要用到各種變數來儲存各種資訊。變數保留的是它所儲存的值的記憶體位置。這意味著,當您建立乙個變數時,就會在記憶體中保留一些空間。您可能需要儲存各種資料型別 比如字元型 寬字元型 整型 浮點型 雙浮點型 布林型等 的資訊,作業系統會根據變數的資料型別,來分配記憶體和決定在保...
C 學習筆記 C 資料型別
1.值型別 值型別變數可以直接分配給乙個值。它們是從類system.valuetype中派生的。值型別直接包含資料。比如int char float,它們分別儲存數字 字元 浮點數。2.引用型別 物件 object 型別是 c 通用型別系統 common type system cts 中所有資料型...