日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Tcl学习之--表达式

發布時間:2025/3/15 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Tcl学习之--表达式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

l?數值操作數

表達式的操作數一般是整數或實數。整數可能是十進制。二進制,八進制或十六進制。

比方以下同一個整數

335 ? ? ? ? ? ? ? --> 十進制

0o517 ? ? ? ? ? --> 八進制

0x14f ? ? ? ? ? ?--> 十六進制

0b10100111 --> 二進制

處理0開頭的十進制整數最安全的方法是使用scan命令.

以下就是非經常常使用的樣例:


l?操作符及其優先級別

Tcl與C類似。同樣的優先級符從左到右進行計算。比方:10-4-3與(10-4)-3結果是一樣的,但假設4*2 < 7,計算結果為0,由于*的優先級別大于>,事實上那么多操作符,根本不可能記住,最保險。也是最可靠的就是用()來完畢自己的意圖。

l?算術操作符

+, -, *, /, %, 及**

l 關系操作符

<; <=; >=; >; ==; !=

l?邏輯操作符

邏輯操作符 &&, || , 以及!

($x > 4) && ($x < 10)。當中每一個操作符結果都是0或1

A && B:?? A與B同一時候為真,方為真

A || B ? ?:?? A與B僅僅要有一個為真。就為真

!A ? ? ? ? :?? A為假,則為真

Tcl中總是用1代表真,0代表假,在Tcl中:

false, no以及off表示假

true, yes以及on表示真

NOTE: 這些字符串不區分大寫和小寫.

l?按位操作符

Tcl中提供了6個操作符. &, |, ^, << , >>,以及~

& : 按位與

| : 按位或

^ : 異或

<<: 按位左移

>>: 按位右移

~ : 取反符號

?

l?三元操作符

expr {($a < $b) ? $a : $b}

$a < $b為條件

? 1)? 假設條件為真: 則選擇$a

? 2)? 假設條件為假: 則選擇$b

l?數學函數

Tcl表達式支持數學函數,如sin(),cos(),abs(),exp()等函數。到時候請查閱文檔就可以.

l?替換

表達式操作數的替換有兩種方式:

方式一: 普通的Tcl解析器機制


方式二: 通過表達式處理


1. 首先當表達式遇到$,它自己會進行一次變量替換,把變量x的值傳給sin.

2. 其次將2*sin($x)作為參數傳遞給expr.

NOTE: 最好總是把表達式用{}括起來,即使是在使用expr命令的時候,原因一:Tcl處理括起來的表達式效率,大大高于沒有括起來的表達式。

原因二:避免代碼中出現一些難以捕捉的安全漏洞.比方說:

set x [expr $input - 2]

假設實用戶輸入[format c:\],Tcl解析器直接會將這個字符串作為input變量,從而格式化C盤。


l 字符串操作

Tcl表達式接收字符串。通常是以下兩種方式

方式一: 用雙引號


方式二: 用大括號


所以像以下的表示是錯誤的:


l?列表操作

Tcl 支持兩個列表操作符,inlsearch –exact


總結

以上是生活随笔為你收集整理的Tcl学习之--表达式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。