首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

小弟我提的有关问题,大家都愿意来回答

2012-02-20 
我提的问题,大家都愿意来回答! 在VC++6.0中,我定义了一个变量:inta它的值可能为:0到65535之间(这个值由我

我提的问题,大家都愿意来回答!

在   VC++   6.0   中,我定义了一个变量:int   a

它的值可能为:0   到   65535   之间     (这个值由我来决定)

现在,我又定义了一个变量:int   b

变量   b   的值是由两个变量   a   来组成的,也就是说   b   的高4位和低4位都等于   a

=============================================

举例:

假如变量   a   =   0xFFFF

那么变量   b   =   0xFFFFFFFF

=============================================

变量   a   已知为   32767,求变量   b

希望解答的朋友能加入一些文字说明,这样能让更多的菜鸟学到知识,谢谢!

[解决办法]
例子没看明白. 能不能不要全都是11111

高4位低4位用Hex表示, 也只有F一位就行了吧?
那b=0xFFFFFFFF, 哪两个F是由a决定的? 其它的F又是怎么来的?
[解决办法]
a=a&0xff;
b=a < <4 | a ;
[解决办法]
这个问题关键是要注意一点,int这种类型在有些机器上是16位的,在有些机器上是32位的,还

有就是符号位的问题,其它就是一些简单的位运算,没有什么复杂的。
[解决办法]
b = (a * 65536) + a;
不会产生溢出???

热点排行