tcl常用命令笔记--循环

Tcl--循环

Tcl里的循环主要就是while和for循环,循环也可以嵌套使用。

while

只要给定的条件为真,就会重复执行目标代码。

while {condition} {

        body...

}

body部分能不能执行全由condition决定,有可能一直执行也有可能一次都不执行。比如condition为定值1,那body部分就会被一直执行也就是死循环(terminal里ctrl+c能打断),若condition为定值0,那body部分就会被忽略,可应用为多行注释。

#!/usr/bin/tclsh

set var1 0

set var2 1

while {$var2 < 100} {

         set var1 [expr $var1 + $var2]

         incr var2

}

puts "$var1"

执行结果为

4950

For

基本结构如下:

for {init} {condition} {incr} {

        body...

}

初始化部分仅循环开始执行一次,若不需要在此处添加任何语句,可以用分号代替;

condition为true则执行循环主体;

执行循环体后则流程跳到incr部分,用于更新循环控制变量,也可以是空白,用分号;

执行incr部分后再次判断条件,若为true则继续执行循环体。

比如上面例子替换成for语句为:

#!/usr/bin/tclsh

for {set var1 0;set var2 1} {$var2 < 100} {incr var2} {

         set var1 [expr $var1 + $var2]

}

puts "$var1"

执行结果不变

循环控制

循环控制语句可以改变循环的执行状态。

continue

使循环跳过continue后的剩余的循环体部分,并开始下一次判断条件。

#!/usr/bin/tclsh

for {set var1 0;set var1 0} {$var2 < 100} {incr var2} {

         if { $var2 == 50} {

                  continue

         }

         set var1 [expr $var1 + $var2]

}

puts "$var1"

执行结果为
4900

break

用于终止循环,当循环体内执行到break时,循环会立刻跳出,并开始执行循环以后的语句。若是嵌套循环,break只能终止break所在的那一层循环,同样也适用于switch语句。

例如将上面的代码中continue替换成break结果就会不同:

#!/usr/bin/tclsh

for {set var1 0;set var2 1} {$var2 < 100} {incr var2} {

         if { $var2 == 50} {

                  break

         }

         set var1 [expr $var1 + $var2]

}

puts "$var1"

执行结果为

1225

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值