0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如果期望$$a发生二次置换该如何操作呢?

FPGA技术驿站 来源:Lauren的FPGA 2020-09-08 16:22 次阅读

看一个典型的例子,如下图所示。变量x被赋值为10,变量a被赋值为字符x。之后,给变量b赋值$$a。最终变量b的值将会是$x,而不是10。

为什么b的值是$x,而不是10呢?这是因为Tcl的变量置换遵循如下两条规则:

规则1:Tcl在解析一条命令时,只从左向右解析一次,进行一轮置换,每一个字符只会被扫描一次。

规则2:每一个字符只会发生一层置换,而不会对置换后的结果再进行一次扫描置换。

根据上述规则,Tcl从左向右对命令“set b$$a”进行解析,扫描所有的字符,发现$$a时,执行变量置换,得到$x,同时只发生一层置换,不会对置换后的结果$x再进行扫描置换(否则$$a中最左侧也就是第一个$将被扫描两次,与规则1冲突,)。因此,最左侧的$并不会触发变量置换,最终变量b的值将会是$x,而不是10。

那么如果期望$$a发生二次置换该如何操作呢?

方法1:采用[set var]的方式,如下图所示。代码第6行中括号中的set命令只跟随一个参数$var,$var发生变量置换,故set $var等效于set a,而set a将返回变量a的值。本质上,$var是[set var]的缩写版本。通过代码第10行和第12行可以看出,set后面如果只有一个参数,而这个参数又是一个已经定义的变量名,那么该命令就直接返回该变量的变量值,与$var等价。

方法2:采用命令subst实现此目的,如下图所示。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • TCL
    TCL
    +关注

    关注

    10

    文章

    1702

    浏览量

    88314
  • 变量
    +关注

    关注

    0

    文章

    607

    浏览量

    28274
  • 置换
    +关注

    关注

    0

    文章

    3

    浏览量

    2015

原文标题:Tcl之$$a 80%的概率......

文章出处:【微信号:Lauren_FPGA,微信公众号:FPGA技术驿站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    二次电池分类以及应用场景详解

    01 二次电池(充电电池)简介 二次电池是相对于一电池,在实际使用过程中一电池放电结束后即报废,二次电池可以进行再次充电,活性物质的能够
    的头像 发表于 09-29 16:33 84次阅读
    <b class='flag-5'>二次</b>电池分类以及应用场景详解

    二次谐波和三谐波区别 二次谐波危害没有三谐波大?

    二次谐波和三谐波区别 二次谐波危害没有三谐波大? 在现代电力系统中,谐波问题逐渐引起人们的关注。谐波是指频率是基波频率的倍数的电流或电压成分。
    的头像 发表于 04-08 17:11 4093次阅读

    二次微机消谐装置的常见应用领域

    各种电力系统的电容器组往往会因为电网频率变化、电压波动以及谐波等因素而产生谐振,导致电容器组发生损坏。为了解决这个问题,我们提出了一种新型的二次微机消谐装置,它可以在不需要对电容器组进行更换的情况下
    的头像 发表于 03-04 14:07 218次阅读

    电气故障探究:二次操作无法合闸的原因与解决

    对高压开关柜的微机保护装置进行改造后,把真空断路器放在试验位置试车,第一合闸、分闸动作都正常,但进行第二次合闸时,发现断路器不能合闸。
    的头像 发表于 02-26 10:50 593次阅读

    二次供水监测设备安装应用

    二次供水泵房的管理上,通常应用二次供水监测系统,辅助管理供水作业,综合监测供水泵站的各项参数,可以及时发现问题并采取相应的措施,保障二次供水的质量和安全性,为水质监测提供有利的数据支持。
    的头像 发表于 02-19 09:59 239次阅读

    电力系统一设备和二次设备区别,二次回路的分类

    在电力系统中,一设备是指直接参与电能生产、传输和分配的电气设备,如发电机、变压器、电力电缆等。电力二次设备是指对电力系统一设备进行监视、测量、控制、调节和保护的辅助设备,不直接与电能主电路连接
    的头像 发表于 01-19 10:10 1694次阅读
    电力系统一<b class='flag-5'>次</b>设备和<b class='flag-5'>二次</b>设备区别,<b class='flag-5'>二次</b>回路的分类

    电压互感器二次回路的PT二次反充电知识汇总

    在各级继电保护运行管理规程以及变电站现场运行规程中,都明确规定了系统一设备倒闸操作时,应特别注意防止电压互感器二次回路向一设备反充电。
    发表于 01-03 13:45 2391次阅读
    电压互感器<b class='flag-5'>二次</b>回路的PT<b class='flag-5'>二次</b>反充电知识汇总

    电流互感器二次电流1A和5A的选择,以及不同精度的使用场合

    电流互感器二次电流1A和5A的选择,以及不同精度的使用场合 电流互感器是一种电力系统中常用的测量电流的装置,广泛应用于电能计量、保护和控制等方面。根据二次电流的不同选择,电流互感器可以
    的头像 发表于 12-26 14:02 3155次阅读

    什么是二次回路?二次回路的分类 辨识二次回路

    二次回路是指由二次设备互相连接,构成对一设备进行监测、控制、调节和保护的电气回路。
    的头像 发表于 12-13 15:31 2911次阅读
    什么是<b class='flag-5'>二次</b>回路?<b class='flag-5'>二次</b>回路的分类 辨识<b class='flag-5'>二次</b>回路

    电流互感器二次电流1A和5A的区别

    我们知道常用的电流互感器二次电流为5A,在什么情况下选择1A?互感器二次的负载主要是电流线和电流表,
    的头像 发表于 12-12 10:55 1703次阅读
    电流互感器<b class='flag-5'>二次</b>电流1<b class='flag-5'>A</b>和5<b class='flag-5'>A</b>的区别

    什么是二次回路?二次回路的分类有哪些?二次回路抗干扰措施

    什么是二次回路?二次回路的分类有哪些?二次回路抗干扰措施  二次回路是指将一部分输出信号再次接入系统的输入端形成的回路。其作用是通过对输出信号进行反馈和控制,以调节系统的稳定性、精度和
    的头像 发表于 11-20 15:01 1679次阅读

    二次电池的特征 一电池与二次电池的区别

    电池的特征以及一电池与二次电池之间的区别。 一、二次电池的特征: 1.可充电性:二次电池是可以反复充电和放电的。在其内部的化学反应过程中,正负电极之间的化学物质会
    的头像 发表于 11-17 14:49 2229次阅读

    如何看电气二次回路图?

    在电力系统中,二次回路主要是指对一设备的工况进行监测、控制、调节、保护的二次设备。描述二次回路的图纸称为二次回路图。由于
    发表于 11-07 09:48 846次阅读
    如何看电气<b class='flag-5'>二次</b>回路图?

    二次谐波及其危害

    二次谐波及其危害 二次谐波是指电力系统中频率为60Hz的电路中,在负载中可能存在的频率为120Hz的谐波。这种谐波可能会对设备功能造成严重的危害。 首先,二次谐波会导致谐波电流在漏电保护器中产
    的头像 发表于 11-06 10:26 3413次阅读

    二次设备与二次回路基础知识

    二次设备 一、概念 二次设备是指对一设备的工作进行监测、控制、调节、保护,以及为运行、维护人员提供运行情况或指挥信号所需的低压电气设备。如熔断器、按钮、指示灯、控制开关、继电器、控制电缆、仪表
    的头像 发表于 10-12 10:51 1284次阅读