|
|
NM callable only.
This routine can be used to perform arithmetic on a 64-bit pointer value. Byte
offsets can be added to or subtracted from a pointer by specifying eithger a
positive or negative offset value.
Syntax
@64 I64 @64 I32
HPFADDTOPOINTER (base_ptr, offset, return_ptr, status);
Parameters
- base_ptr
64-bit pointer by reference (required)
The base_ptr can be a 64-bit pointer to an object of any type.
- offset
64-bit signed integer by reference (required)
The offset can be any positive or negative value. Specifying a positive
value will move the return_ptr forward from the previous base_ptr, while
a negative value will move the return_ptr backward from the
base_ptr
- return_ptr
64-bit pointer by reference (required)
The return_ptr is an output parameter that will have the new pointer
value returned to it. It can be a 64-bit pointer to an object of any
type
- status
32-bit signed integer by reference (optional)
Returns the status of the HPFADDTOPOINTER call. If
no errors or warnings are encountered, status returns 32 bits of
zero. If errors or warnings are encountered, status is interpretted
as two 16-bit fields.Bits (0:16) comprise status.info. A negative
value indicates an error condition, and a positive value indicates
a warning condition.Bits (16:16) comprise status.subsys. The value
represents the subsystem that set the status information.
Operation Notes
No attemt is made to verify that the pointer value returned
is a legitimate pointer to a valid object. Any invalid pointers
will be detected and generate errors when the pointers are dereferenced.
Related Information
- Manual
Accessing Files Programmer's Guide
|