代码1:
int i = 3;
if(i++>3) //括号内的结果为假
,
代码2:
int i = 3;
if(++i>3) //括号内的结果为真
代码3:
int i = 3;
if((i++)>3) //括号内的结果为假
为什么,我讲一下我的疑问,我知道算数运算符比比较运算符优先级更高,按道理无论i++>3或++i>3,不应该是i先自增,在进行判断吗?如代码1与代码2,结果++i>3正确(true),而i++>3错误(false)。而如果我将i++>3加个括号,如代码3
if((i++)>3) 不是应该先执行i的自增在判断吗,结果却是错误(false),为什么,小白求解!!!!
狼Corazn
Hevily
慕粉3291149
慕运维5847892
慕的地6079101
flwcy4027460
自在繁星
慕UI8820655
qq_匡璐_0
相关分类