空字符串在Tcl中被识别为double

时间:2015-11-05 11:29:19

标签: string numbers double tcl

为什么Tcl 8.5将空字符串识别为double?请参阅以下简单代码:

puts [ string is double "" ]
>1

我认为double是一个明确定义的数字。
谢谢。

1 个答案:

答案 0 :(得分:4)

那是因为一个逐字验证的输入字段在空的时候不应该是无效的。

使用-strict选项禁止零长度双打。

有些人认为,默认情况下让命令识别有效的双打更好,而是使用一个标志使命令识别有效的双精度空字符串。但是,为了保持兼容性,将来这种行为不太可能发生变化。

文档:string