初始化(賦初值)的重要性


去掉調試信息,程序時好時壞;加上調試信息,程序好了。一個復雜且大的程度,不能調試是非常要命的。沒有初始化,是可能原因之一。
下面舉例說明:
int GetMax(int data[],int iNum)
{
 int iMax ;
 printf("GetMin 0X%x/n",iMax);
 for(int i = 0 ; i < iNum ; i++ )
 {
  if(data[i] > iMax)
   iMax = data[i] ;
 }
 return iMax;
}

void CTest0729Dlg::OnButton1()
{
 int a[] = {3,2,1,-3,-1};
 
 int y  = GetMax(a,5);
 CString strMess ;
 strMess.Format("%d",y);
 AfxMessageBox(strMess);
}
Debug版結果為3(正確),Release版為5(錯誤,根本沒5),將“Optimizations”設置成“Disable(Debug)”結果為1243280。
解決方法“int iMax ;”改為“int iMax=0 ;”


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com