一、定义
二 、示例代码
#include <stdio.h> #include <stdlib.h> int main(void) { int i=21; int j=7; int k; /*====== 一 =======*/ k=i&&j;//&&:逻辑运算与:它的值只能是真或假,在C语言中真用1表示,假用0表示 printf("i&&j= %d\n",k); k=i&j;//&:位运算与:计算方法:用i的二进制和j的二进制进行逻辑与运算,得到的结果就是最后的值。(按位与) printf("i&j= %d\n",k); /*====== 二 =======*/ k=i||j;//||:逻辑或运算 printf("i||j= %d\n",k); k=i|j;//|:位运算或:按位或 printf("i|j= %d\n",k); /*====== 三 =======*/ k=~j;//按位取反 /*...0111取反后是(...1000前面有28个1) 再按照求负数的二进制的方法计算出它的二进制数, */ printf("~j=%d\n",k);//-8 /*====== 四 =======*/ k=0^1;//按位异或:相同为0;不同为1 printf("0^1=%d\n",k); /*====== 五 =======*/ k=i<<1;//按位左移(左移n位相当于乘以2的n次方) printf("i<<1=%d\n",k); /*====== 六 =======*/ k=i>>1;//按位右移(右移n位相当于除以2的n次方) printf("i>>1=%d\n",k); system("pause"); return 0; /*输出为: i&&j= 1 i&j= 5 i||j= 1 i|j= 23 ~j=-8 0^1=1 i<<1=42 i>>1=10 请按任意键继续. . . */ }