繁体   English   中英

递增运算符和“未定义的行为”

[英]Increment operators and “undefined behaviour”

comp.lang.c FAQ中所述,C标准规定:

在前一个和下一个序列点之间,对象的存储值最多只能通过表达式的计算修改一次。 此外,只能访问先前值以确定要存储的值。

但是,这篇(现已删除的)文章a = ++b + ++c; 未定义。 有人可以解释为什么这是未定义的行为?

假设涉及的对象( abc )在表达式a = ++b + ++c; 是不同的,表达是明确的。

也许,作者意味着两次使用相同的变量,例如a = ++b + ++b; 我只能推测。 但是在给定的表达式中没有任何不确定性。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM