【问题标题】:How to print argv in tcl?如何在 tcl 中打印 argv?
【发布时间】:2020-09-20 09:42:33
【问题描述】:

我正在尝试在 tclsh 程序中打印 argv。但以下不起作用。有人可以让我知道在 tcl 中打印数组的正确方法吗?谢谢。

$ cat main.tcl 
#!/usr/bin/env tclsh

puts {*}$argv
$ ./main.tcl a b c
bad argument "c": should be "nonewline"
    while executing
"puts {*}$argv"
    (file "./main.tcl" line 3)

【问题讨论】:

    标签: tcl


    【解决方案1】:

    在 Tcl 中,argv 是一个列表。由于 Tcl 中每个表现良好的值都有一个字符串表示,调用 puts $argv 就足以看到程序参数显示为空格分隔的单词。

    【讨论】:

    • 另外,puts 只接受一个参数(除了可选的通道或标志)
    • 不幸的是,puts 的选项似乎创建了错误消息,虽然在技术上是正确的,但对解决问题没有多大帮助,即“错误的论点”不会建议我立即找出argv的类型。
    • 8.5 的较新补丁版本在这种情况下会提供更有用的错误消息。自从重写该领域的错误报告以来已经将近十年了,因此产生此消息的代码已经严重过时了。
    猜你喜欢
    • 1970-01-01
    • 2012-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-05
    • 2016-02-25
    • 1970-01-01
    相关资源
    最近更新 更多