如何在tcl脚本中将字符串类型转换为整数类型。就像我从另一个文件中获取数据,它是字符串类型。我想增加字符串类型的数字,那么如何做到这一点。
Tcl基本上对你隐藏了所有类型;无论其类型如何,值都是值,并且所有类型都可以序列化为字符串。人们通常说 \xe2\x80\x9ceeverything 都是一个字符串 \xe2\x80\x9d,虽然这在形式上是不准确的,但语言密谋让它看起来好像是真的。因此,如果它看起来像一个整数,那么从以下角度来看它就是一个整数incr一个整数(这绝对是推荐的惯用递增方法)。
但是,您可以使用该scan命令进一步强制整数性。(这非常像sscanf()(如果你知道的话,
scan $myValue %d myInteger\nincr myInteger\nRun Code Online (Sandbox Code Playgroud)\n\n如果您要使用scan正确使用,你可能应该检查它的结果,即成功扫描的字段数。
if {[scan $myValue %d%c myInteger dummy] != 1} {\n error "\\"$myValue\\" isn\'t a proper integer"\n}\nincr myInteger\nRun Code Online (Sandbox Code Playgroud)\n\n您还可以使用string is integer; 这-strict选项应该与此一起使用。
if {![string is integer -strict $myValue]} {\n error "\\"$myValue\\" isn\'t a proper integer"\n}\nincr myValue\nRun Code Online (Sandbox Code Playgroud)\n\n很多人不关心这些,只是直接增加(包含该变量的)值。如果不可能,它会出错并显示默认错误消息。
\n\nincr myValue\nRun Code Online (Sandbox Code Playgroud)\n\n当问题发生时,Tcl 总是试图告诉您出了什么问题,以及问题实际上出在哪里。请记得检查errorInfo全局变量的堆栈跟踪\xe2\x80\xa6
| 归档时间: |
|
| 查看次数: |
22618 次 |
| 最近记录: |