我遇到过以下使用 -1 命令的函数
q)whereami:{-1 "cd ~ ",system "cd";} / defining the function
q)whereami[] / executing the function
cd ~ /Users/utsav/kdbScripts/db
您能解释一下这个函数中-1命令的用途吗?
似乎它用于以非字符串格式在控制台中提供输出,但不确定是否是这种情况。
如果我尝试不带 -1 和分号的函数,然后在控制台中显示输出,它将以字符串格式显示输出。
whereami:{"cd ~ ",system "cd"}
whereami[]
"cd ~ /Users/utsav/kdbScripts/db"
是
-1
正在打印到标准输出
https://code.kx.com/q/basics/handles/
字符串显示嵌入的特殊字符:
q)"String with some\n\t special characters"
"String with some\n\t special characters"
如果我们希望
\n
显示为换行符,\t
显示为选项卡,我们可以使用 -1
打印到标准输出(或 1
- 区别在于 -1
将在输出末尾自动打印换行符)
q)-1 "String with some\n\t special characters"
String with some
special characters
-1
-1
在打印文本后返回 -1
,因此通常使用 ;
来抑制该返回,因为它在几乎所有情况下都没有那么有用。
q)-1 "String with some\n\t special characters";
String with some
special characters
q)