u8 AotoCompenAppro(u16 yzs)
{
u16 b[10];
u8 min=0,i;
AotoCompenInit();
for(i=0;i<32;i++)
{
if(AotoCompenEvent.Map.CapacityValue[i]>yzs)
{
b[i]=AotoCompenEvent.Map.CapacityValue[i]-yzs;
}
else
{
b[i]=yzs-AotoCompenEvent.Map.CapacityValue[i];
}
}
for(i=0;i<32;i++)
{
if(b[i]<b[min])
{
min=i;
}
}
//min=(b[i]<b[min])?i:min;
return min;
}
这是我写的一个排序的函数,程序只要一调用就跑飞了,我单步跟这个函数,发现可以正常运行,return返回的值也正常,但是一运行完,程序就飞了。 |