Objective-C中的模运算符返回错误的结果

当我在Objective-C中进行模运算时,我得到的结果有点吓人了. -1%3出来是-1,这是不正确的答案:根据我的理解,应该是-2.2%3出来到-2,这也是不对的:应该为1.

除了%运算符之外,我还应该使用另外一种方法来获得正确的结果吗?

解决方法

Objective-C是C99的超集,C99定义当a为负时,%b为负.另见 the Wikipedia entry on the Modulo operationthis StackOverflow question.

像(a> = 0)? (a%b):((a%b)b)(未经测试,可能有不必要的括号)应给您所需的结果.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...