6、C++基础:位运算

作者: blueskylxb | 来源:发表于2016-11-17 23:36 被阅读8次

有一个unsigned long型整数,先要分别将其前2个字节和后2个字节用为两个unsigned int型整数输出(设一个int型数据占2个字节),试编写一函数partition实现上述要求。要求在主函数输入该long型整数,在函数partition中输出结果

#include <iostream>
#include <cmath>
using namespace std;

void partition(unsigned long in){
  unsigned int outL;
  unsigned int outR;
  unsigned int right = pow(2, 16) - 1; // 值为65535

  outL = in >> 16; // 右移运算符>>,即向右移16位,移到右端的低位被舍弃,高位补0
  outR = in & right; // 与二进制数按位与运算,right为65535,即   00000000 00000000 11111111 11111111

  cout << "左边两字节数:" << outL << endl;
  cout << "右边两字节数:" << outR << endl;
}

int main(void){

  unsigned long in;

  cout << "long字节数:" << sizeof(long) << endl;
  cout << "输入无符号长整形值:" << endl;
  cin >> in;

  partition(in);

  return 0;
}

相关文章

  • 6、C++基础:位运算

    有一个unsigned long型整数,先要分别将其前2个字节和后2个字节用为两个unsigned int型整数输...

  • 1.位运算符-Bit

    前言:位运算符的使用方式有两种。1)基础使用方式;2)c++新增bitset类1.基础使用1)位运算符 备注:1....

  • 巧妙运用C语言位运算

    巧妙运用C语言位运算,C语言是面向过程的,而C++是面向对象的 位运算 位运算的运算分量只能是整型或字符型数据,位...

  • 位运算 - 基础

    一、位逻辑运算 1、与运算: a & b 与运算,对应位都为 1,结果为 1,否则为 0相当于一般逻辑运算符 an...

  • c++基础之位运算符

    其实大学也学过位运算符,可是后来一直做移动端开发,基本很少接触到位运算,现在既然开始学c++了,那么这些基础还是的...

  • 举例说明OC中的位运算

    OC中的位运算和C/C++语言的位运算是一样的。一般有 &(按位与),| (按位或),~ (按位取反),<<(左移...

  • C++运算符

    C++中的运算符包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、其它运算符,算术运算符中“+”“-”...

  • java基础题总结(小红星)

    首先:java基础的基础1.位运算符 (博客中 位运算的应用)2.集合的特点(ArrayList,linkedLi...

  • C++ 学习(2) ---- 基本语法介绍

    C++ 基本语法(2) C++基础语法说明模板NA运算符重载NA强制类型转换static_cast,const_c...

  • Java位运算的基础及使用(意义)

    Java位运算的基础及使用

网友评论

    本文标题:6、C++基础:位运算

    本文链接:https://www.haomeiwen.com/subject/cwcjpttx.html