Manpages

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