所以我在琢磨这个问题(这是一道作业/考试复习题):
写下 a[j++] = ++i;
的等效表达式不使用前/后增量运算符。如果不能提供这样的表达式,请解释原因。
我能够想出以下内容:
a[j] = i+=1;<br/>
j+=1;
除了使用 j+=1;
之外,我想不出在 a[] 中将 j 作为后增量递增的方法之后我相信会导致无法提供这样的表达式的答案(因为它的两行代码而不是一行)并且只是解释你不能在没有后增量运算符的情况下后增量。
我是否遗漏了什么或者我是否正确?我只是想仔细检查一下。提前致谢。
编辑:感谢@James McNellis,他提供了一种使用方式
a[(j+=1)-1] = (i+=1);
最佳答案
这又丑又丑,但无论如何:
a[(j += 1) - 1] = (i += 1);
关于c - a[j++] =++i 的等效表达式,不使用前置或后置增量运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5086811/