加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C:声明“返回A ||”当A> 1时,1’返回?

发布时间:2020-12-16 10:54:30 所属栏目:百科 来源:网络整理
导读:虽然我不会自己编写,但是以下语句的预期结果是什么,A(保证为零或正整数)大于1? 返回A || 1; 在许多语言中,我希望返回A,除非A的值为零,在这种情况下1将是. 我没有拿到我的C书,但我注意到实际上,值1似乎总是被返回.这是编译器优化的结果还是给出了表达式的潜
虽然我不会自己编写,但是以下语句的预期结果是什么,A(保证为零或正整数)大于1?

返回A || 1;

在许多语言中,我希望返回A,除非A的值为零,在这种情况下1将是.

我没有拿到我的C书,但我注意到实际上,值1似乎总是被返回.这是编译器优化的结果还是给出了表达式的潜在歧义,是否返回值是非确定性的?

解决方法

标准说

The || operator shall yield 1 if either of its operands compare unequal to 0; otherwise,it yields 0. The result has type int.

见standard的6.5.14节.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读