鸿 网 互 联 www.68idc.cn

当前位置 : 服务器租用 > 手机系统开发 > J2ME > >

注释代码定位bug

来源:互联网 作者:佚名 时间:2015-09-25 05:38
一、初步 定位 ,必须找到问题 代码 的大致位置 方法: 1. 注释 掉可疑的 代码 void get_display ( ) { int i , j ; . . . # if 0 for ( i = 0 ; ; i + + ) { j = i ; } # endif . . . } 二、关键函数内 定位 1.有限次处理 外面指定处理次数, 局部处理,在
一、初步定位,必须找到问题代码的大致位置
方法:
1.注释掉可疑的代码

  1. void get_display()
  2. {
  3. int i, j;
  4. ...
  5. #if 0
  6. for ( i = 0; ; i++ )
  7. {
  8. j = i;
  9. }
  10. #endif
  11. ...
  12. }
 二、关键函数内定位
1.有限次处理
外面指定处理次数,
局部处理,在中间返回

  1. void get_display()
  2. {
  3. static int _stop = 0;
  4. int i, j;
  5. ...


  6. for ( i = 0; ; i++ )
  7. {
  8. j = i;
  9. }
  10. if ( _stop ++ >= 2 ) return ;
  11. ...
  12. }

2.定位到一个自我感觉与BUG无关的代码,但是还是要修改里面的关键数据,实际测试。
3.定位到函数,要把函数的每行代码都看下来,不能看头不看尾

  1. void get_display()
  2. {
  3. int i, j;
  4. ...


  5. for ( i = 0; ; i++ )
  6. {
  7. j = i;
  8. }
  9. ...    //不能在只看到这里就结束
  10. g_display = i;
  11. }

4.不懂的函数要查

  1. void get_display()
  2. {
  3. int i, j;
  4. ...


  5. for ( i = 0; ; i++ )
  6. {
  7. j = i;
  8. }
  9. ...
  10. XSetClipRectangle(m_display, m_gc, 0, 0, 1024, 768);
  11. g_display = i;
  12. }
查查这个函数XSetClipRectangle,
改改里面的值,看看有什么效果。XSetClipRectangle(m_display, m_gc, 0, 0, 0, 0);

网友评论
<