TCL/Tk基础学习(二)-创新互联-成都快上网建站

TCL/Tk基础学习(二)-创新互联

TCL/TK基础学习(二)
  • 表达式
    • 算术操作符
    • 关系、逻辑、按位、选择操作符
    • 函数

创新互联服务项目包括灵石网站建设、灵石网站制作、灵石网页制作以及灵石网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,灵石网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到灵石省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!表达式
Tcl表达式由操作符、操作数、圆括号等构成。于C语言、verilog用法几乎相同。
# 算术操作符、逻辑运算符、关系运算符、按位操作符(一元)、选择运算符(三元)
算术操作符
与C语言等用法相同
set r 2
set pi 3.14 
#expr 直接获取表达式的值
puts [ expr $pi * $pi * $r ** 2 ]
#tcl解释器会在执行expr前进行变量置换,传递给expr的参数为3.14*2
puts [ expr {$pi * $pi * $r ** 2} ] 
#{}阻止变量传递,传给expr参数为pi*r,当表达式处理器遇到$符号时进行变量置换
#tcl处理{}内表达式的效率远高于其他表达式
#-->针对表达式   puts 只是将结果输出

#a/b 结果需要满足 a=q*b+r, 0<=|r|<|b|,r q同号,q是商,r余数 
#当除数、被除数含有一个一号时,商为负 
#相当于向下取整 -0.5 取 -1  
puts [ expr {-1 / 2} ]
puts [ expr {1 / -2} ]

#a%b 瞒足 a=q*b+r, 0<=|r|<|b|, r q同号
#当除数为负时,余数为负
#当被除数为负时,余数为正-3 
puts [ expr {-7 % 3} ]  
puts [ expr {7 % -3} ] 
#-9  -9

for {set i 1} {$i< 16 } {incr i 4} {puts "2^$i : \t [expr {2 ** $i }]"
}
39.4384
39.4384
-1
-1
2
-2
2^1 : 	 2
2^5 : 	 32
2^9 : 	 512
2^13 : 	 8192
关系、逻辑、按位、选择操作符
set a verilog
set b tcl 
puts [ expr {$a< $b } ]  
puts [ expr {23< 25 } ]
#八进制
puts [ expr {8 == 010  } ]
puts [ expr {8 == 0o10 } ]
#十六进制
puts [ expr {8 == 0x8  } ]

# yes/on/ture 表示真
# no/off/false 表示假
puts [expr {on && no }] 

puts [ expr {($a<= $b) ? [ puts "max: $a"] : [ puts "max: $b"] } ]
0
1
1
1
1
0
max: tcl
函数
# tcl函数几乎包含全部函数
# 向上取整
set x 5.6
puts [expr {ceil($x)} ]
#向下取整
puts [expr {floor($x)}]
#四舍五入
puts [expr {round($x)}]
#[0,1]伪随机数浮点数
puts [expr {rand()} ]
#srand(x) 整数种子随机数生成

# 表达式布尔值转换
bool(x)
# 整形值的实数
double(x)
# 转为整形值
int(x)
# 用至少64位宽表示整形值
wide(x)
6.0
5.0
6
0.526772657654608

#字符串操作

#字符串操作 ne eq
puts [ expr {$a eq $b}]
puts [ expr {$a ne $b}]

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网页标题:TCL/Tk基础学习(二)-创新互联
网站链接:http://kswjz.com/article/dcieji.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流