TCL语言笔记:TCL中的数学函数
一、TCL数学函数列表
函数名 |
说明 |
举例 |
abs(arg) |
取绝对值 |
set a –10 ; #a=-10 set a [expr abs($a)]; # a=10 |
acos(arg) |
反余弦 |
set p 1.0; set a [expr acos($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 之间的随机实数数 (无输入参数) |
set a [expr 10 * [expr rand()]];0 到 10 之间随 即实数 |
round(arg) |
四舍五入取整数 |
%set a [expr round(10.5)]; =>11 |
sin(arg) |
||
sinh(arg) |
||
sqrt(arg) |
求二次根 |
|
srand(arg) |
以整数 arg 为随机数生成器的种子产生随机数 |
|
tan(arg) |
||
tanh(arg) |
二、incr命令
incr 命令根据指定的步长来增加或减少参数的值。当步长为负时,减少参数值;当步长为正
时,增加参数值。默认步长为+1。
set a 10 ; incr a
=>a=11 set a 10 ; incr a –1
=> a=9
三、字符串函数
命令 |
描述 |
append |
将值追加到字符串尾 |
binary |
二进制字符串操作 |
format |
字符串格式化 |
regexp |
正则表达式(用于字符串模式匹配) |
regsub |
用正则表达式进行字符串模式匹配和替换 |
scan |
字符串分解 |
string options |
字符串操作和命令集 |
subst |
字符替代(替代特殊字符) |
1.append 命令
append 命令比较简单,它将一段字符串连接到另一字符串尾部从而组成新的字符串。此命令对变量直接修改。
[语法]: append varName ?value?
set var1 Hello set var2 World append var1 $var2
=>HelloWorld puts $var1
=>HelloWorld ;#var1 的内容被更改!
2.format 命令
format 命令和 C 语言中的 printf 和 sprintf 命令类似。它根据一组格式说明来格式化字符串。此命令不会改变被操作字符串的内容。
[语法]:format spec value1 value2 ...
spec 变元包含了格式说明关键词和附加文字。使用%来引入一个关键词,后跟 0 个或者多个修饰符,然后使用一个转换格式符结尾。
关键词的基本格式是“%aaaB”:aaa 是修饰符,B 代表一种格式转换符。例如%f 用于将对应位置的参数转化为浮点数。 如果要使用”%”号,则可以使用%%来实现。否则会将%后的字符作为关键词来处理。
set res [format "%2\$s" 1 5 9]
=>5
%puts $res
=>5
set str [format "%3\$s %1\$s %2\$s" "are" "right" "You"]
=> You are right
TCL语言笔记:TCL中的数学函数的更多相关文章
- Tcl语言笔记之二
1,表达式 1.1 操作数 TCL表达式的操作数通常是整数或实数.整数一般是十进制的, 但如果整数的第一个字符是0(zero),那么TCL将把这个整数看作八进制的,如果前两个字符是0x则这个整数被看作 ...
- TCL语言笔记:TCL基础语法
一.什么是TCL Tcl 全称是 Tool command Language.它是一个基于字符串的命令语言,基础结构和语法非常简单,易于学习和掌握. Tcl 语言是一个解释性语言,所谓解释性是指不象其 ...
- 在C语言结构体中添加成员函数
我们在使用C语言的结构体时,经常都是只定义几个成员变量,而学过面向对象的人应该知道,我们定义类时,不只是定义了成员变量,还定义了成员方法,而类的结构和结构体非常的相似,所以,为什么不想想如何在C语言结 ...
- C++中的数学函数汇总
math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有: 1 三角函数 double sin (double); double cos (double); double t ...
- c++中的数学函数
math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:1 三角函数double sin (double);double cos (double);double tan ( ...
- TCL语言笔记:TCL中的数组
一.介绍 Tcl 中的数组和其他高级语言的数组有些不同:Tcl 数组元素的索引,或称键值,可以是任意的字符串,而且其本身没有所谓多维数组的概念.数组的存取速度要比列表有优势,数组在内部使用散列表来存储 ...
- TCL语言笔记:TCL中的控制结构命令
一.引言 控制结构允许程序根据不同的状态.条件和参数来选择不同的处理和执行路径,从而使代码具有更强的灵活性.健壮性和可读性. Tcl 提供了 if.if/else.if/elseif.foreach. ...
- TCL语言笔记:TCL中的列表操作
一.介绍 列表则是具有特殊解释的字符串.Tcl 中的列表操作和其它 Tcl 命令一样具有相同的结构.列表可应用在诸如 foreach 这样的以列表为变元的循环命令中,也应于构建 eval 命令的延迟命 ...
- TCL语言笔记:TCL中的String命令
一.介绍 字符串是 Tcl 中的基本数据类型,所以有大量的字符串操作命令.一个比较重要的问题就是模式匹配,通过模式匹配将字符串与指定的模式(格式)相匹配来进行字符串的比较.搜索等操作. 二.strin ...
随机推荐
- CSS3 animation小动画
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...
- linux下配置Apache基于加密的认证访问
1.首先要确认安装了 mod_ssl模块 我的机器是centos是系统,执行下面命令 yum install -y mod_ssl 2.用openssl工具生成密钥,证书请求文件,证书 在/usr/l ...
- Linux下ThinkPHP网站目录权限设置
在windows上运行好好的项目,迁移到Linux上就遇到了很多问题,其中最为重要的是网站目录权限的设置,当然简单期间你可以用 命令 "chmod 777 -R you web site&q ...
- 关于angularJS与jquery在使用上的一些感悟
最近做的项目中,有同时用到angularJS与jquery两种JS框架. 在使用过程中发现,angularJS的用法更像是面向对象的编程模式.它会要求你定义一个view model,然后所有的页面变化 ...
- android 线程
android线程: 通用多个线程通信管理框架: 1.Handler监听者框架:子线程是事件源,主线程是监听者. Handler作为子线程的监听器出现:主线程中生成Handler的子类, ...
- Demo学习: Basic jQuery
UniGUI是一套基于ExtJS的Delphi的WEB框架,它是使用ExtPascal来转化到ExtJS,ExtJS是一个跨浏览器的JavaScript库,因此UniGUI发布出来的程序可以在各种浏览 ...
- Microsoft Visual Studio Ultimate 2015 Preview使用笔记
1.内存好象存在泄露问题
- return *this和return this的区别
别跟我说, return *this返回当前对象, return this返回当前对象的地址(指向当前对象的指针). 正确答案为:return *this返回的是当前对象的克隆(当然, 这里仅考虑返回 ...
- IOS仿Android九宫格解锁效果[转]
原理很简单,监听view中touch的一系列事件,当判定手指位置在某个按钮附近的时候则判断此按钮选中,并画出线. 效果图如下: 你可以在NineGridUnlockView.m文件中方法 touche ...
- 如何在LINUX VPS上安装VPN详细步骤
在vps上安装vpn是个难点,很多朋友都不会,这儿结合一位朋友的安装经验做下介绍.注意你的vps要安装做vpn使用,一定要注意你的流量限制,使用Vpn上游戏上youtube看视频等都比较耗费资源,否则 ...