一週學會C#(值的類型一)

一週學會C#(值的類型)

C#才鳥(QQ:249178521

1.整型<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

類型

位數

System.

CLS兼容?

有無符號

sbyte

8

SByte

ushort

16

UInt16

uint

32

UInt32

ulong

64

UInt64

 

 

 

 

 

byte

8

Byte

short

16

Int16

int

32

Int32

long

64

Int64

有符號整形和字節型是屬於“通用語言認證系統”(CLS)的。而無符號整形不屬於CLS

你可以使用原始的類型關鍵字(如int)或與之對應的別名(如System.Int32),這兩種方法都是可行的。但唯一例外的情況是:當你把類型名作爲.net framework函數實參的時候,你只能使用System.Int32,而不能使用int。例如,你必須這樣調用:Type.GetType("System.Int32"),而Type.GetType("int")語句是錯誤的。這是因爲int只是C#中的關鍵字,而.net framework函數是設計成在所有的.net語言中都通用的。必須注意的是byteC#中是無符號的。

注意:bytesbyt只有8位,因此它們不能作爲數組的元素,因爲數組元素的最小尺寸是16位(2字節)。

2.基本操作符

括號

(x)

訪問成員

x.y

函數調用

f(x)

訪問數組(不是元素)

a[x]

自增

x++

自減

x--

調用構造函數

new

獲得類名

typeof

獲得尺寸

sizeof(不安全的)

數值檢查

(un)checked

基本操作符具有最高的優先級。

new只能在調用構造函數的時候使用,並且不能被用來重載。使用new來調用結構的構造函數會在棧(stack)中分配內存,而用new來調用類的構造函數會在堆(heap)中分配內存。在C#中,結構是值類型的,類是引用類型的。

sizeof返回類或一個表達式的尺寸,但它只能用在標識爲unsafe的代碼塊中。

checkedunchecked操作符用來控制是否檢查算術運算溢出。

3. 操作符的優先級別

基本操作符

見上表

一元操作符

+ - ! ~ ++x –-x (T)x

乘和除

* / %(取餘數)

加和減

+ -

移位

<< >>

關係

< > <= >= is as

相等

== !=

位操作

&  ^   | (注意:左邊比右邊級別高)

布爾

&& || ?: (注意:左邊比右邊級別高)

賦值

= *= /= %= += -= ...

所有的一元操作符都可以重載。

乘和除、加和減、移位、關係(is as 例外)、相等和位操作可以重載。

&&||只能使用true/false轉換操作符時才可以重載。

?:=不能重載。

複合賦值操作符(如*= /=)可以重載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章