A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© yuyang 中级黑马   /  2014-12-28 23:01  /  1034 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*

   什么是逻辑运算符的短路问题:

       &&   口诀:一假为假  

       A && B
  
       如果 A为假(0) 结果为假 ,B就不执行了,这就是 逻辑与短路

       ||   口诀:一真为真
  
       A || B

       如果 A为真(1) 结果为真,B就不执行了,这就是逻辑或的短路



*/


#include <stdio.h>

int main(int argc, const char * argv[]) {
   
    int x,y,z,result=-1;
    int a=3,b=4;
    x = y = z =0;
    //       ++x || (++y && z++)   x = 1,y=1,z=1;
    //         1 || 1    &&  1
   
    //实际:   逻辑或短路了
    //result = (++x) || ((++y) && (z++));
    // result ?   x,y,z
   
    //实际:   逻辑与短路了
    result = x && y++;   //result 0    x = 0  y=0
   
    //result = a<2 && b==4 || a<5;   //0
   
    printf("result = %d\n",result);
    printf("x = %d,y = %d,z = %d\n",x,y,z);
   
   
    return 0;
}

4 个回复

倒序浏览
逻辑运算在程序里面用的还是比较多的吧
回复 使用道具 举报
这东西理解就好了吧,没必要整套路去背
回复 使用道具 举报
浅听 发表于 2014-12-28 23:03
逻辑运算在程序里面用的还是比较多的吧

还好!!!!!!!!
回复 使用道具 举报
浅听 发表于 2014-12-28 23:03
逻辑运算在程序里面用的还是比较多的吧

还好!!!!!!!!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马