Pointer variable in COBOL is a special type of variable. In this post I am sharing what is pointer variable, how to initialize and use them.
What are pointers
Another extension of the USAGE clause is to define data items that contain addresses of data or procedures.
POINTER is a four-byte data item that holds the address of another data item. PROCEDURE-POINTER is a four- or eight-byte data item (depending on the operating system) that contains the address of a program-entry point.
Rules for Pointer Variables
- A POINTER data item cannot have a PICTURE clause.
- The figurative constant NULL (or NULLS) can be used to initialise POINTER and PROCEDURE-POINTER data. No other literal value can be assigned to POINTER data.
In addition to the new data types, vendors implement special registers for use with address data:
ADDRESS OF a register that exists for each record (level 01 or 77) in the Linkage Section of the Data Division. The contents are the address of the data item, for example, ADDRESS OF record.
LENGTH OF a register that contains the length in bytes of the named data item, for example, LENGTH OF identifier.
POINTER variable you cannot use in a MOVE statement. They are manipulated by an extension of the SET statement that assigns them values.
SET identifier-1 TO ADDRESS OF identifier-2
where identifier-1 is a POINTER data item and identifer-2 is any data item in the Working-Storage Section or Linkage Section.
- POINTER data items can be used in relation conditions (to test for equality) and as arguments in a CALL statement.
- PROCEDURE-POINTER data items can be used as the object of a CALL statement.
-
Quick SQL Interview Questions for Data Engineers (Little Tricky)
Prepare for Data Engineer interviews with quick SQL interview questions, tricky SQL queries, table creation scripts, joins, window functions, ranking, duplicate records, latest row logic, and real-world examples
-
AWS Glue Crawler Issue with Dynamic S3 Folder Paths? Here’s the Complete Fix
Learn how to fix AWS Glue crawler issues when S3 paths contain dynamically changing folders like hash values or UUIDs. Step-by-step beginner-friendly guide.
-
How to Create a Generic Stored Procedure for KPI Calculation (SQL + AWS Lambda)
In modern data engineering, building scalable and reusable systems is essential. Writing separate SQL queries for every KPI quickly becomes messy and hard to maintain. A better approach?👉 Use a Generic Stored Procedure powered by Dynamic SQL, and trigger it using AWS Lambda. In this blog, you’ll learn: What is a Generic Stored Procedure? A…







One response
[…] are data items that contain virtual storage addresses. You define them either explicitly with the USAGE IS POINTER clause in the DATA DIVISION or implicitly as ADDRESS OF special […]
LikeLike