Chinaunix首页 | 论坛 | 博客
  • 博客访问: 656246
  • 博文数量: 150
  • 博客积分: 4070
  • 博客等级: 中校
  • 技术积分: 1795
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-23 21:44
文章分类

全部博文(150)

文章存档

2012年(1)

2011年(123)

2010年(26)

分类: C/C++

2011-06-14 15:08:47

1、逻辑运算符 &&

b                    a

true

false

true

true

false

false

false

false

 
 
 
 
a&&b,只有a和b同时为真时,a&&b才为真,因此只有当a为真时,b才会执行判断。
例子:
  1. int a = 0, b = 0;
  2. if (a++&&b++)
  3. {
  4.     a++;
  5. }
  6. cout<<a<<" "<<b<<endl;
输出结果为:1 0;因为a++&&b++中前面的条件为假,于是b++不会执行。
 
2、逻辑运算符 ||

b                    a

true

false

true

true

true

false

true

false

 
 
 
 
 a||b,只有当a和b同时为假时,a||b才为假。因此只有当a为假时,b才会执行。
例子:
  1. int a = 0, b = 0;
  2.     if (a||++b)
  3.     {
  4.         a++;
  5.         b++;
  6.     }
  7.     cout<<a<<" "<<b<<endl;
输出结果为:1 2.
 
3、三目运算符 ?:
   A ? B : C
   当A为真时,B被计算,A为假时,C被计算,即B和C不会同时被计算。
   例子1:  
  1. int a = 0, b = 0;
  2. int result = a ? a++:b++;
  3. cout<<a<<" "<<b<<endl;
输出结果为:0 1。
   例子2:
 
  1. int a = 1, b = 0;
  2.     int result = a ? a++:b++;
  3.     cout<<a<<" "<<b<<endl;
输出结果:2 0。
 
 
阅读(995) | 评论(0) | 转发(0) |
0

上一篇:类的基本知识

下一篇:变量与零值比较

给主人留下些什么吧!~~