3

我想将多个具有不同类型的变量连接成一个字符串。这很好用:

q)"select ", string[10:00:00] ," abc"
"select 10:00:00 abc"

当我用括号调用字符串时,输出是不同的:

q)"select ", string(10:00:00) ," abc"
"s"
"e"
"l"
"e"
"c"
"t"
" "
"10:00:00"
," "
,"a"
,"b"
,"c"

我认为在第一个示例中,函数字符串是使用时间类型的原子参数调用的,而在第二个调用中,时间列表是在调用字符串之前创建的。

第二个示例中的输出表示什么?

4

1 回答 1

2

使用 string[10:00:00],您将在输入 10:00:00 上调用字符串函数。使用 string (10:00:00) ,"abc" ,您实际上将 (10:00:00) 连接到 "abc" ,然后将结果串起来。您必须记住,执行是从右到左进行的。

q)(10:00:00) ," abc"
10:00:00
" "
"a"
"b"
"c"
q)string (10:00:00) ," abc"
"10:00:00"
," "
,"a"
,"b"
,"c"
于 2013-03-25T16:43:59.613 回答