c语言中怎么对位赋值

Python026

c语言中怎么对位赋值,第1张

unsigned char x=0x56

比如要将第3位置1: x|=0x0008

要将第3位清0: x&=0xf7

将最高三位设置成101:x&=0x1fx|=0xa0

C语言中不能直接给二进制某一位赋值

但是可以通过按位操作来实现

如果你的P3是整型或者字符型的变量,可以通过“按位或”对某一位赋1,通过“按位与”对某一位赋0

P3=P3|0x40//这样就是在不改变其他位的同时给第6位赋1

0x40转换成二进制位01000000

假如:P3的值为10110010

10110010

|

01000000

结果为

11110010