猿问

如何在C / C ++ / Obj-C中编码处理负数的模(%)运算符

我最讨厌C语言衍生的语言(作为数学家)是


(-1) % 8 // comes out as -1, and not 7


fmodf(-1,8) // fails similarly

最好的解决方案是什么?


C ++允许使用模板和运算符重载,但对我而言,这两者都是晦涩难懂的地方。实例感激不尽。


largeQ
浏览 567回答 3
3回答

慕神8447489

我刚刚注意到Bjarne Stroustrup标记%为余数运算符,而不是模运算符。我敢打赌,这是ANSI C&C ++规范中的正式名称,并且滥用术语已广为流行。有人知道这一点吗?但是,如果是这种情况,那么C的fmodf()函数(可能还有其他函数)将很容易引起误解。它们应标记为fremf()等
随时随地看视频慕课网APP
我要回答