我的程序跑了一百或一千次之后死掉,是一个抓包程序,程序的主要部分就是在一个while循环里,然后就是不知跑了一百次还是一千次,出现bug了,我想设一个条件断点,跟踪到它出错的地方,怎么做,谢谢!!!!!

解决方案 »

  1.   

    写Log或者TRACE,VS 2005以上可以加跟踪点,类似TRACE,但是功能更强大
      

  2.   

    log是什么意思啊,怎么用啊,能说详细点吗
      

  3.   

    楼主在debug下编译时是否有注意编译警告之类的,平时调试是否有忽略过ASSERT
    这些都是你程序运行中潜在的问题
      

  4.   

    log就是日志,写文件记录程序运行信息。你这种错误不适合调试,因为可能调试n多次都没错误,那只有用写日志的办法,把程序运行时一些变量值,流程跳转等信息记录到文件,到出错了检查日志。如果不确定错误在什么地方,可以先普遍撒网,在认为可能出错的地方写个日志,拿怕是往文件里写个1,2,3,4的编号也行,到出错了看日志,比如最后只有123记录了下来,就说明错误在写完3和到写4之间的代码段,定位后再详细查错。
      

  5.   

    #include   <math.h>   
      #include   <stdio.h>   
        
      void   main(   void   )   
      {   
            double   x   =   9000.0;   
            double   y;   
        
            y   =   log(   x   );   
            printf(   "log(   %.2f   )   =   %f\n",   x,   y   );   
            y   =   log10(   x   );   
            printf(   "log10(   %.2f   )   =   %f\n",   x,   y   );   
      }
    这个里面log的作用是什么,我不知道调试时怎么用log,能介绍详细一点吗
      

  6.   

    f5运行--》崩溃后点击“重试”,这个时候回到vc--》工具栏右击调出“call stack”看在哪里挂了
      

  7.   

    加个条件就行了if(i==100)
    {
    在这里设置断点
    ......
    }