C++輸出十六進制
#include<iostream> #include<iomanip> using namespace std;int main() {int a = 60;int b = 13;int c = a &b;cout << "a : hex "<<hex << a << endl;cout << "b : hex "<<hex << b << endl;cout << "c : hex "<<hex << c << endl;return 0; }
運行結果:
exbot@ubuntu:~/wangqinghe/C++/enum$ ./mybyte
a : hex 3c
b : hex d
c : hex c
C++輸出二進制:
#include<iostream> #include<bitset> using namespace std; const int num = 8; //輸出位數控制 int main() {int n_max = 42;cout << (bitset<num>)n_max << endl;return 0; }
運行結果:
exbot@ubuntu:~/wangqinghe/C++/enum$ ./binbyte
00101010
位計算:
#include<iostream> #include<bitset> using namespace std; const int num = 8;int main() {int a = 60;int b = 13;int c = 0;cout << "a = " << a << endl; cout << "b = " << b << endl;c = a & b;cout << "& AND" << endl;cout << "a : " << (bitset<num>)a << endl;cout << "b : " << (bitset<num>)b << endl;cout << "c : " << (bitset<num>)c << endl;c = a | b;cout << "| OR" << endl;cout << "a : " << (bitset<num>)a << endl;cout << "b : " << (bitset<num>)b << endl;cout << "c : " << (bitset<num>)c << endl;c = a ^ b;cout << "^ XOR" << endl;cout << "a : " << (bitset<num>)a << endl;cout << "b : " << (bitset<num>)b << endl;cout << "c : " << (bitset<num>)c << endl;c = (~a);cout << "~ Reverse" << endl;cout << "a = " << a << endl;cout << "c = " << c << endl;cout << "a : " << (bitset<num>)a << endl;cout << "c : " << (bitset<num>)c << endl;c = a << 2;cout << "<< shift left" << endl;cout << "a = " << a << endl;cout << "c = " << c << endl;cout << "a : " << (bitset<num>)a << endl;cout << "c : " << (bitset<num>)c << endl;c = a >> 2;cout << "<< shift right" << endl;cout << "a = " << a << endl;cout << "c = " << c << endl;cout << "a : " << (bitset<num>)a << endl;cout << "c : " << (bitset<num>)c << endl;return 0; }
與預算:有0 為0,雙1為1
或運算:有1為1,雙0 為0
異或運算:相同為0,不同為1