隱式轉換就是系統預設的、不需要加以宣告就可以進行的轉換。在隱式轉換過程中,編譯器無需對轉換進行詳細檢查就能夠安全地執行轉換。比如從int型別轉換到long型別就是一種隱式轉換。隱式轉換一般不會失敗,轉換過程中也不會導致資訊丟失。
顯式轉換需要強制轉換運算子。 在轉換中可能丟失資訊時或在出於其他原因轉換可能不成功時,必須進行強制轉換。典型的例子包括從數值到精度較低或範圍較小的型別的轉換和從基類例項到派生類的轉換。
注意:char能轉換成其它型別,但其它型別不能轉換為char型別。不存在浮點型與 decimal 型別之間的隱式轉換。
隱式轉換各顯式轉換要求是同型別的,就是說兩種資料型別必須相容,隱式轉換是向上轉型(相當是子類轉父類),而強制型別轉換則是向下轉型(相當是父類轉子類),就好像double型的可以包含int型一樣。而強制轉換可以是不是同一種型別。對於表示數值的基本資料型別來說,數值範圍小的資料(精確度低)型別轉換成數值範圍大的資料(精確度高)型別可以進行隱式轉換,而反過來則必須進行顯示轉換。
**舉例
class conversions
}
(1) (int)變數名[強制型別轉換]:該轉換方式主要用於數字型別轉換
(2) int.parse(string型別變數名)該方式是將數字內容的字串轉為int型別
(3) int.tryparse(string s, out int result)該方式也是將數字內容的字串轉為int型別,但是該方式比int.parse優越的地方,就是它不會出現異常。如果轉換成功返回 true如果轉換失敗返回false。很明顯,最後乙個引數為輸出值,如果轉換失敗,輸出值為0;如果轉換成功,則輸出相應的值。
(4) convert.toint32該方式不僅可以將字串轉為int型別,還可以將其它型別的值轉成int型別。變數若為object或string型別,當其值為null時,會傳回0,不會造成程式錯誤,但是若此string型別的值為string.empty,在轉型成int時,仍會造成程式錯誤。
**舉例:
namespace parse型別轉換}}
mysql型別轉換c 型別轉換 C 型別轉換
一 簡介 型別轉換 把資料從一種型別轉換另一種型別 我們要求等號兩邊參與運算子必須型別一致,如果不一致,滿足下列條件會發生自動型別轉換或者隱式型別轉換。1.兩種型別相容 例如 int和double 相容 都是數字型別 2.目標型別大於源型別 double int 顯示型別轉換 1.兩種型別相相容 i...
C 資料型別轉換基礎
cstring 轉換 char cstring str char char str charstr lpstr lpctstr str cstring轉換 char 200 void trans cstring stra cont i 0 cstring轉 intcstring cstr intsi...
C 基礎篇 型別轉換原則
c 可以提供相容型別的轉換,轉換始終會根據乙個存在的值建立另乙個新的值,轉換分為兩種,顯式轉換 隱式轉換 隱式轉換 自動發生 顯示轉換 需要新增強制轉換 在一下案列中 我們把int 32隱式轉換為double 又將double 顯示轉換為short int num1 123 double num2 ...