char類型和int類型之間的轉換


在視屏課程第二章里,我們已經學習了一些常用的數據類型轉換。然而,有一些時候我們會經常會遇到將char類型轉換成int類型,或者需要將int類型轉換為char類型的情況。

這里,我們來探討一下這種不常用但是需要我們了解的類型轉換。

 將char類型轉換成int類型

一個漢字能轉換成數字int類型嗎?答案是可以的,因為計算機對漢字的儲存也是通過某種編碼規則相對應的數字來儲存的。

在C#語言中,使用Unicode編碼來存儲字符

比如漢字 ‘漢’,對應的Unicode編碼是27721,在計算機內存中,將使用汗27721對應的二進制來存儲。

因此,如果要把 ‘漢’ 轉換為int類型的數字,轉換的結果就是27721。

那使用什么樣的代碼來完成該轉換呢?

char類型的任何數據都可以隱式的轉換為int類型

既然是隱式轉換,所以,下面的代碼都是正確的:

char a='漢'

int b=a;

Console.WriteLine(b);

b='a';

Console.WriteLine(b);

運行以上代碼會輸出:

277721

97

“漢”和'a'分別是277721和97.

int轉為char

比如,我有一個int類型的變量27721,我想看看這個數字作為編碼,對應的字符是什么?

這種情況,就需要把int類型的數據轉換為char類型。

int類型的數據轉換為char類型時必須使用顯示轉換

為什么必須使用顯示轉換呢?如果你看懂了char轉為int一節,應該明白原因。

char類型的取值范圍小於int,因此,將取值范圍大的int類型轉換為取值范圍小的char類型是不安全的,所以要用顯示轉換。

下面的代碼,是查看27721和97兩個數字所代表的字符:

int a=27721;

char c=(char )a;

Console.WriteLine(c);

c=(char)97;

Console.WriteLine(c);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM