c语言,如图的代码为什么是输出False?

如题所述

首先||运算符的结合方向是由左向右的,所以会先执行f()
而在f()中又将p赋值为0,且f()固定返回0
所以if中显示||左边是0,然后||右边也是0
最终结果if条件为假,输出False
这里引申一下,由于p是定义的全局变量,这才可以在f()中改变其值,如果p作为参数传递到函数中,则函数结束后p本身的值并不会改变。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-10-19
f()||p的执行顺序是从左到右,先判断f(),再判断p
f()执行完以后,p的值就已经变成0了,所以f()||p的结果等同于0||0
在C语言里0就是false,所以结果就是false||false,就是false本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网