LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 938|回复: 3

递归秀

[复制链接]
发表于 2007-8-26 18:18:33 | 显示全部楼层 |阅读模式
[HTML]
#!/bin/bash
# Bash shell 递归秀

function recursion(){
let k=${1}+1
if [ $k -ge 10 ]; then
  # 到达边界
  echo "顶点,即将返回。step $i: $k"
  return $k
else
  local i=$k
  echo "前进 step $i: $k"
  # 前进的时候,前面代码已经执行了;
  recursion $k
  # 当返回的时候,将从这里继续执行。
fi
echo "返回 step $i: $k"
}
recursion 0
[/HTML]
发表于 2007-8-26 22:28:58 | 显示全部楼层
let k=${1}+1
这是啥意思啊?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-27 01:13:24 | 显示全部楼层
let k=${1}+1
测量最大深度。
回复 支持 反对

使用道具 举报

发表于 2007-8-27 11:28:37 | 显示全部楼层
let k=${1}+1
就是对k进行赋值:把函数的第一个参数(${1},$1表示第一个参数,在shell中用${1}是为了稳妥起见)加上1,然后赋给k这个全局变量
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表