当我意识到一些奇怪的事情并且在完成脚本之后,我正在编写一个脚本,我在一个visual studio控制台项目中测试了我的实现。为什么%运算符有时会输出正值,有时会输出负值?
class Program
{
static void Main(string[] args)
{
Console.WriteLine(-3.5 % 1);
Console.WriteLine(3.5 % (-1));
}
}
产量为:
-0.5
0.5
不宜取模运算给我在这两种情况下-0.5?
它返回余数。 Eric Lippert在其上的某个地方有一个很好的博客文章 – pinkfloydx33
仅供参考,这不是C#独有的。 SQL Server的行为相同。 – Tim
博客帖子btw:https://blogs.msdn.microsoft.com/ericlippert/2011/12/05/whats-the-difference-remainder-vs-modulus/ – pinkfloydx33