while(3tcl)

NAME
while - 在條件滿足時重複的執行指令碼

總覽
while test body

描述
while 命令把 test 作為一個表示式來求值(用與 expr 求它的引數的值相同的方式)。這個表示式的值必須是一個正確的 boolean 值；如果它是真值則把 body 傳遞給 Tcl 直譯器來執行它。一旦執行了 body 則再次求值 test ，並重復處理直到最終 test 求值出一個假 boolean 值。可以在 body 中執行 Continue 命令來終止這個迴圈的當前重複操作(iteration)，並可以在 body 中執行 break 命令來導致 while 命令立即終止。while 命令總是返回一個空串。

注意: test 應該總是包圍在花括號中。如果不是，在 while 命令開始執行之前將進行變數替換，這意味著迴圈體所做的變數變更將不考慮在這個表示式中。這將很可能導致無限迴圈。如果 test 被包圍在花括號中，變數替換被推遲到求值這個表示式的時候(在每次迴圈重複操作之前)，所以變數的變化將是可見的。例如，嘗試下列指令碼並在 $x<10 兩邊分別加上和不加花括號:

set x 0
while {$x<10} {
	puts "x is $x"
	incr x
}

關鍵字
boolean 值, 迴圈, 測試, while

作者
Copyright (C) 1993 The Regents of the University of California.
Copyright (C) 1994-1997 Sun Microsystems, Inc.
Copyright (C) 1995-1997 Roger E. Critchlow Jr.

[中文版維護人]
寒蟬退士

[中文版最新更新]
2001/11/20

《中國 Linux 論壇 man 手冊頁翻譯計劃》:
http://cmpp.linuxforum.net

跋
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh