在C#中'6'*'7'的结果是2079,但是这个是怎么计算的。。。。。

[复制链接]
查看11 | 回复2 | 2011-6-27 11:08:27 | 显示全部楼层 |阅读模式
那个不知道答案是多少,也是听别人说的,但是那个表达式是怎么运算的

回复

使用道具 举报

千问 | 2011-6-27 11:08:27 | 显示全部楼层
摘自MSDN:Char 结构表示一个 Unicode 字符。.NET Framework 使用 Char 结构表示 Unicode 字符。 Unicode 标准使用称为码位的唯一的 21 位标量数字标识每个 Unicode 字符,并定义了 UTF-16 编码格式,这一格式指定如何将码位编码为一个或多个 16 位值的序列。 每个 16 位值的范围为十六进制的 0x0000 到 0xFFFF,并存储在 Char 结构中。 Char 对象的值是其 16 位数字(序号)值。注意最后一句“ Char 对象的值是其 16 位数字(序号)值”,也就是说char的实际值就是其对应的Unicode编码序号,'6'的序号是54,'7'对应55,二者相乘就是2970...
回复

使用道具 举报

千问 | 2011-6-27 11:08:27 | 显示全部楼层
少年你好,结果应该是2970。因为你给6,和7加上了单引号,系统就自动帮你转化成字符6和7对应的ascall码值来计算了6和7分别对应54和55,因此结果就不是42。如要42请先转化成int型再计算...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行