一、定义
二 、示例代码
#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
请按任意键继续. . .
*/
}