|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <stdio.h>
- int main() {
- int a = 3, b = 5;
- (a = 0) && (b = 3);
- printf("a=%d, b=%d\n", a, b);
- (a = 1) || (b = 3);
- printf("a=%d, b=%d\n", a, b);
- return 0;
- }
复制代码
视频里讲解短路求值的例子,为什么逻辑表达式可以这样用(平常见到的都是在循环里没见过直接出来的),它的效果是什么
首先你应该明白这&&和||号的作用吧,然后你的问题写在注释里了,如下:
- #include <stdio.h>
- int main() {
- int a = 3, b = 5;
- (a = 0) && (b = 3);//效果就是执行a=0;由于a=0导致这一行的结果已经注定为假也就是0了,所以b=3没执行,所以b仍=5;
- printf("a=%d, b=%d\n", a, b);
- (a = 1) || (b = 3);//效果就是执行a=1;由于a=1导致这一行的结果已经注定为真也就是1了,所以b=3仍没执行,所以b仍=5;
- printf("a=%d, b=%d\n", a, b);
- return 0;
- }
复制代码
满意的话给个最佳答案吧亲  
|
|