是否为x%8编写等效的C表达式?

是否为x%8编写等效的C表达式?,c,C,我刚从一次面试回来,这个问题让我很困扰。我被要求为x%8编写一个等价的表达式,但我没有得到它。我知道这和8是2的幂有关,但我就是搞不懂。这似乎是一个很棒的程序员社区,所以我希望这里的任何人都能回答这个问题。经典的面试问题x&7就是答案。(在这里发布问题之前你没有谷歌过吗?经典的面试问题x&7就是答案。(你在这里发帖之前没有搜索过它吗?x%8是一个非常有效的C表达式。@BlacklightShining事实上OP被要求使用一个等价的表达式。“在语言L中,与表达式x等价的是什么?”“对我来说,X在L

我刚从一次面试回来,这个问题让我很困扰。我被要求为
x%8
编写一个等价的表达式,但我没有得到它。我知道这和8是2的幂有关,但我就是搞不懂。这似乎是一个很棒的程序员社区,所以我希望这里的任何人都能回答这个问题。

经典的面试问题<代码>x&7就是答案。(在这里发布问题之前你没有谷歌过吗?

经典的面试问题<代码>x&7就是答案。(你在这里发帖之前没有搜索过它吗?

x%8
是一个非常有效的C表达式。@BlacklightShining事实上OP被要求使用一个等价的表达式。“在
语言L
中,与
表达式x
等价的是什么?”“对我来说,X在L中是无效的。
X%8
是一个完全有效的C表达式。@BlacklightShining事实上OP被要求使用一个等价的表达式。“在
语言L
中,
表达式X
的等价物是什么?”对我来说,X在L中无效。谷歌页面是否也提到了股息为负时会发生什么?C99保持红利符号,所以<代码>(-11% 8)= -3 < /C>,而<代码>(-11和7)=5 < /Cord>。@ WhozCraig,您可能需要添加它是为C++ ISO 1998定义的实现。@ DeNoLo不开玩笑。这个看似简单的解决方案已经被抛在C和C++之间的更多标准上。这些年来。@WhozCraig是的,确实给了我一些洞察。@darshandzend我之所以提出这个问题,是因为当我在采访中被问及这个问题时,这是一个令人敬畏的澄清。这是一种风险(向提问者澄清我们在制定答案时将使用的标准),但在大多数情况下,面试官从一开始就没有考虑过这一点=PDid谷歌页面也提到了股息为负时会发生什么?C99保持红利符号,所以<代码>(-11% 8)= -3 < /C>,而<代码>(-11和7)=5 < /Cord>。@ WhozCraig,您可能需要添加它是为C++ ISO 1998定义的实现。@ DeNoLo不开玩笑。这个看似简单的解决方案已经被抛在C和C++之间的更多标准上。这些年来。@WhozCraig是的,确实给了我一些洞察。@darshandzend我之所以提出这个问题,是因为当我在采访中被问及这个问题时,这是一个令人敬畏的澄清。这是一种风险(向提问者澄清我们在制定答案时将使用的标准),但在大多数情况下,面试官从一开始就没有考虑过这一点=P