
TCL语言
-
2023年3月20日发(作者:陈昂)TCL语⾔笔记:TCL中的数学函数
⼀、TCL数学函数列表
函数名说明举例
abs(arg)取绝对值seta–10;#a=-10seta[exprabs($a)];#a=10
acos(arg)反余弦setp1.0;seta[expracos($p)=>a=0.0
asin(arg)反正弦
atan(arg)反正切
atan2⽐值取反正切
ceil(arg)返回不⼩于arg值的整数值
cos(arg)余弦
cosh(arg)双曲余弦
double(arg)转换双精度
exp(arg)exp运算(e的幂)
floor(arg)
fmod取余(结果为浮点型)
hypot(x,y)根据直⾓三⾓形两直边长度计算出斜边长度
int(arg)取整
log(arg)⾃然对数
log10(arg)以⼗为底的对数
pow幂运算
rand()取0到1之间的随机实数数
(⽆输⼊参数)
seta[expr10*[exprrand()]];0到10之间随
即实数
round(arg)四舍五⼊取整数%seta[exprround(10.5)];=>11
sin(arg)
sinh(arg)
sqrt(arg)求⼆次根
srand(arg)以整数arg为随机数⽣成器的种⼦产⽣随机数
tan(arg)
tanh(arg)
⼆、incr命令
incr命令根据指定的步长来增加或减少参数的值。当步长为负时,减少参数值;当步长为正
时,增加参数值。默认步长为+1。
seta10;incra
=>a=11
seta10;incra–1
=>a=9
三、字符串函数
命令描述
append将值追加到字符串尾
binary⼆进制字符串操作
format字符串格式化
format字符串格式化
regexp正则表达式(⽤于字符串模式匹配)
regsub⽤正则表达式进⾏字符串模式匹配和替换
scan字符串分解
stringoptions字符串操作和命令集
subst字符替代(替代特殊字符)
命令
append命令⽐较简单,它将⼀段字符串连接到另⼀字符串尾部从⽽组成新的字符串。此命令对变量直接修改。
[语法]:appendvarName?value?
setvar1Hello
setvar2World
appendvar1$var2
=>HelloWorld
puts$var1
=>HelloWorld;#var1的内容被更改!
命令
format命令和C语⾔中的printf和sprintf命令类似。它根据⼀组格式说明来格式化字符串。此命令不会改变被操作字符串的内容。
[语法]:formatspecvalue1value2...
spec变元包含了格式说明关键词和附加⽂字。使⽤%来引⼊⼀个关键词,后跟0个或者多个修饰符,然后使⽤⼀个转换格式符结尾。
关键词的基本格式是“%aaaB”:aaa是修饰符,B代表⼀种格式转换符。例如%f⽤于将对应位置的参数转化为浮点数。如果要使⽤”%”号,则可以使⽤%%来实现。否则
会将%后的字符作为关键词来处理。
setres[format"%2$s"159]
=>5
%puts$res
=>5
setstr[format"%3$s%1$s%2$s""are""right""You"]
=>Youareright