【IT168 技术文章】
一、赋值
可以在声明语句和操作语句中给数据对象赋值。
在声明语句中,将初始值赋给声明的数据对象,可以在DATA、常量和STATIC语句中使用VALUE参数。
在操作语句中给数据对象赋值可以使用MOVE语句和WRITE TO语句。
1、MOVE语句赋值(赋值运算符=)
(1)基本赋值操作
语法:MOVE <f1> TO <f2>.或<f2> = <f1>. 其中<f1>可以是任意数据对象,<f2>必须是变量,不能是文字或常量。
(2)用指定偏移量赋值
语法:MOVE <f1>[+<o1>][(<l1>)] TO <f2>[+<o2>][(<l2>)].
<f2>[+<o2>][(<l2>)] = <f1>[+<o1>][(<l1>)].
将字段<f1>从<o1>+1开始且长度为<l1>的段内容赋给字段<f2>,覆盖从位置<o2>+1开始且长度为<l2>的段。其中所有偏移量和长度指定都可为变量。
(3)在字段串组件之间复制值
语法:MOVE-CORRESPONDING <string1> TO <stirng2>.将字段串<string1>组件的内容赋给有相同名称的字段串<string2>组件。
2、WRITE TO语句赋值
语法:WRITE <f1> TO <f2> [<option>].将源字段 <f1> 内容写入目标字段 <f2>。 <f1>可以是任何数据对象。<f2>必须是变量,不能是文字或常量。写入后,<f1> 内容保持不变。对于 <option>,可以使用 WRITE 语句的所有格式化选项(UNDER 和 NO-GAP 除外)。
WRITE TO 语句总是检查用户主记录中的设置 。例如,这些设置指定是将小数点 显示为句号 (.),还是逗号(,) 。
WRITE TO 语句并不遵循类型转换中所述的转换规则。目标字段解释为类型 C 字段。系统总是将源字 段内容转换为类型 C,它不将结果字符串转换为目标字段的数据类型,而直接写入目标字段。因此,不应使用数值数据类型的目标字段。
WRITE (<f>) TO <g>.在运行时指定源字段,系统将赋给 <f> 的数据对象值放到 <g> 中。
WRITE <f1>[+<o1>][(<l1>)] TO <f2>[+<o2>][(<l2>)].将字段<f1>从<o1>+1开始且长度为<l1>的段内容赋给字段<f2>,覆盖从位置<o2>+1开始且长度为<l2>的段。目标字段的偏移量和长度指定可为变量,只在非数值字段之间采用偏移量和长度指定赋值。
二、将值重置为默认值
语法:CLEAR <f>.将数据对象<f>的内容重置为初始默认值。
三、数值运算