ちょっと速いのはなぜ、C#が255以上の整数のキャストを許可しているのですか?255以上の整数でのキャストキャスト255
Console.Write((char)300);
それは文字を返すべきではありませんが、それは(たとえ大きな整数型のために)ありませんので、どのようにそれはこれらの文字を決定するのですか?異なる文字フォーマットに自動変換しますか?
ちょっと速いのはなぜ、C#が255以上の整数のキャストを許可しているのですか?255以上の整数でのキャストキャスト255
Console.Write((char)300);
それは文字を返すべきではありませんが、それは(たとえ大きな整数型のために)ありませんので、どのようにそれはこれらの文字を決定するのですか?異なる文字フォーマットに自動変換しますか?
char in .NET is a Unicode-Char、つまり16ビット長です。あなたがこれを行うことが16ビット長であることに加えて
:
unchecked
{
char c = (char) 70000;
MessageBox.Show(((int)c).ToString());
}
それは(70000パーセント65536)を提供します。 66536は16ビットの数値の最大値です。
Charは、正確にはUTF-16です。 – Oded