1.MOVE语句
是整个COBOL中最常用额语句。可以实现变量的赋值,参数传递等类似功能。
可以对单个数据进行复制,也开业对一组数据进行复制。
a、复制单个数据
例:
01 IN-STATUS PIC X(5).
--> MOVE 'READY' TO IN-STATUS.
--> MOVE IN-STATUS TO OUT-STATUS.
说明:当复制的数据为数值类型时
如果目标数据的长度大于源数据项内容的长度时,则在目标数据项的高位以0进行填充
如果目标数据的长度小于源数据项内容的长度,对高位超出部分进行截断。
如果数值含有小数部分,需要作为浮点数做相应处理。
b、复制一组数据
通过MOVE语句对一组数据进行复制。MOVE语句中的两个变量分别是数据组的名称。
注意点:
所复制的组内数据必须同名,不同名的数据将不被复制。
如果数据项在分组中,则分组名称也必须相同。
数据项在组内的顺序可以任意。
以FILLER命名的数据项不被复制。
2.PERFORM语句
执行COBOL中所编写的相应的处理过程。过程处理相当于COBOL中的函数,PERFORM用于调用这些函数。
可通过THRU选项同时对多个处理过程进行执行。
3.ACCEPT和DISPLAY语句
可以方便调试。
a、ACCEPT语句接收数据
既可以接收用户从终端输入的数据,也可以接收由系统产生的相应数据。
接收的数据存放在 COBOL数据部中所定义的相应变量中。
4.REDEFINES语句
用于同一块内存区域内进行重定义。可以定义多个指向同一内存区域的变量。
01 TEST-AREA.
05 TEST-A PIC X(4).
05 TEST-B REDEFINES TEST-A.
5.文件相关语句
文件包括常规文件,以及VSAM文件。基本操作包括文件的打开、关闭、文件读写。
a、OPEN和CLOSE语句
OPEN语句用于文件的打开操作。在做文件操作之前。
例:
OPEN INPUT IN-FILE1 IN-FILE2
注意:文件名需要在输入/输出节中由SELECT语句所指出的文件名一致。
可出现在程序的任何位置。
如果读写文件之前没有打开文件,程序会非正常终止。
CLOSE语句用于关闭已经打开的文件。
例:
CLOSE INPUT IN-FILE1 IN-FILE2
c、READ语句
用于从文件中读取数据。
实际是将文件中的数据读到FD语句所定义的变量之中。
由于READ语句每次只能读取一条语句,通常将READ语句置于一个循环结构体中。顺序读取文件中的每一条记录。
例:READ CUSTOMER-FILE
AT END MOVE 'Y'
END READ
d、WRITE语句
用于对文件进行写入。
WRITE CUSTOMER-RECORD.
WRITE PRINT-LINE
AFTER ADVANCING 1 LINE.
WRITE PRINT-LINE
FROM PAGE-HEADER
AFTER ADVANCING PAGE.
注意:读取文件时需要指定的文件名,而写入文件时需要指定写入的记录名。