亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

C++中重復調用memcpy函數,會導致內存不斷增加是怎么回事?

C++中重復調用memcpy函數,會導致內存不斷增加是怎么回事?

C++
慕俠2389804 2018-08-15 11:14:30
for(int i = 0 ; i < numOfTraces ; i++){        TraceClass *trace = new TraceClass();        qDebug() << trace;        printf("ii=%d,size =%d\n",i,sizeof(TraceClass));        trace->readTraceHead(fmp);        delete trace;        trace = NULL;        fmp += 240 + 4L * samples;        progress->setValue(i+1);        qApp->processEvents(QEventLoop::ExcludeUserInputEvents);        if(progress->wasCanceled()){            inLineHashMap.clear();            xLineHashMap.clear();            return false;        }    }voidTraceClass::readTraceHead(uchar*fmp){char*s;longtemplong;shorttempshort;memcpy(&templong,fmp,4);fmp+=4;s=(char*)&templong;TraceHead.TRACENUMBERLINE=BinToLong(s);//001-004 }(1)如果把fmp +=240 + 4L * samples;注釋掉,運行程序,內存不會變化很大;(2)如果把memcpy這句話注釋掉,內存不會飆升,如果不注釋掉,內存上升很快達到G。             請了解的大神指教
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 1076 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號