LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: yuanbo203

我想知道 $i=$i+1 与 let "i=$i+1" 有什么区别?谢谢

[复制链接]
发表于 2007-3-21 13:35:41 | 显示全部楼层
Post by gradetwo
楼上的问题好像是因为let与expr运算实现机制不同吧,具体那个文档现在一时找不到。
let 好像和expr一样转换为整数再计算----由于文档没找到,可能错误。


感觉不是因为let和expr的实现机制问题。
注意到expr的time输出中有sys的时间,个人的理解是在kernel中的系统调用产生的开销(进程切换,堆栈的操作等),导致了expr比let慢了很多。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-3-22 13:09:47 | 显示全部楼层
真是深入研究啊
向你们学习
回复 支持 反对

使用道具 举报

发表于 2007-3-23 12:32:20 | 显示全部楼层
let is built-in, no subshell fork (fastest), but expr does. that's why you will see content switches in kernel.
回复 支持 反对

使用道具 举报

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

本版积分规则

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