好郁闷,居然被逻辑运算符难住了。

azmao 2008-09-09 06:28:54
好郁闷,居然被逻辑运算符难住了。
UInt16 c,crc=0xffff,a=0x00ff;
c = crc & a;

c = crc & a;报错,搞得我晕头转向的。错误CS0266: 无法将类型“int”隐式转换为“ushort”。存在一个显式转换(是否缺少强制转换?)

我是同类型的呀,难道运算符重载后会把两个UInt16计算成Int32。
...全文
164 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuntian5911 2008-09-10
  • 打赏
  • 举报
回复
你可以用 Covert()试一试
azmao 2008-09-10
  • 打赏
  • 举报
回复
[Quote]{因为你的a=0x00ff; a已经变成int32的了.}[/Quote]

都改成0xff,故障依旧。应该不是这个问题。
而是运算符重载后会把两个UInt16计算成Int32。
xmaiC 2008-09-09
  • 打赏
  • 举报
回复
C#性格比较挑剔
孤剑 2008-09-09
  • 打赏
  • 举报
回复
这就是 c#
sh1618 2008-09-09
  • 打赏
  • 举报
回复
学习一个
wdgphc 2008-09-09
  • 打赏
  • 举报
回复
因为你的a=0x00ff; a已经变成int32的了.
azmao 2008-09-09
  • 打赏
  • 举报
回复
看样子必须使用显式转换了
c = Convert.ToUInt16(d & a);通过了
c#类型太严格了
孤独侠客123 2008-09-09
  • 打赏
  • 举报
回复
maybe

111,096

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧