数据类型
数据部(data division)是用来描述程序中使用的变量的。
- data name 数据名称
数据名称必须在数据部中定义,才能在过程部中使用。必须有一个用户自定义的名称,不能使用关键字,为存储实际数据的存储单元提供引用。可以是基本类型或组类型。
- level number 级数
级数是用于指定记录中的数据级别。它们用于区分基本项和组项。基本项可以组合在一起创建组项。
01 记录描述条目
02至49 组项和基本项
66 重命子句项
77 不能被细分项
88 条件名称条目
Elementary items基本项目 不能进一步细分。级数,数据名称,图片子句和值子句(可选)用于描述基本项。
Group items组项目 由一个或多个基本项组成。级数,数据名称和值子句(可选)用于描述组项。组级数始终为01。
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NAME PIC X(25). ---> 基本项
01 AGE PIC 9(2) VALUE '10'. ---> 基本项
01 ADDRESS. ---> 组项目
05 HOUSE-NUMBER PIC 9(3). ---> 基本项
05 STREET PIC X(15). ---> 基本项
05 CITY PIC X(15). ---> 基本项
- picture clause 图片子句
图片子句用于定义以下项目:
数据类型:可以是数字,字母或字母数字。数字类型仅由数字0到9组成。字母类型由字母A到Z和空格组成。字母数字类型由数字,字母和特殊字符组成。
符号:可以与数字数据一起使用。它可以是+或-。
小数点位置:可与数字数据一起使用。假设位置是小数点的位置,而不包括在数据中。
长度:定义数据项使用的字节数。
在图片子句中使用的符号:
符号 | 描述 |
---|---|
9 | 数字 |
A | 字母 |
X | 字母数字 |
V | 隐式小数 |
S | 符号 |
P | 假定小数 |
例: |
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUM1 PIC S9(3)V9(2).
01 NUM2 PIC PPP999.
01 NUM3 PIC S9(3)V9(2) VALUE -1223.45.
01 NAME PIC A(6) VALUE 'ABCDEF'.
01 ID PIC X(5) VALUE 'A121$'.
PROCEDURE DIVISION.
DISPLAY "NUM1 : "WS-NUM1.
DISPLAY "NUM2 : "WS-NUM2.
DISPLAY "NUM3 : "WS-NUM3.
DISPLAY "NAME : "WS-NAME.
DISPLAY "ID : "WS-ID.
STOP RUN.
- value clause 值子句
值子句是一个可选子句,用于初始化数据项。该值可以是数字文字,字母数字文字,或象征常数。它可以与组项和基本项一起使用。
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NUM1 PIC 99V9 VALUE IS 3.5.
01 WS-NAME PIC A(6) VALUE 'ABCD'.
01 WS-ID PIC 99 VALUE ZERO.
PROCEDURE DIVISION.
DISPLAY "WS-NUM1 : "WS-NUM1.
DISPLAY "WS-NAME : "WS-NAME.
DISPLAY "WS-ID : "WS-ID.
STOP RUN.
例如:
01 permun PIC 9(5) VALUE '666'.
- 01 指得是级数
- pernum 指的是数据名称
- PIC 9(5) 指的是图片子句
- VALUE ‘666’ 指的是值子句
注:本系列文章参考下面网站
参考地址