解除分配UNASSIGN

UNASSIGN <FS>.

该语句是初始化<FS>字段符号,语句执行后,字段符号将不再引用内存区域(它指向的内存区域不会受影响),逻辑表达式<fs> IS ASSIGNED将会返回假。

 

CLEAR <FS>.

与UNASSIGN不同的是,只有一个作用就是初始化它所指向的内存区域,而字段符号本身并没有被解除分配

DATA: C VALUE 'a'.
FIELD-SYMBOLS: <FS1>,<FS2>.
ASSIGN C TO <FS1>.
ASSIGN C TO <FS2>.
WRITE: / <FS1>,<FS2>.
UNASSIGN <FS1>.
IF NOT <FS1> IS ASSIGNED.
  WRITE: / 'fs1 is unassigned'.
ENDIF.
WRITE: / '<fs2>=',<FS2>.

CLEAR: <FS2>.
IF <FS2> IS ASSIGNED.
  WRITE: / 'fs2 is assigned'.
ENDIF.
WRITE: / '<fs2>=',<FS2>.

 

posted @ 2024-12-10 16:33  艾靑  阅读(31)  评论(0)    收藏  举报