C 中幾種資料型別轉化總結

2021-06-16 14:19:06 字數 1458 閱讀 4686

(類名)變數;  強制轉換 不能轉換會丟擲異常,值和 引用型別都可以

變數 as 類名 as 運算子用於執行引用型別的顯式型別轉換。 如果要轉換的型別與指定型別相容,轉換就會成功;如果型別不相容,則返回null。還有conver.to***x 主要用在值型別 將乙個基本資料型別轉換為另乙個基本資料型別

(int)和int32.parse(),convert.toint32()三者的應用舉幾個例子:  

例子一:

long longtype = 100;  

int inttype  = longtype;       // 錯誤,需要使用顯式強制轉換  

int inttype = (int)longtype; //正確,使用了顯式強制轉換 

例子二:

string stringtype = "12345";   

int inttype = (int)stringtype;           //錯誤,string 型別不能直接轉換為 int  型別   

int inttype = int32.parse(stringtype);   //正確 

例子三:

long longtype = 100;  

string stringtype = "12345";  

object objecttype = "54321";  

int inttype = convert.toint32(longtype);       //正確  

int inttype = convert.toint32(stringtype);     //正確  

int inttype = convert.toint32(objecttype);    //正確 

例子四:

double doubletype = int32.maxvalue + 1.011;   

int inttype = (int)doubletype;                       //雖然執行正確,但是得出錯誤結果  

int inttype = convert.toint32(doubletype)            //丟擲 overflowexception 異常 

c#強制轉換中(int)和int32.parse(),convert.toint32()三者的區別:

第乙個在對long 型別或是浮點型到int 型別的顯式強制轉換中使用,但是如果被轉換的數值大於int32.maxvalue 或小於 int32.minvalue,那麼則會得到乙個錯誤的結果。

第二個在符合數字格式的string到int 型別轉換過程中使用,並可以對錯誤的string數字格式的丟擲相應的異常。

第三個則可以將多種型別的值轉換為int型別,也可以對錯誤的數值丟擲相應的異常。

無論進行什麼型別的數值轉換,數值的精度問題都是我們必須考慮的。

C 中幾種資料型別轉換

c 中經常會需要資料型別轉換,比如int char,cstring 到string char uchar 等等。unicode 字符集下 cstring 轉 string void ustrtoascchar const cstringw cs,char buff string 轉cstring c...

c 中各種資料型別的轉化

c 中convert中沒有tofloat 方法。將string轉化成float可以採用下面的方法 float.parse 方法,相應的int.parse 方法。float ratio score point 100 ratio.tostring f1 可以使用上面的方法將float轉化成帶一位小數的...

C 幾種資料型別轉換

1.int 變數名 強制型別轉換 該轉換方式主要用於數字型別之間的轉換,從int型別向long,float,double,decimal 型別轉換可以使用隱式轉換,但從long型到int 就需要使用顯示轉換,即使用該型別的轉換方式否則產生編譯錯誤。該方式對於浮點數會無條件的捨去,會失去精確度 對於c...