位运算符 & | ~
&:都是1的时候为1
|:至少有一个为1的时候为1
^:求反,有且只有一个1的时候为1
<<左移 >>右移
unsigned int num1(2);
unsigned int num2(num1 << 1);
cout <<num2<< endl;//4
unsigned int num3(num1 >> 1);
cout << num3 << endl;//1
sizeof:返回一条表达式或一个类型名字所占的字节数,类型为size_t
size_t sz(sizeof("asdwerwr"));
size_t sz1(sizeof(num1));
cout << sz << endl;
cout << sz1 << endl;
vector<int> vec(20,7);
size_t sz2(sizeof(vec));//vector和string只返回该类型的大小 与存放的值的多少无关
cout << sz2 << endl;
int arr[10]{ 0 };
size_t sz3(sizeof(arr));//为40。操作数组的会返回总共的大小
cout << sz3 << endl;
const double ch(3.1415);
const double *p = &ch;//不管什么类型的指针都为4
size_t sz4(sizeof(p));
cout << sz4 << endl;