国产九九热视频-国产九九精品视频-国产精自产拍久久久久久蜜-国产精自产拍久久久久久-国产精在线-国产精亚洲视频

以文本方式查看主題

-  曙海教育集團論壇  (http://www.hkzrsy.com/bbs/index.asp)
--  C++語言開發  (http://www.hkzrsy.com/bbs/list.asp?boardid=63)
----  C++/Object Pascal中循環結構的一點差異及討論  (http://www.hkzrsy.com/bbs/dispbbs.asp?boardid=63&id=2425)

--  作者:wangxinxin
--  發布時間:2010-12-10 14:15:51
--  C++/Object Pascal中循環結構的一點差異及討論

雖然在所有的編程語言之中,程序的執行都無非是順序、分支和循環等幾種結構,比如說,C中的if…else,switch…case,while和do…while, 以及Pascal中的if…then…else,case…of,while…do,repeat…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);

var

  i, j : integer;

  index : integer;

  str : string;

begin

  i := 0;

  j := 3;

  for index:=0 to j do begin

    Inc(i);

    if j<5 then Inc(j);

  end;

  str := IntToStr(i);

 

  i := 0;

  j := 3;

  index := 0;

  while index<=j do begin

    Inc(i);

    if (j<5) then Inc(j);


主站蜘蛛池模板: 玉田县| 滦南县| 高邑县| 迁西县| 道真| 澜沧| 武山县| 彭泽县| 古田县| 达孜县| 浠水县| 桐梓县| 台安县| 西青区| 灵宝市| 南阳市| 曲阳县| 玉田县| 绵竹市| 阳江市| 苍山县| 湘潭县| 遵义市| 辰溪县| 扎兰屯市| 库车县| 霞浦县| 崇信县| 定襄县| 昌黎县| 朝阳市| 鄂州市| 江油市| 乌鲁木齐市| 会理县| 周口市| 定陶县| 章丘市| 宝清县| 四平市| 平江县|