在同一个表达式中对不同变量使用++或 - 运算符是否会调用UB?

时间:2015-01-03 09:34:15

标签: c increment decrement

我想知道在相同的表达式未定义行为中是否对不同变量使用增量(++)或减量(--)运算符;如

int i=1,j=2;
int k=i++ + j++;

在上面的代码中,clangGCCvck的值为3。

1 个答案:

答案 0 :(得分:5)

  

在同一个表达式中的不同变量上使用++或 - 运算符是否会调用UB?

没有。它不会调用未定义的行为。您可以在不同对象的表达式中使用++--任意次。在这种情况下,每个变量仅在两个序列点内修改一次。