|
[cnscn@localhost ~]$ cat bits.cpp #include <iostream>
using namespace std;
int main() { //定义无符号型变量,字面量应尽量带标志u或U unsigned short number = 16387U;
cout << (number<<3) //左移n位相当于乘以2的n次方, 这里相当于乘以2的3次方8 << " " << (number>>2) //左移n位相当于除以2的n次方, 这里相当于除以2的3次方8 <<endl; return 0; }
[注] 这里用的是无符号短整型,有符号数的操作负数右移时,左边突出的高位一般全设为1,而正数则设为0,不过也因编译器而不同,所以一般要使用无符号型
[cnscn@localhost ~]$ g++ bits.cpp [cnscn@localhost ~]$ ./a.out 131096 4096
|