gpt4 book ai didi

c++ - 为什么浮点异常?

转载 作者:太空宇宙 更新时间:2023-11-04 14:58:36 25 4
gpt4 key购买 nike

我有一个浮点异常,我不知道为什么。

代码是这样的:

void calcola_fitness(){
vector<double> fitness;
int n=nodes.size();
int e=edges.size();
int dim=feasibility.size();
int feas=(feasibility[dim-1])*100;
int narchi=numarchicoll[dim-1]/e;
int numero_nodi=freePathNode.size()/n;
double dist_start_goal=node_dist(0,1);
int i,f,t;
double pathlenght=0;
int siize=freePathNode.size();
for(i=0;i!=siize-1; i++){
f=freePathNode[i].getIndex();
i++;
t=freePathNode[i].getIndex();
i--;
pathlenght=pathlenght+node_dist(f,t);
}
double pathlenghtnorm=pathlenght/10*dist_start_goal;
double fit=((double)numero_nodi+pathlenghtnorm+(double)narchi)*((double)feas);
fitness.push_back(fit);
}

有人能帮帮我吗?有什么问题?我能解决这个问题吗?非常感谢

最佳答案

"Floating point exception" (SIGFPE)实际上是用词不当。任何类型的算术异常都会触发 SIGFPE。这包括除以零。

您应该检查 nodesedges 是否为空。

关于c++ - 为什么浮点异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2453865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com