2012-02-09 24 views
1

ちょっと速いのはなぜ、C#が255以上の整数のキャストを許可しているのですか?255以上の整数でのキャストキャスト255

Console.Write((char)300); 

それは文字を返すべきではありませんが、それは(たとえ大きな整数型のために)ありませんので、どのようにそれはこれらの文字を決定するのですか?異なる文字フォーマットに自動変換しますか?

答えて

4

char in .NET is a Unicode-Char、つまり16ビット長です。あなたがこれを行うことが16ビット長であることに加えて

+0

Charは、正確にはUTF-16です。 – Oded

1

unchecked 
{ 
    char c = (char) 70000; 

    MessageBox.Show(((int)c).ToString()); 
} 

それは(70000パーセント65536)を提供します。 66536は16ビットの数値の最大値です。

関連する問題