本文提供关于cout/printf输出十六进制、十进制、八进制、二进制格式控制方法,以及两个关于uchar类型位操作的函数(设置某位的二进制值,获得某位的二进制值),废话少说,直接上代码:
#include <windows.h>
#include <iostream>
#include <bitset>
using namespace std;
//获得第bitnum位的值
UCHAR GetBitValue(UCHAR &value, UCHAR bitNum)
{
return (value & (1 << bitNum))>>bitNum;
}
//设置第bitNum位的值
UCHAR SetBitValue(UCHAR &value, UCHAR bitNum, UCHAR bitValue)
{
if ( 1 == bitValue)
{
value |= (1 << bitNum); //或运算
}
else if (0 == bitValue)
{
value &= ~(1 << bitNum);
}
return value;
}
void jinzhiTest()
{
int a = 100;
cout << "-------cout进制控制---------" << endl;
cout <&l