C#中的移位运算符

A3th3ree 2014-12-09 10:04:56
C#中的一位运算符,查到资料说是操作数是什么类型,移位后返回什么类型
但是用byte ushort int 做操作数 ,移位后返回用object接受,object is type实验,全是int;
是哪里搞混了吗?
...全文
269 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
A3th3ree 2014-12-11
  • 打赏
  • 举报
回复
嗯的!那就这么愉快的结了吧!
phommy 2014-12-11
  • 打赏
  • 举报
回复
不论你看到的是任何资料,哪怕是MSDN,和实测结果冲突了也是以实测为准= = 如果想要byte,可以运算后强制转换 (byte) (b >> 1)
threenewbee 2014-12-11
  • 打赏
  • 举报
回复
当然是位移前转换。 如果你传入的类型不能转换,直接就报错了。
A3th3ree 2014-12-11
  • 打赏
  • 举报
回复
引用 1 楼 caozhy 的回复:
谁说是任意类型? 当然是int类型
是应为操作符左右在操作数上 操作数先要强制类型转换为int吗 还是说运算完成后再强制类型转换? 或者都不是?
threenewbee 2014-12-09
  • 打赏
  • 举报
回复
谁说是任意类型? 当然是int类型

110,536

社区成员

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

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

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