daxiazaiwusi
daxiazaiwusi
2016-03-06 01:16
采纳率: 100%
浏览 1.4k
已采纳

C语言运算符重叠的问题C语言运算符重叠的问题

C语言&和&&的区别是什么,*和**的区别又是什么

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • caozhy
    已采纳

    &是位运算,&&是逻辑运算。
    比如说 a=1 b=2 &&出来是true,但是&出来是0,就是false
    是指针,也是乘法
    *
    是二级指针
    一些语言中**表示乘方,但是C语言不支持。

    点赞 评论
  • u013596119
    u52983610 2016-03-06 02:37

    补充楼上的

    &:位运算, 比如a&b,a=1,b=2,二进制a 01,b 10,&就是二进制且运算,1&1=1,0&0=0,1&0=0,0&1=0,所以a&b=01&10=0
    &&: 逻辑运算 and, true&&true=true,t&&f=f,f&&f=f

     *: 指针,或者乘号, int* p,p就是指针变量
     **: 二级指针,指针的指针
    
    点赞 评论
  • WinsenJiansbomber
    Jimbo 2016-03-06 03:07

    &和&&涉及两种运行模式,位运算和逻辑运算; * 和 ** 只是指针的运算,一个星表示运算一次。太复杂的语法结构就不要用了,比如说 i+=i---i+++i这种,写完都没有人能理解。

    点赞 评论

相关推荐