对255以上的整数进行字符强制转换
本文关键字:字符 转换 整数 | 更新日期: 2023-09-27 18:23:49
只是一个简单的例子-为什么c#允许对255以上的int进行字符强制转换?
例如
Console.Write((char)300);
它不应该返回字符,但它会返回(即使是大整数),那么它是如何确定这些字符的呢?它能自动翻译成不同的字符格式吗?
因为.NET中的字符是Unicode字符,即16位长。
除了16位长之外,您还可以执行以下操作:
unchecked
{
char c = (char) 70000;
MessageBox.Show(((int)c).ToString());
}
它给出(70000%65536)。66536是16位数字的最大值。