c语言中按位异或运算,^按位异或运算符「建议收藏」

c语言中按位异或运算,^按位异或运算符「建议收藏」^表示按位异或运算符,顾名思义,相异,即不同则为1,反之为0例如15和16进行异或运算,运算过程如下:15000000000000000000000000000011111600000000000000000000000000010000^——————————————000000000000…

大家好,又见面了,我是你们的朋友全栈君。

^表示按位异或运算符,顾名思义,相异,即不同则为1,反之为0

例如15和16进行异或运算,运算过程如下:15 0000 0000  0000 0000  0000 0000  0000 1111

16 0000 0000  0000 0000  0000 0000  0001 0000

^ ——————————————

0000 0000  0000 0000  0000 0000  0001 1111

可以看到,经过按位异或运算后,其结果变成十进制应为31,大家务必弄清楚运算过程,然后再上机验证,代码如下:#include

int main()

{

int a;

a=15^16;

printf(“a=%d\n”,a);

return 0;

}

运算结果为:a=31

异或运算符的作用指定位数的翻转

如想对某个数字的低4位进行翻转,则可以将这个数字与15(二进制为00001111)进行按位异或运算,既可以将原数字的低四位进行翻转,即高四位不变,低四位0变1,1变0

与0异或还是原值

大家可以自行实验,一个数字与0进行异或,结果还是原值

交换两个数字

除了之前我们学习交换两个数字需要第三个变量做中介之外,如今可以通过异或运算进行,代码如下:#include

int swap(int *a,int *b)

{

if (*a!=*b)

{

*a=*a^*b;

*b=*b^*a;

*a=*a^*b;

}

return 0;

}

int main()

{

int a=5;

int b=5;

swap(&a,&b);

printf(“a=%d b=%d\n”,a,b);

return 0;

}

可以看到原先a为3,b为5,运行后得出:a=5 b=5

请大家阅读代码理解并上机试验

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134782.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • hmily源码解读

    hmily源码解读一阶段TRYING入口点orderService.orderPayorderService.orderPay->CglibAopProxy$DynamicAdvisedInterceptor.intercept->methodProxy.invoke->OrderServiceImpl.orderPay业务…

    2022年5月22日
    38
  • 长江商学院营销学李洋教授分析大数据与精准营销

    长江商学院营销学李洋教授分析大数据与精准营销  精准营销是大数据应用领域的重要课题之一,大数据时代的精准营销可以让企业以最小的营销成本获得最大的收益。那么我们如何利用企业大数据做精准营销呢? …

    2022年7月21日
    31
  • 磁珠的作用

    磁珠的作用磁珠的作用在成品电路板上,我们会看到一些导线或元件的引脚上套有黑色的小磁环,这就是本文要介绍的磁珠。磁珠的全称为铁氧体磁珠滤波器(另有一种是非晶合金磁性材料制作的磁珠),是一种抗干扰元件,滤除高频噪声

    2022年8月5日
    3
  • goland激活3月最新在线激活

    goland激活3月最新在线激活,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    46
  • 力争群雄:2012年度IT博客大赛100强脱颖而出[通俗易懂]

    力争群雄:2012年度IT博客大赛100强脱颖而出[通俗易懂]2012年度IT博客大赛于11月20日圆满结束。这一所谓的“海选”阶段为期33天,引无数网友和博主翘首以待,来源包括51CTO、独立个人博客、其他博客服务托管商,以及今年评选新增加的分类如独立博客、学生博客和团队博客等众多博主共同参加了这一角逐,其中100位实力雄厚和人气充盈的博主获得了前100强的殊荣。他们占据了25万张票选中的8成以上份量,并将为2012年度IT博客50…

    2022年7月21日
    10
  • Mybatis笔记(2)

    Mybatis笔记(2)

    2021年11月11日
    44

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号