查看完整版本: 谁来看看,这是什么错?

kaizenhi 2006-3-31 18:10

谁来看看,这是什么错?

Int16 date1,date2;


date1=StrAToI(dateStr1);
date2=StrAToI(dateStr2);
                                       
if(date1==date2)
{
result==0;
}
else
{
  if(date1>date2)
    result=1;
  if(date1<date2)
    result=-1;
}
dateStr1 dateStr2是两个内容是年的字符串
我把它转化成int进行比较,但是在运行过程中,只有第一次排序的时候,可以正确的比较
得到正确的结果,以后比较的时候,还没执行if判断,它就自动给result赋值跳过if判断
把取道正确的date2值设为0,返回,进行下依次排序的判断,这是怎么回事呀!

bambon 2006-3-31 20:19

不用放判断语句吧?
直接
result = date1-date2
就好了

kaizenhi 2006-3-31 21:01

是呀,我好傻呀,谢谢老大!唉,思维短路了,不过这问题真奇怪呀,把我的断点都跳过去了!

页: [1]
查看完整版本: 谁来看看,这是什么错?