怎么把一个INT分成两半来用?就是前面的bits存一个数,后面的bits存一个数? 怎么把一个INT分成两半来用?就是前面的bits存一个数,后面的bits存一个数?C#有没有左移、右移、按位与、按位或这些操作? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 有位移操作呀。int i = 32;int j = 23;int k = (j << 16 ) || j; j < < 16 的结果是j*2^16? <<左移>>右移|或&与^异或~ 按位求补 在.NET中int可不是2个bit的...而是4个bit...还有位移操作...这些都是基础...随便一本入门书都会讲到...当然还是MSDN最权威... 晓得啊,我说的是 前面的bits 后面的bits 啊,有s的,嘿嘿 为什么要这样做?为什么不用两个short?给个理由先... int x = 0x12345678;int h = x >> 16; // 获取高16位数据 = 0x00001234int l = x & 0x0000FFFF; // 获得低16位数据 0x00005678 那个问题一个byte就解决了...用int太浪费...ps:用C#研究这种问题属于浪费时间... 哦...上面出了个低级错误...int不是4个bit,是4个byte,32个bit... 用C#研究这种问题属于浪费时间??why?? 如vrhero所说,用byte即合理有合法 菜鸟求助 怎样讲JSON反序列化为复杂实体类? 问一个简单的线程问题 [简单但是我不会]如何知道一个Dataset里面有没有数据? 类似QQ的界面 C#编程 [讨论]图形绘制和格式 我偷了个程序 可是还是错误,大家帮指正 谢谢 在线等 超级新手C#的两个小问题 复合控件获取焦点失去焦点问题 关于DropDownList的问题二! 数据类型的基础问题 C#页面点击浏览器后退按纽后,页面出现乱码?
int i = 32;
int j = 23;
int k = (j << 16 ) || j;
>>右移
|或
&与
^异或
~ 按位求补
int h = x >> 16; // 获取高16位数据 = 0x00001234
int l = x & 0x0000FFFF; // 获得低16位数据 0x00005678
why??