Chinaunix首页 | 论坛 | 博客
  • 博客访问: 118395
  • 博文数量: 24
  • 博客积分: 1411
  • 博客等级: 上尉
  • 技术积分: 261
  • 用 户 组: 普通用户
  • 注册时间: 2009-08-07 17:49
文章分类

全部博文(24)

文章存档

2009年(24)

我的朋友

分类: C/C++

2009-08-07 17:54:59


// 取出unsigned中的某一byte

#include <iostream>

using namespace std;

int xbyte (unsigned ui, int byte)
{
  int bias = (3 - byte) * 8 ;
  unsigned mask = ( 0xff<<24 );
  // cout << hex << mask << endl;
  int mediat = (ui << bias) & mask ;
  // cout << hex << mediat << endl;
  return ( mediat >> 24);
}

int main()
{
  cout << hex << xbyte(0x12345678, 2) << endl;
  return 0;
}

阅读(1167) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2011-04-29 18:30:08

你好,我也刚刚看csapp,没搞懂为什么原来的做法不行.你能解释下吗?