一、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中的数学函数的更多相关文章

  1. Tcl语言笔记之二

    1,表达式 1.1 操作数 TCL表达式的操作数通常是整数或实数.整数一般是十进制的, 但如果整数的第一个字符是0(zero),那么TCL将把这个整数看作八进制的,如果前两个字符是0x则这个整数被看作 ...

  2. TCL语言笔记:TCL基础语法

    一.什么是TCL Tcl 全称是 Tool command Language.它是一个基于字符串的命令语言,基础结构和语法非常简单,易于学习和掌握. Tcl 语言是一个解释性语言,所谓解释性是指不象其 ...

  3. 在C语言结构体中添加成员函数

    我们在使用C语言的结构体时,经常都是只定义几个成员变量,而学过面向对象的人应该知道,我们定义类时,不只是定义了成员变量,还定义了成员方法,而类的结构和结构体非常的相似,所以,为什么不想想如何在C语言结 ...

  4. C++中的数学函数汇总

    math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有: 1 三角函数 double sin (double); double cos (double); double t ...

  5. c++中的数学函数

    math.h 数学函数库,一些数学计算的公式的具体实现是放在math.h里,具体有:1 三角函数double sin (double);double cos (double);double tan ( ...

  6. TCL语言笔记:TCL中的数组

    一.介绍 Tcl 中的数组和其他高级语言的数组有些不同:Tcl 数组元素的索引,或称键值,可以是任意的字符串,而且其本身没有所谓多维数组的概念.数组的存取速度要比列表有优势,数组在内部使用散列表来存储 ...

  7. TCL语言笔记:TCL中的控制结构命令

    一.引言 控制结构允许程序根据不同的状态.条件和参数来选择不同的处理和执行路径,从而使代码具有更强的灵活性.健壮性和可读性. Tcl 提供了 if.if/else.if/elseif.foreach. ...

  8. TCL语言笔记:TCL中的列表操作

    一.介绍 列表则是具有特殊解释的字符串.Tcl 中的列表操作和其它 Tcl 命令一样具有相同的结构.列表可应用在诸如 foreach 这样的以列表为变元的循环命令中,也应于构建 eval 命令的延迟命 ...

  9. TCL语言笔记:TCL中的String命令

    一.介绍 字符串是 Tcl 中的基本数据类型,所以有大量的字符串操作命令.一个比较重要的问题就是模式匹配,通过模式匹配将字符串与指定的模式(格式)相匹配来进行字符串的比较.搜索等操作. 二.strin ...

随机推荐

  1. 【转载】Powershell获取世纪互联Office365中所有用户的OWA时区

    get-mailbox -resultsize unlimited | Get-MailboxRegionalConfiguration | select Identity,TimeZone | wh ...

  2. SVM入门

    前言: 又有很长的一段时间没有更新博客了,距离上次更新已经有两个月的时间了.其中一个很大的原因是,不知道写什么好-_-,最近一段时间看了看关于SVM(Support Vector Machine)的文 ...

  3. spring中Bean的注入参数详解

    字面值    一般指可用字符串表示的值,这些值可以通过<value>元素标签进行注入.在默认情况下,基本数据类型及其封装类.String等类型都可以采取字面值注入的方式,Spring容器在 ...

  4. 【python】网络爬虫抓取图片

    利用python抓取网络图片的步骤: 1.根据给定的网址获取网页源代码 2.利用正则表达式把源代码中的图片地址过滤出来 3.根据过滤出来的图片地址下载网络图片 今天我们用http://www.umei ...

  5. JPA学习---第四节:JPA实例与JPA主键生成策略

    1.编写实体类,代码如下: package learn.jpa.bean; import javax.persistence.Entity; import javax.persistence.Gene ...

  6. VBS基础篇 - 数组

    数组变量:有时需要向一个单一的变量赋于多个值,那么您可以创建一个可包含一系列值的变量,这种变量被称为数组. '静态数组 ) a()="George" a()="john& ...

  7. java url中文参数乱码问题

    http://www.blogjava.net/jerry-zhaoj/archive/2009/07/16/286993.html 转 JAVA 中URL链接中文参数乱码的处理方法JAVA 中URL ...

  8. 3563: DZY Loves Chinese - BZOJ

    Description神校XJ之学霸兮,Dzy皇考曰JC.摄提贞于孟陬兮,惟庚寅Dzy以降.纷Dzy既有此内美兮,又重之以修能.遂降临于OI界,欲以神力而凌♂辱众生. 今Dzy有一魞歄图,其上有N座祭 ...

  9. linux 下 安装 rpm 格式 的 mysql

    在Linux操作系统下,安装MYSQL有两种方式: 一种tar安装方式, 另外一种是rpm安装方式. 这两种安装方式有什么区别呢?尽管我们在Linux下常用tar来压缩/解压缩文件,但MYSQL的ta ...

  10. UVA 11149 Power of Matrix 快速幂

    题目链接: http://acm.hust.edu.cn/vjudge/contest/122094#problem/G Power of Matrix Time Limit:3000MSMemory ...