【问题标题】:basic Tcl -- printing a value of variablebasic Tcl -- 打印变量的值
【发布时间】:2013-01-08 23:43:43
【问题描述】:

我在 Tcl 中有以下脚本:

set val(a) 10
set val(b) 10
set val(n) expr{$val(a) * $val(b)}

如何打印变量n的值?

puts $val(n)

给expr{10*10},我需要看到 100....

【问题讨论】:

    标签: set tcl puts


    【解决方案1】:

    为了评估表达式并返回结果,您必须将eval 命令放在方括号内,而不是尝试像函数一样调用它:

    set val(n) [expr {$val(a) * $val(b)}]
    puts $val(n)
    

    【讨论】:

    • 大括号有什么原因吗?
    • @user828193 是的,它允许 Tcl 编译表达式而不是每次都重新解析它。它还避免了许多危险(例如,如果有人将 [exit] 放入 val(a) 变量中)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-25
    相关资源
    最近更新 更多