c语言中i&&arr[i-1]>ivalue;这个判定语句怎么理解?

2022-03-19 综合 57阅读
主要需要注意运算符的优先级以及短路运算,首先看i的值,如果i为0值,则整个表达式的值直接返回0,其他部分都不计算,这是第一种情况;如果i为非0值,继续看优先级,在这个表达式中,优先级最高的是方括号运算符,也就是取数组下标,所以先计算arr[i-1]把对应元素取出,然后是大于号运算符,判断是否满足大于的条件,结果为0(代表假)或者1(代表真),最后结果是该判断条件的结果逻辑与i的值,此时i为非0值(代表真),所以最终结果就是看是否满足大于号的条件。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com