💻 COBOL
COBOL INITIALIZE Statement
Beginner 🕑 10 min read
👁 0 views
COBOL INITIALIZE Statement
The INITIALIZE statement sets data items to predetermined values based on their data types.
Syntax
INITIALIZE identifier-1 [identifier-2 ...]
[REPLACING {ALPHABETIC|ALPHANUMERIC|NUMERIC|...} DATA BY literal/identifier]
Default Initialization Values
| Data Type | Initial Value |
|---|---|
| Alphabetic | SPACES |
| Alphanumeric | SPACES |
| Numeric | ZEROS |
| Numeric-edited | ZEROS |
Example Program
IDENTIFICATION DIVISION.
PROGRAM-ID. INIT-DEMO.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-RECORD.
05 WS-NAME PIC X(20) VALUE 'OLD NAME'.
05 WS-AMOUNT PIC 9(7)V99 VALUE 1234.56.
05 WS-CODE PIC X(5) VALUE 'ABCDE'.
PROCEDURE DIVISION.
DISPLAY 'Before INITIALIZE:'
DISPLAY 'Name: ' WS-NAME
DISPLAY 'Amount: ' WS-AMOUNT
DISPLAY 'Code: ' WS-CODE
INITIALIZE WS-RECORD
DISPLAY 'After INITIALIZE:'
DISPLAY 'Name: ' WS-NAME
DISPLAY 'Amount: ' WS-AMOUNT
DISPLAY 'Code: ' WS-CODE
STOP RUN.
Expected Output
Before INITIALIZE:
Name: OLD NAME
Amount: 0001234.56
Code: ABCDE
After INITIALIZE:
Name:
Amount: 0000000.00
Code:
Key Points
- INITIALIZE recursively processes group items
- FILLER items are not initialized
- Use REPLACING to override default values