我尝试查看我的代码,但找不到问题。我做错了什么 ?虽然我认为是 l=ats/(s/60)
造成的。
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int ats=7,v1=12,v2=12,m1=30,m2=40,g=70,l,s;
s=abs(((v2*60+m2)-(v1*60+m1))%60);
l=ats/(s/60);
cout << l;
return 0;
}
最佳答案
整数除以零。这是 C++ 中未定义的行为。
由于模数的原因,s
永远不会大于 59。
s/60
将始终为零,因为整数除法会截断。
关于c++ - 是什么导致这个程序崩溃?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33547586/