在DEBUG 的时候出现了以下的语句:
HEAP[]: Free Heap block 14d6ee0 modified at 14d75cc after it was freed

解决方案 »

  1.   

    malloc之后得到p,free之后
    要p = NULL
      

  2.   

    这个错误使得程序在退出的时候发生错误,另外,当我在程序中将nTimerID=timeSetEvent(nInterval,nTimerRes,TimerProc,NULL,TIME_PERIODIC);这句话删掉后,程序在退出时就没这个错误,
    奇怪的是,即使我的void PASCAL TimerProc(UINT uID,UINT uMsg,DWORD dwUser,DWORD dw1,DWORD dw2)
    函数里一行程序也没有,只要执行nTimerID=timeSetEvent(nInterval,nTimerRes,TimerProc,NULL,TIME_PERIODIC)
    程序在退出的时候就会出错
      

  3.   

    你退出程序前用了 timeKillEvent没有?
      

  4.   

    字面意思就是在释放了指针以后又使用了内存。一般对于指针在释放以后需要将其置为NULL。如果是还需要再次分配最好能重新new一个。呵呵。
      

  5.   

    这个错误使得程序在退出的时候发生错误,另外,当我在程序中将nTimerID=timeSetEvent(nInterval,nTimerRes,TimerProc,NULL,TIME_PERIODIC);这句话删掉后,程序在退出时就没这个错误,
    奇怪的是,即使我的void PASCAL TimerProc(UINT uID,UINT uMsg,DWORD dwUser,DWORD dw1,DWORD dw2)
    函数里一行程序也没有,只要执行nTimerID=timeSetEvent(nInterval,nTimerRes,TimerProc,NULL,TIME_PERIODIC)
    程序在退出的时候就会出错
      

  6.   

    退出前已经使用了 timeKillEvent