求助啊!求指点迷津,是否为内存越界啊!!
小弟现在负责的一个工程中增加了一些函数,都是很简单的函数,我自认为不会水平这么差吧! 但是就是出问题了。。
在一个测试类中增加了一个循环设置的函数,而且这个函数默认还是不执行的。 如下:
if(m_pGlobalUnit->m_bLocalLoss)
{
if (m_iBand != m_pGlobalUnit->m_iTemp)
{
for(int i = 0; i< nChannelCountPerBand;i++)
{
m_pGlobalUnit->m_pTestDevice->WCalculateUpDownFreq(m_iBandIndex ,m_fLossFreqPoint[m_iBandIndex][i],fDl_Freq[i]);
fAttn_DL[i] = fAttn_D;
}
if(!m_pGlobalUnit->m_pTestDevice->ConfigMultiLoss(fDl_Freq, m_fLossFreqPoint[m_iBandIndex], fAttn_DL, m_fLossData[m_iBandIndex], nChannelCountPerBand))
{
m_nErrorCode = ERR_SET_AUTO_LOSS;
return FALSE;
}
m_pGlobalUnit->m_iTemp = m_iBand;
}
}
后面接一个通过串口读值得函数,当for循环中的int i = 0 时没有问题, 但是当int i = 1时 在release maximize speed选项下编译的工程运行后 串口读出的测试值就失败率很高。
请问哪位大神碰到过类似的问题,是不是内存越界了。 很大一个工程定位起来很困难啊, 哪位能给出个好的方法啊