在 C++ 中用负整数取模

Modulo with a negative integer in C++

为什么 -26 % 10 在 C++ 中输出 -6

如何获得标准模数,输出 4 ?


注意:这个问题可能与 this one 或许多其他问题重复,但我还没有找到一个简明扼要、一眨眼就能理解的问题。由于我个人喜欢寻找简短的问题/简短的答案(对于简单的问题),我认为其他人可能会感兴趣。我稍后会删除此通知。

需要做的

(-26 % 10 + 10) % 10

得到4.

供将来参考:

int mod(int a, int b) { return (a % b + b) % b; }