返回

Caché 变量大全——$KEY 变量

见解分享

第九章 Caché 变量大全——$KEY 变量

变量 KEY 包含最近读取的终止符。KEY 包含终止当前设备上的最后一个 READ 命令的字符或字符序列。KEY 和 ZB 在功能上非常相似;请参阅下面的详细比较。

如果最后一次读取由于终止符(如 键)而终止,则 KEY 包含终止符。如果上次读取由于超时或固定长度的读取(使用 LENGTH)而终止,则 $KEY 为空。

KEY 和 ZB 都可以用于读取终端设备输入。ZB 适用于二进制输入,而 KEY 适用于文本输入。

例如,以下代码将从用户读取一行文本,然后将其显示在终端上:

while $length($key) {
    write $key
}

如果用户输入“Hello, world!”,则以上代码将输出:

Hello, world!

$KEY 变量也可用于检测终端设备上的按键。例如,以下代码将等待用户按下一个键,然后将其显示在终端上:

while $length($key) = 0 {
    sleep 1
}
write $key

如果用户按下“A”键,则以上代码将输出:

A

KEY 和 ZB 的比较

KEY 和 ZB 在功能上非常相似,但也有几点不同:

  • KEY 适用于文本输入,而 ZB 适用于二进制输入。
  • KEY 只能存储一个字符,而 ZB 可以存储多个字符。
  • KEY 可以用于读取终端设备输入和检测终端设备上的按键,而 ZB 只能用于读取终端设备输入。

在大多数情况下,您都可以使用 KEY 或 ZB 来读取终端设备输入。但是,如果您需要读取二进制输入或存储多个字符,则必须使用 $ZB。

总结

$KEY 变量是一个非常有用的工具,可用于读取终端设备输入和检测终端设备上的按键。它很容易使用,并且可以与其他 Caché 变量和函数一起使用。

参考资料