Tcl编程简介(二)

tlcl-redirection(重定向) 重定向(redirection) 所谓的重定向可以简单的理解为重新指定输入输出的方向,既然是重新制定输入输出的方向,那么原来的输入输出方向是如何的呢? 计算机的I/O有标准输入、标准输出、输出错误,默认的标准输入是与键盘相连接的,标准输出是与屏幕相连接的,至于输出错误也是默认连接到屏幕。 而I/O重定向可以允许我们更改这些默认连接,从文件中读取内容,将输出写入到文件等等,都是重定向。 阅读详情


Tcl编程简介(二)
 

列表

  字符串的另一种解释为列表。一个列表是类似于结果的一个字 符串包含了用空白分开的很多域。例如 "Al Sue Anne John" 是 一个有四个元素的例表,在列表中换行父被视为分隔符。例如:

  b c {d e {f g h}} 是一个有三个元素的列表 b 、c 和 {d e {f g h}}。

  Tcl的命令 concat, foreach, lappend, lindex, linsert,list, llength, lrange,lreplace, lsearch, 和 lsort 可以使你对列表操作。

正则表达式

  Tcl 提供了两个用于正则表达式的命令 regexp 和 regsub。 这里的正则表导师实际上是扩展的正则表达式,与 egrep 相一致。

  支持 ^ $ . + ? > < () | []

命令结果

  每一条命令有俩个结果:一个退出值和一个字符串。退出值标志着命令是否正确执行,字符串给出附加信息。有效的返回制定议在`tcl.h", 如下:

TCL_OK

  命令正确执行,字符串给出了命令的返回值。

TCL_ERROR

  表示有一个错误发生,字符串给出了错误的描述。全局变量 errorInfo 包含了人类可读的错误描述,全局变量errorCode 机器使用的错误信息。

TCL_RETURN

  表示 return 命令被调用,当前的命令(通常是一个函数)必须立刻返回,字符串包含了返回值。

TCL_BREAK

  表示break已经被调用,最近的巡环必须立刻返回并跳出。字符串应该是空的。

TCL_CONTINUE

  表示continue已经被调用,最近的巡环必须立刻返回不跳出。字符串应该是空的。

  Tcl编程者一般需要关心退出值。当Tcl解释器发现错误发生后会立刻停止执行。

Procedures 函数

  Tcl 允许你通过proc命令来扩充命令(定义新的命令),定义之后可以向其它的内建命令一样使用。

  例如:


proc pf {str} {
puts $str
}
pf "hello world"
这里有一个初学者不注意的地方,上述的定义一定要写成那样子。而不能向下面那样写:
proc pf {str}
{
puts $str
}

 

  因为proc实际上也只不过是一条命令,是一换行符或分号来结束的,用集群参数来传递函数体。proc的定义如下:


proc name args tclcommand
Variables: scalars and arrays

 

  变量:标量和向量(即数组)

  向量就是数组,而标量是没有下表的变量。

  我们用C来类比:


int i; // i 是标量
int j[10]; // j 是向量

 

  变量不需要定义,使用的时候会自动的被创建。Tcl支持两种

  变量:标量和向量

  举个例子来说明吧,


set i 100
set j(0) 10
set k(1,3) 20

 

  i是标量,j是向量。

  引用的时候:


$i
$j(0)
$k(1,3)

 

 


 
Synopsys Tcl学习二 Tcl学习字符串数量统计控制流,函数和进程 字符串数量统计 #write into file tmp1 redirect -file tmp1 {report_constraint -all_violators} #calculate total violations set TNV [exec grep -c "VIOLATED" tmp1] echo "\nthe total number of violations is:\t$TNV" file delete tmp1 redirect -va 阅读详情

相关推荐

tcl常用命令笔记--proc

args可接收可变数量参数,如果把add_demo后面的数字用{}包括,则只算一个参数,此时proc里arg可随意起。proc相当于c语言中的函数,避免相同代码在多个位置重复。上面add_demo将a和b相加,proc同样需要先定义后调用。如上所示,如果不提供参数b,则适用默认值10。可以理解为在proc里允许调用自己。用于在未提供参数时的可使用默认值。

qq_68400574的博客 1052

第九课:Tcl基础答疑

针对上节提的几个问题进行解答~

qq_47485904的博客 3214

【Vivado TCL 教程】从零开始掌握 Xilinx Vivado TCL 脚本编程(二)

本文是Vivado TCL脚本编程系列教程的第二部分,重点介绍TCL在Xilinx Vivado开发中的实际应用。文章针对xc7z010clg400-1开发板,详细讲解了如何使用TCL脚本进行项目创建与管理、设计流程自动化以及网表对象操作。内容包括项目属性设置、源文件添加、综合实现流程、比特流生成等关键操作的TCL命令示例,并提供了完整的自动化脚本。通过本教程,开发者可以掌握利用TCL脚本实现FPGA设计全流程自动化的技能,提高开发效率和团队协作能力。

现任某外企的算法工程师!专注于人工智能、嵌入式、FPGA、论文写作四大主题的教程和经验分享!辅导请➕v :sci666888999 1337

TCL 语言的过程 proc

TCL proc 命令

m0_59557249的博客 5346

【Vivado TCL教程】从零开始掌握Xilinx Vivado TCL脚本编程(一)

Vivado TCL脚本编程入门指南 本文介绍了Xilinx Vivado中TCL脚本的基础知识与应用,特别针对xc7z010clg400-1开发板用户。内容涵盖: TCL基础语法:命令结构、变量定义、控制语句(if/for/while)和自定义函数(proc) Vivado集成:通过TCL控制台或脚本文件执行命令,实现自动化设计流程 实践价值:TCL脚本可提高FPGA开发效率,支持批量处理和团队协作 通过具体代码示例(如变量操作、循环结构)帮助读者快速掌握TCL在Vivado中的应用,适合希望从GUI转向

现任某外企的算法工程师!专注于人工智能、嵌入式、FPGA、论文写作四大主题的教程和经验分享!辅导请➕v :sci666888999 1464

Tcl基础入门

路科v0验证中自己的学习笔记,供自己索引学习

Lin_w_x的博客 6925

Tcl编程简介(二)

列表   字符串的另一种解释为列表。一个列表是类似于结果的一个字 符串包含了用空白分开的很多域。例如 "Al Sue Anne John" 是 一个有四个素的例表,在列表中换行父被视为分隔符。例如:   b c {d e {f g h}} 是一个有三个素的列表 b 、c 和 {d e {f g h}}。   Tcl的命令 concat, foreach, lappend, lindex, l...

hyw520110的专栏 685

Ubuntu下的tcl/tk编程快速入门

接口介绍GUI Canvas接口tcl语言 https://www.tcl-lang.org/官方教程二、Tcl/Tk安装及其快速使用入门一个简单单tcl文件demo.tclset x 10set y 20# 输出puts $x $y执行脚本。

youlinhuanyan的博客 759

TCL编程语言简介

TCL(Tool Command Language)是一种解释型编程语言,它的主要设计目标是提供一个简单易用的脚本语言,而且可以方便地嵌入到其他程序中。TCL最初由约翰·奥斯汀(John Ousterhout)在1988年开发。TCL被广泛应用于自动化测试、GUI设计和网络编程等领域。TCL是一种功能强大且易学易用的脚本语言,在各个领域都有着广泛的应用。

qq_34326957的博客 3670

TCL编程练习

1.用函数来实现对任意长度任意数列进行排序的功能,要求通过参数来选择从大到小排序,还是从小到大排序; 并将结果输出到一个文件里。例如,当输入2,9,4,3时,从大到小排序输出结果为:9,4,3,2 gets stdin不能用 为啥呢??? set string {2,9,4,3}; set newlist_file [open "result.txt" w+] set list [split $string ,] puts $list set mode "down" format "select mo

weixin_44072819的博客 2291

Tcl输入输出重定向Demo

C++编程嵌入Tcl脚本应用程序中经常要进行输入输出重定向处理 网上很难找到完整编程实例,本Demo在tcl8.4.20上调式OK

Tcl编程简介

原贴:http://www.tclchina.com/article/chinese/jianjie1.htm Tcl编程简介(一)  简介   Tcl是一种很通用的脚本语言,它几乎在所有的

最实用的Linux博客 6226

深度学习之常用算子介绍

打开 onnx 模型图,可以看到它是一个有向无环图。除了 Input、Output ,其他都是算子(是操作,而不是节点)在ONNX(Open Neural Network Exchange)模型中,除了输入和输出,其他都是算子(Operations)。算子是表示神经网络模型中的不同操作或层的元素。一个ONNX模型由一系列算子组成,通过连接这些算子来定义模型的计算流程。

ueke1的博客 8461

[TCL]Tcl语言基礎教程(二)

Tcl语言参考(二) 二、Tcl变量数据类型 Tcl只支持一种数据类型:字符串(string)。所有的命令,命令的所有的参数,命令的结果,所有的变量都是字符串。请牢记这一点,所有的东西都是字符串。(然而字符串的实际解释是依赖于其所处上下文。它有三种形式:命令, 表达式和表)。Tcl...

元直的博客 7043

Webug4.0 打靶笔记

一、Webug 的安装 (1)基本信息 WeBug 名称定义为”我们的漏洞”靶场环境 ,基础环境是基于 PHP/mysql 制作搭建而成,中级环境与高级环境分别都是由互联网漏洞事件而收集的漏洞存在的操作环境。部分漏洞是基于Windows操作系统的漏洞所以将WeBug的web环境都装在了一个纯净版的Windows 2003的虚拟机中。在 webug3.0 发布后的四百多天 226安全团队终于在大年初二发布了 webug 的 4.0 版本。 (2)虚拟机的安装 最新超详细VMware虚拟机下载与安装_隐

m0_60716947的博客 6128

cmu15445(2024fall) project 2

project 2比p1难度要更大,代码量更大且涉及的知识更多,实现中出现的bug更多,好在是最后全部解决了。我最大的收获在于对于多线程编程的理解更深入了,实际发现解决了多个多线程相关的bug,学会了更多多线程下debug的技巧方法,也见识了更多多线程的bug情况。在之后可以更系统的学习一下多线程编程。同时学会实现B+树也是需要掌握的基础。

Jerome_Yi的博客 1562

Tcl编程简介(一)

Tcl编程简介(一)  简介   Tcl是一种很通用的脚本语言,它几乎在所有的平台上都可以解释运行,功能强大。是tool command language的缩写,发音为 "tickle”, 实

Nicholas黎的专栏 1853

Pyinstaller打包为可执行文件编码错误的问题

Pyinstaller打包为可执行文件编码错误的问题 写好的python程序在vscode上运行没有任何问题,将程序利用pyinstaller打包后,运行程序发生了错误。 错误代码 UnicodeDecodeError: ‘utf-8' codec can't decode byte 0xce in position 20-21:invalid cotinuation byte 网上找到的解决方案是: 1.在命令行中输入 chcp 65001 2.按正常方式进行封装 pyinstaller

xuefeng_he的博客 1560

TCL编程语言教程

TCL编程语言教程TCL(Tool Command Language)是一种解释型编程语言,它的主要设计目标是提供一个简单易用的脚本语言,而且可以方便地嵌入到其他程序中。TCL最初由约翰·奥斯汀(John Ousterhout)在1988年开发。TCL被广泛应用于自动化测试、GUI设计和网络编程等领域。本教程将介绍TCL基础知识及其应用场景。读者需要具备一定的计算机基础知识。一、安装TCL在使用TCL之前,我们需要先安装它。

weixin_46121540的博客 4902

【Bluetooth蓝牙开发】一、开篇词 | 打造全网最详细的Bluetooth开发教程

1、开篇词 2、蓝牙开发入门 3、蓝牙协议栈总览 4、蓝牙协议栈——物理层 5、蓝牙协议栈——链路层 6、蓝牙协议栈——传输层 7、蓝牙协议栈——L2CAP协议 8、蓝牙协议栈——ATT协议 9、蓝牙协议栈——GATT协议 10、蓝牙通信流程分析 11、蓝牙协议栈——Bluez交叉编译 12、蓝牙调试工具汇总

Donge's Blog 1万+

代数拓扑与AI架构:AI应用架构师深入探索数学研究如何分析复杂系统的结构特性

随着人工智能技术的飞速发展,AI系统变得越来越复杂。AI应用架构师需要有效的工具和方法来理解、设计和优化这些复杂系统。代数拓扑作为数学的一个分支,提供了独特的视角和技术来分析复杂系统的结构特性。本文旨在帮助AI应用架构师深入了解代数拓扑,以及如何将其应用于AI架构设计中,提升对复杂系统的分析能力。首先,我们会介绍代数拓扑和AI架构相关的核心概念及其联系,通过有趣的故事引入主题,让读者轻松理解复杂概念。接着,深入探讨代数拓扑的核心算法原理,结合具体的编程语言代码示例详细阐述。

大模型应用工坊 671

TCL脚本语言详解

语言简介         TCL是一种很通用的脚本语言,功能强大。最早称为“工具命令语言”"Tool Command Language",但是目前已经不是这个含义,不过我们仍然称呼它TCL,发音为"tickle”。TCL经常被用于快速原型开发,脚本编程,GUI和测试等方面。         实际上包含了两个部分:一个语言和一个库。首先,Tcl是一种简单的脚本语言,主要使用于发布命令给一些互交程

知行流浪 7万+

mybaits-plus通用CRUD详解及代码案例

文章目录mybaitsplus通用CRUD插入操作方法定义测试用例mybaitsplus主键生成策略设置自增主键设置输入主键:UUID:ID_WORKER_STR:ID_WORKER:更新操作根据id更新方法定义:方法步骤根据条件更新方法定义:更新步骤:根据条件更新(可以更新NULL)删除操作根据id删除方法定义:删除步骤:根据 entity 条件删除方法定义:删除步骤:根据ID 批量删除方法定义:删除步骤:查询操作根据id查询方法定义:查询步骤:根据id批量查询方法定义:查询步骤:根据 entity 条件

流楚丶格念的博客 3407

Tcl编程简介(三)

Tcl编程简介(三)    Tcl 内置命令 内置的命令   Tcl提供了下面描述的内置函数。   .其中: ... 表示参数不定具体有:

Nicholas黎的专栏 1262

Android 15.0 添加自定义服务,并生成jar给第三方app调用

在15.0系统ROM产品定制化开发中,由于需要新增加自定义的功能,所以要增加自定义服务,而app上层通过调用自定义服务,来调用相应的功能,所以系统需要先生成jar,然后生成jar 给上层app调用,接下来就来分析实现的步骤,然后来实现相关的功能 从而来实现所需要的功能

安卓兼职framework和app工程师的博客 670

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

上一篇: Tcl编程简介(一)
下一篇: Tcl编程简介(三)
Image_Graphics
博客等级 码龄20年 18粉丝 52原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值