关系操作符和条件操作符
操作符很不直观,很麻烦哦
其实比起汇编来看,就好多啦~~!
这次换个分析格式。
下载: 1.5.c
- #define PRINT(INT) printf(#int "=%d\n",int)
- main(){
- int x=1,y=1.z=1;
- x+=y+=z;
- PRINT(x<y?y:x);
- /*
- 初始值:x=3,y=2,z=1
- ((x<y)?(y):(x))
- (FALSY?(y):(x))
- ((X))
- (3)
- 3
- */
- PRINT(x<y?x ++ : y ++);
- PRINT(x); PRINT(y);
- /*
- 初始值:x=3,y=2,z=1
- ((x<y)?(x ++) : (y ++)
- (FALSE?(x ++) : (y ++)先对条件求值
- ((y++))
- (2)此时y=3
- */
- PRINT(z+=x<y?x ++ : y++);
- PRINT(y); PRINT(z);
- /*
- (z+=((x=y>=x)?1:0);
- PRINT(z>=y && y>=x);
- }
- ?>

Comments
还没有评论。
发表评论