股息为零时 % 5 的意外行为
我有以下代码
#include <iostream>
#include<exception>
#include <cstdlib>
int main(){
for (int i = 0; i < 100; i++) {
std::cout << i << " ";
if (i % 5 == 0) {
abort();
}
}
}
,但它只写 0 并说调用了 abort 为什么?我认为它应该输出 0 1 2 3 4 然后退出程序是吗?
I have following code
#include <iostream>
#include<exception>
#include <cstdlib>
int main(){
for (int i = 0; i < 100; i++) {
std::cout << i << " ";
if (i % 5 == 0) {
abort();
}
}
}
but it only writes 0 and says that abort was called why? i think it should ouput
0 1 2 3 4 and than exit program yes?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
将
%
视为“除法后的余数”。0 / 5
等于 0 余数为 0。Think of
%
as "remainder after division."0 / 5
equals 0 with a remainder of 0.当
i
为0时,0 % 5
等于0when
i
is 0,0 % 5
equals 0