修改了一个程序,然后调试运行,发现在Debug时不会出错,程序可以正常结束,但是在Release却会报错“某某内存不能为read”。请高手指点一下这个程序大概是哪里出问题了。多谢!!

解决方案 »

  1.   

    这个怎么分析阿,最好的办法是每一步操作记录日志文件(Log文件),看看程序运行的状态或者数据是否正确。
      

  2.   

    某个指针值被改了,在DEBUG下申请内存是会多申请一些用于调试用,如果某个越界操作没有覆盖重要数据,一般很难发现问题,在RELEASE下,分配多少就是多少,所以一有越界写就会覆盖被的变量了,导致再用此变量读数据时就会出错(运气好的话,不会报错,但你会发现程序会不定期的莫名其妙的挂掉)
      

  3.   

    内存读取错误,很难确定,可以在退出的时候写一下log文件,确定发生错误的位置.
      

  4.   

    __try
    {}
    __except()
    {}SHE不是拿来面试用的,而是要用到实际当中
    GetExceptInformation
    你可以得到异常地址
      

  5.   

    你修改一下项目属性,让Release配置生成调试信息,然后按F5执行,看看是哪里出问题。