C++/Object Pascal中循环结构的一点差异及讨论[1]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 weizhisheng 的 blog

 

c++/object pascal中循环结构的一点差异及讨论

 

虽然在所有的编程语言之中,程序的执行都无非是顺序、分支和循环等几种结构,比如说,c中的if…elseswitch…casewhiledo…while 以及pascal中的if…then…elsecase…ofwhile…dorepeat…until,几乎就是一一对应的关系,只不过语法上有小小的差异而已。这样的相似性使得我们在掌握一门语言之后,再学习其他语言就容易得多了。然而,语言之间的不同是细微而琐碎的,如果不注意这些差别的话,它们迟早会从不知哪个角落跳出来,让程序员陷入debug的噩梦。

 

让我们来看一个例子。我们知道在一般的循环结构中,fo循环和while循环是可以转换的,例如,在pascal

for i:=startvalue to endvalue do …

可以转换成相应的while 循环:

i:=startvalue;

while i<=endvalue do begin

  

   inc(i);

end;

看起来,这两种循环是完全一样的。别忙,真的完全一样吗?下面是一段delphi代码,你可以先心算一下,看得出来的结果应该是多少:

procedure tform1.formcreate(sender: tobject);

本文关键:Delphi,Object Pascal,C++
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top