首页 > 编程知识 正文

c语言中按位与,c语言运算符优先级口诀

时间:2023-05-05 15:53:23 阅读:152688 作者:2533

C语言位运算符的用法

C语言中位运算的运算成分只有整数型或字符型的数据,位运算将运算对象视为由二进制构成的位串信息,逐位完成指定的运算,得到位串信息的结果。 下一篇小编将介绍C语言位运算符的用法。

C语言的位运算符的用法如下。

一、位运算符C语言有六种位运算符。

按位

|按位或

^按位异或

取反

向左移动

向右移动

1 .按位运算

位和运算符“”是双目运算符。 其功能是分别与参与运算的2个数相对应的二进制相和二进制相。 只有当相应的二进制数都为1时,结果位才为1,否则为0。 参与运算的数表现为补数。

例如,95可以写成: 可知00001001(9的二进制数) 00000101 (5) 5的二进制数) 000001 ) 1的二进制数)为95=1。

按位和运算通常用于将某些位清零或保持某些位。 例如,如果将a的前八位清除为0,保留后八位,则可以进行a255运算。 255的二进制数是0000000011111111。

主()。

int a=9,b=5,c;

c=ab;

printf(a=%d/nb=%d/NC=%d/n )、a、b、c );

}

2 .按位或运算

位或运算符“|”是双目运算符。 其功能是分别对应于参与运算的两个数的二进制相或。 如果对应的两个二进制文件中的任何一个为1,则结果位为1。 参与运算的两个数都以补数出现。

例如,9|5可以写公式00001001|00000101

00001101 (十进制为13 )可以看出9|5=13

主()。

int a=9,b=5,c;

c=a|b;

printf(a=%d/nb=%d/NC=%d/n )、a、b、c );

}

3 .异或运算

异或运算符“^”是双目运算符。 其功能是,如果参与运算的两个数各自对应的二进制不同,或者两个对应的二进制不同,则结果为1。 参加运算数依然以补数出现,例如9^5可以写成如下算式。 000001001 ^ 000010100001100 (十进制为12 )。

主()。

int a=9

a=a^15;

printf(a=%d/n ),a );

}

4 .求逆运算

求逆算子~是单眼算子,具有右结合性。 其功能是逐位反转参与运算的数`各二进制。 例如,对于~9的运算,~(0000000000001001 )的结果为1111111111110110。

5 .左移运算

左移运算符"

6 .右移运算

右移运算符“”是双目运算符。 其功能是将“”左侧操作数的每个二进制文件都向右移动多少位,“”右侧的数字指定要移动的位数。

例如,如果a=15,则a2表示将000001111向右移动到000011 (十进制3 )。 另外,对于有符号的数据,向右移动时,符号位一起移动。 在正数的情况下,最高有效位补充0,在负数的情况下,编码比特为1,最高有效位是补充0还是补充1取决于编译系统的规定。 涡轮C和许多系统被定为候补1。

主()。

无符号a,b;

printf (输入编号: );

scanf('%d ',a );

b=a5;

b=b15;

printf(a=%d/TB=%d/n )、a、b );

}

再看一个例子!

主()。

char a='a ',b='b ';

int p,c,d;

p=a;

p=(p8 )|b;

d=p0xff;

c=(p0xff00 ) 8;

printf (a=% d/nb=% d/NC=% d/nd=% d/n )、a、b、c和d );

}

【c语言位运算符的使用方法】相关文章:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。