开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第45天,点击查看活动详情
第21讲 命令 - 输出命令
ObjectScript支持四个命令将文字和变量值写入显示到当前输出设备:
WRITE命令ZWRITE命令ZZDUMP命令ZZWRITE命令
WRITE命令
显示输出到当前设备。
WRITE:pc writeargument,...
W:pc writeargument,...
writeargument可以是以下表达式
expression
f
*integer
*-integer
pc可选 - 后置表达式
w:(1 < 2) 3
w:(1 > 2) 3
有参数WRITE
expression可选 - 写入输出设备的值。任何有效的ObjectScript表达式,包括文字,变量,对象方法和对象属性,其结果均为数字或带引号的字符串。
w 1 + 2
f可选 - 一个或多个格式控制字符,用于将输出放置在目标设备上。格式控制字符包括!,#、?n和/助记符。参数用逗号分隔。!- 将一行移至第0列($Y递增1,$X设置为0),相当与换行。#- 将清除当前屏幕,并从新屏幕的顶部0列开始。($Y和$X重置为0。)
w "a",!,"b"
w "a",#,"b"
?n- 后跟一个整数或者计算结果为整数的表达式。它将输出定位在第n列位置(从第0列开始计数)
w #?1,"***",?$x+2," ***",!,"*",?$x+4,"*",?$x+3," *",!,?1,"*",?$x+2,"tyu",?$x+2,"*",!,?3,"*",?$X+2," *",!,?5,"*"
- 可以指定格式控制字符的任意组合,而无需插入逗号,但是必须使用逗号将格式控制与表达式分开。
w #!!!?6,"Hello",!,"world!"
格式控制位置到屏幕的顶部(#),然后发出三行返回(!!!),然后缩进六列(?6)。然后,WRITE显示字符串Hello,执行格式控制行返回(!),然后显示字符串world!。
*integer可选 - 星号整数代码,表示要写入输出设备的字符。对于ASCII,范围是0到255之间的整数;对于Unicode,范围是0到65534之间的整数。任何有效的ObjectScript表达式,其计算结果为适当范围内的整数。
w *23002,*37995
w !,"Cach",$char(233)
w !,*67,*97,*99,*104,*233
- 特殊字符输出终端的铃声。
w *7
*-integer可选 - 指定设备控制操作的星号负整数代码。
| Code | 设备操作 |
|---|---|
*-1 | 在下一次读取时清除输入缓冲区。 |
*-2 | 断开TCP设备或命名管道的连接。 |
*-3 | 将输出缓冲区刷新到设备。这将强制写入磁盘上的文件。 |
*-9 | 在当前文件指针位置截断顺序文件的内容。为了截断文件,必须打开文件(使用OPEN命令至少具有“RW”访问权限),并且必须将其建立为当前设备(使用USE命令)。 |
*-10 | 立即清除输入缓冲区。 |
*-99 | 发送压缩的流数据。 |