一个位插到一个字节的问题。 在线等~ 谢谢

[复制链接]
 楼主| irico 发表于 2007-1-10 13:24 | 显示全部楼层 |阅读模式
我想把一个位插到一个字节里面我想要的任意位置怎么做?<br />比如说:bit&nbsp;i;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;char&nbsp;j;<br />我想把i插入j的任意位怎么做?<br /><br />希望高人帮忙解答<br />谢谢。<br />
xwj 发表于 2007-1-10 13:40 | 显示全部楼层

用与和或运算

#define&nbsp;INSET(x,b,n);&nbsp;(x)&=~(1&lt&lt(n));&nbsp;(x)|=((b)&lt&lt(n));<br /><br />INSET(j,i,5);<br /><br />
 楼主| irico 发表于 2007-1-10 13:52 | 显示全部楼层

谢绝xwj的解答,请问:1<<(n)表示什么意思.

谢绝xwj的解答,请问:1&lt&lt(n)表示什么意思.<br />小弟很菜。不好意思
xwj 发表于 2007-1-10 13:58 | 显示全部楼层

自己去看书,如果这都不懂...

  
davidli88 发表于 2007-1-10 14:04 | 显示全部楼层

楼主真的很菜

连中文都没学好<br /><br />irico&nbsp;发表于&nbsp;2007-1-10&nbsp;13:52&nbsp;新手园地&nbsp;←返回版面&nbsp;&nbsp;&nbsp;&nbsp;<br /><br />3楼:&nbsp;谢绝xwj的解答,请问:1&lt&lt(n)表示什么意思.&nbsp;<br /><br />谢绝xwj的解答,请问:1&lt&lt(n)表示什么意思.<br />小弟很菜。不好意思<br />&nbsp;<br />&nbsp;<br />
 楼主| irico 发表于 2007-1-10 14:06 | 显示全部楼层

我的意思是一个字节变量与位变量能进行运算吗?

我的意思是一个字节变量与位变量能进行运算吗?<br />不好意思,惭愧
 楼主| irico 发表于 2007-1-10 14:08 | 显示全部楼层

5楼教训的是!打错了。是谢谢才对。头晕了~~

5楼教训的是!打错了。是谢谢才对。头晕了~~
 楼主| irico 发表于 2007-1-10 14:11 | 显示全部楼层

((b)<<(n)); 这里的b是一个位变量吧?这样移位是什么意思呢

((b)&lt&lt(n)); 这里的b是一个位变量吧?这样移位是什么意思呢?<br /><br />请xwj解答!<br />谢谢
javie 发表于 2007-1-10 14:27 | 显示全部楼层

聪明的不会就用笨办法呗...

转变一下思路<br /><br />不过你还是得好好看书,实在应该打PP,连&lt&lt和&gt&gt都不知道
 楼主| irico 发表于 2007-1-10 14:32 | 显示全部楼层

再请各兄台打pp也行~我想的是位变量是不能支持移位运算的

我想的是位变量是不能支持移位运算的呀。<br />望解答<br /><br />b&lt&ltn<br />是不是将位变量b&nbsp;移动n位呀?位变量能移位吗?
 楼主| irico 发表于 2007-1-10 14:46 | 显示全部楼层

xwj 、davidli88、javie 。三位前辈,请解一下吧。

xwj&nbsp;、davidli88、javie&nbsp;。三位前辈,请解一下吧。
xwj 发表于 2007-1-10 14:48 | 显示全部楼层

隐含的强制转换,你不放心的话就这样写

#define&nbsp;INSET(x,b,n);&nbsp;(x)&=~(1&lt&lt(n));&nbsp;(x)|=(&nbsp;((char)(b))&nbsp;&lt&lt(n));&nbsp;<br />
coldra 发表于 2007-1-10 14:48 | 显示全部楼层

自己看书或编译运行一下

  
 楼主| irico 发表于 2007-1-11 09:16 | 显示全部楼层

谢谢xwj前辈提供的方法,是我昨天试得不好。

谢谢xwj前辈提供的方法,是我昨天试得不好。<br />今天试了一下,果然好用。<br />非常感谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

51

主题

155

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部