有关inspect/watch的一个疑问

原创 2007年10月05日 16:09:00

当代码中出现i++,然后我用inspect 监测或者watch到expression中后,就会发现i++被当作程序中的代码执行了;

也就是说i开始如果为0的话,则程序执行了多少次,i+1就执行了多少次,此时i值就变了!

eg:

package charpter06;

public class Testi {

 /**
  * @param args
  */
 public static void main(String[] args) {
  // TODO Auto-generated method stub
           int i1=0,i2=0,i3=0,i4=0,i5=0,i6=0,i7=0,i8=0,i9=0,i10=0,i11,i12=0;
           int k2,k5,k9,k10;
           for(int j=0;j<5;j++){
/* 
*    int i = 0;
i=i++;
这个效果如下:
int temp = i++;//this : temp = 0; i =1(that's:i+1);
i = temp;//this: i =0;
因此: i=i++; 相当于什么都没有做,在有的IDE里,它会告诉你这个代码是废代码!   */ 
            i1 =i1++;// * means:int temp= i1; i1=i1+1;i1=temp;
            k2 =i2++; //means: int k2 =i2;i2=i2+1;
            i3++;//means: int temp = i3; i3 = i3 +1;
            ++i4;//means:i4 = i4+1; int temp = i4;
            k5 =++i5;//means:i5=i5+1; int k5= i5
            i6--;//means:int temp=i6;i6=i6-1;
            --i7;//means:i7=i7-1;int temp =i7;
            i8=i8--;// * means:int temp=i8;i8=i8-1;i8=temp
            k9=i9--;//means:int k9=i9;i9=i9-1;
            k10=--i10;//means: i10=i10-1; int k10=i10;
           
            System.out.println(" j = "+j);
            System.out.println("  i1="+i1);
            System.out.println("     i3 ="+i3);
            System.out.println("       i4 ="+i4);
            System.out.println("         i2 ="+i2+"  k2="+k2);
            System.out.println("          i5 ="+i5+"  k5="+k5);
            System.out.println("           i6 ="+i6+"  i7="+i7);
            System.out.println("             i8 ="+i8);
            System.out.println("              i9 ="+i9+"  k9="+k9);
            System.out.println("                i10 ="+i10+"  k10="+k10);
           }
           
 }
 

}

一个使用watch命令实现的多变量组合测试用例实时输出方案

当测试用例有多个变量,每个变量有一组值,我们最终需要得到一系列的用例组合。这时候将所有的用例组合起来会是一件比较头疼的事情。如何使用简单的数据结构实现这些组合在程序中的赋值,从而实时查看结果,这里大神...

每天一个 Linux 命令(48):watch命令

watch是一个非常实用的命令,基本所有的Linux发行版都带有这个小工具,如同名字一样,watch可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行。在Linux下,watch是周期性的执行下个...

为GDB编写一个智能调试信息浏览器,类似VS的watch多级结构查看功能

使用CODEBLOCKS中,发现WATCH窗口的结构体数据都是指针形式,而且下下级信息难以查看,严重影响调试信息的阅读,发现https://sourceware.org/gdb/onlinedocs/...
  • yfz0574
  • yfz0574
  • 2015年04月02日 10:09
  • 179

iWatch开发:创建一个简单的Apple watch应用

在上篇文章中,我系统的介绍了一下 iWatch 的功能,相信大家对iWatch开发 也有了一个系统的认识。今天这篇文章来跟大家说下如何创建一个简单的 iWatch app。使用 Xcode 创建 iO...

每天一个linux命令(48):watch命令

转自:http://www.cnblogs.com/peida/archive/2012/12/31/2840241.html watch是一个非常实用的命令,基本所有的Linux发行版都带有这...

每天一个linux命令(48):watch命令

watch是一个非常实用的命令,基本所有的Linux发行版都带有这个小工具,如同名字一样,watch可以帮你监测一个命令的运行结果,省得你一遍遍的手动运行。在Linux下,watch是周期性的执行下个...

答读者问(17):一个在读女硕士有关实习及如何进入企业的相关疑问

最近,我收到一位研究生的邮件,内容如下:        学长你好!        我是一名现在在XXX读XXX的学生,我本科在国内一所211工科院校读通信工程专业。在你博客中答读者问的栏目,有些对我很...
  • zhouzxi
  • zhouzxi
  • 2014年09月22日 09:25
  • 2276

答读者问(27):一个大一学生有关未来规划的疑问及答复

【来信】周老师:您好!我是山东大学计算机科学与技术学院的大一新生,自从选择了这个专业以后,经常需要看别人的技术博客来学习知识,看到您的博客后十分敬佩,您这种工作勤奋又乐于帮助他人解决疑惑的精神实在是令...
  • zhouzxi
  • zhouzxi
  • 2015年03月28日 11:40
  • 2006

一个操作系统的实现第九章源代码出错解决过程及疑问

运行chapter9/b源代码, bochs虚拟机终端会打印如下信息: Exception! --> #UD Invalid Opcode (Undefined Opcode) EFLAG...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:有关inspect/watch的一个疑问
举报原因:
原因补充:

(最多只允许输入30个字)