標籤:style blog io color ar 使用 sp 資料 div
c#中要使用變數,必須先聲明它們。
微軟建議:對於簡單的變數,使用camelCase規則,而對於比較進階的命名則使用PascalCase規則。
c#中聲明變數的文法是
<type><name>
一 簡單類型變數
1.1 數實值型別變數
數實值型別是最簡單的變數類型,數實值型別有多種。
整數類型的變數類型有:
類型 |
別 名 |
允許的值 |
sbyte |
Symstem.SByte |
在-128~127之間的整數 |
byte |
Symstem.Byte |
在0~255之間的整數 |
short |
Symstem.Int16 |
在-32768~32767之間的整數 |
ushort |
Symstem.UInt16 |
在0~65535之間的整數 |
int |
Symstem.Int32 |
在-2147483648~2147483647之間的整數 |
uint |
Symstem.UInt32 |
在0~4294967295之間的整數 |
long |
Symstem.Int64 |
在-9223372036854775808~9223372036854775807之間的整數 |
ulong |
Symstem.UInt64 |
在0~18446744073709551615之間的整數 |
一些變數名稱前面的“u”是unsigned的簡稱,表示不能在這些類型的變數中儲存負號。
浮點數變數類型有三種:float、double、和decimal、
1.2 其他簡單類型
除了數實值型別外,還有另外3種簡單類型。
類型 |
別名 |
允許的值 |
char |
System.Char |
一個Unicode字元,儲存0~65535之間的整數 |
bool |
System.Boolean |
布爾值:true或false |
string |
System.String |
一組字元 |
字串中的轉移字元(即是逸出序列,他是由兩到三個char字元表示的),·一種特殊的字元常量,·以反斜線"\"開頭,後跟一個或幾個字元。·具有特定的含義,不同於字元原有的意義,故稱“轉義”字元。主要用來表示那些用一般字元不便於表示的控制碼。它的作用是消除緊隨其後的字元的原有含義用一些一般字元的組合來代替一些特殊字元,由於其組合改變了原來字元表示的含義,因此稱為“轉義”用可以看見的字元表示那不可以看見的字元, 如‘\n‘表示換行。具體如下表所示
逸出序列 |
產生的字元 |
字元的Unicode值(16進位) |
\’ |
單引號 |
0x0027 |
\” |
雙引號 |
0x0022 |
\\ |
反斜線 |
0x005C |
\0 |
空 |
0x0000 |
\a |
警告(產生蜂嗚) |
0x0007 |
\b |
退格 |
0x0008 |
\f |
換頁 |
0x000C |
\n |
換行 |
0x000A |
\r |
斷行符號 |
0x000D |
\t |
水平定位字元 |
0x0009 |
\v |
垂直定位字元 |
0x000B |
二 複雜的變數類型
2.1 枚舉類型
當希望變數提取的值是一個固定集合中的值時,就用到了枚舉類型。
定義枚舉
enum typeName : type { value1, value2, value3, ... valueN }
枚舉使用一個基本類型來儲存。枚舉的基本類型可以是byte,sbyte,short,ushort,int,uint,long,ulong。在預設情況,不定義type類型的情況下,該類型為int。
在預設情況下,枚舉類型中每個值都會根據定義的順序(從0開始),自動賦給對應的基本類型值。這意味著value1的實際值(類似於角標)是0,value2的值是1等。可以重寫這個賦值過程:使用=運算子,並制定每個枚舉的實際值(類似於角標)。例如
namespace ConsoleApplication1{ enum orientation:byte { north=1, south=2, east=3, west=4 } class Program { static void Main(string[] args) {
....... } }}
枚舉類型的資料是獨立於byte,short,int等的類型,當實際重新得到一個具體的枚舉中的值時,得到的是enum枚舉類型的資料,仍需用強制轉換成int或者byte等資料。另外注意枚舉類型的定義是在namespace中的class定義之前,與class的定義是獨立的,而不是在class中。
2.2 結構類型
結構(struct,是structure的簡寫)就是由幾個資料群組成的資料結構,這些資料可以有不同的類型。根據這個結構,可以定義自己的變數類型。
定義結構
struct <typename>{ <memberDeclarations>}
<memberDeclarations>部分包含變數的定義(成為結構的資料成員),其格式與往常一樣。每個成員的聲明都採用如下形式:
<accesslibility> <type> <name>
例如,
namespace ConsoleApplication1029{ enum orientation:byte { north=1, south=2, east=3, west=4 } struct route { public orientation direction; public double distance; } class Program { static void Main(string[] args) { ........ } }}
定義了結構類型後,就可以定義新類型的變數,來使用該結構:
route myRoute
還可以通過句點字元來訪問這個組合變數中的資料成員:
myRoute.direction=orientation.north;myRoute.distance=2.5;
注意枚舉以及結構類型的定義是在namespace中的class定義之前,與class的定義是獨立的,而不是在class中,而使用這些類型是在class的main函數裡。
c#各種變數的總結