型別轉換就目前 get 到的在 c# 裡面一共有兩種,隱式轉換跟顯式轉換(也叫強勢轉換),下面咱們乙個乙個的以**例項來介紹。
1,隱式轉換:
參與運算(算術運算和賦值運算)的運算元和結果型別必須一致,當不一致時,滿足下面條件時系統自動完成型別轉換(隱式轉換)。
......1)兩種型別相容
...................例如: int 和 double 相容(都是數字型別)。
......2)目標型別大於源型別
...................例如:double > int
......3)對於表示式,如果乙個運算元為 double 型,則整個表示式可提公升為 double 型。
全部為 int 型別的**示例如下:
class program
}
輸出結果:
全部為 double 型別的示例如下:
class program
}
輸出結果:
int 型別在前,double 型別在後的示例如下:
class program
}
輸出結果:
可能你會想,為什麼會是 3 呢?不該是 3.333333.... 麼?
因為儘管 num2 是 double 型別的,但是 num1 還是 int 型別的。
double 型別在前,int 型別在後的示例如下:
到這裡就出問題了,之所以這樣是因為 double > int 。
除了上面的之外還有一種是屬於強制轉換的,寫在這裡吧,結合上面的**示例容易理解。
語法:..)這樣(資料型別名)待轉換的值,例如: int b = (int) 3.14;
..)謹記,int 轉 double 隱式轉換,多小數。 double 轉 int 顯式轉換,丟精度。
2,強制轉換:
這裡咱們介紹乙個「工廠」:convert ;
convert 不再僅是記憶體級別的轉換,而是考慮資料意義的轉化。convert 是乙個加工改造的過程。
通過 convert.toint32 (能轉換成 int 型別的資料) 來把其他型別資料轉換成 int 型別。
**示例如下:
class program
數學成績是總成績是",chinese,math,sum);
console.readkey();}}
在這裡注意一點就行,string 型別 通過 conver.toint32 轉換成了 int 型別。
另外在這段**裡你還看到了新的東西,比如:console.readline,還有console.writeline("你的語文成績是數學成績是總成績是",chinese,math,sum);,乙個是接收資料的,乙個是佔位符,這兩點咱們下篇部落格講解,一點一點來。
C 學習筆記 07 型別轉換
型別轉換 賦值轉換 賦值轉換指的是將一種型別的值賦給另一種型別的變數,這時,值將會轉換為接收變數的型別,如語句 a b 如果a是long型,b是short型,則程式會將16位 short佔兩位元組 的b提公升為32位 long佔4位元組 並賦給a,直觀上講,型別的表達能力取決於該型別所佔的記憶體位數...
C 高階篇(四) 型別轉換高階
目前為止,我們一直使用傳統的型別轉換符來進行簡單物件的型別轉換。例如,要把乙個double型別的浮點型數字轉換為int 的整型數字,我們是這樣做的 int i double d i int d 或者 i int d 這樣做對基本資料型別時沒問題的,因為基本資料型別的轉換已經有標準的定義。同樣的操作也...
C語言高階剖析 4 型別轉換
c語言中的資料型別可以轉換,分為強制型別轉換和隱式型別轉換 int main 注意 不是所有的強制型別轉換都能成功,當不能進行強制型別轉換時,編譯器將產生錯誤資訊 舉例說明 這是編譯器主動進行的型別轉換 注意 低型別到高型別的隱式型別轉換是安全的,不會產生截斷 高型別到低型別的隱式型別轉換是不安全的...