Previous Page | Next Page

Functions and CALL Routines

ADDR Function



Returns the memory address of a variable on a 32-bit platform.
Category: Special
Restriction: Use on 32-bit platforms only.

Syntax
Arguments
Details
Comparisons
Examples
See Also

Syntax

ADDR(variable)


Arguments

variable

specifies a variable name.


Details

The value that is returned is numeric. Because the storage location of a variable can vary from one execution to the next, the value that is returned by ADDR can vary. The ADDR function is used mostly in combination with the PEEK and PEEKC functions and the CALL POKE routine.

You cannot use the ADDR function on 64-bit platforms. If you attempt to use it, SAS writes a message to the log stating that this restriction applies. If you have legacy applications that use ADDR, change the applications and use ADDRLONG instead. You can use ADDRLONG on both 32-bit and 64-bit platforms.


Comparisons

The ADDR function returns the memory address of a variable on a 32-bit platform. ADDRLONG returns the memory address of a variable on 32-bit and 64-bit platforms.

Note:   SAS recommends that you use ADDRLONG instead of ADDR because ADDRLONG can be used on both 32-bit and 64-bit platforms.   [cautionend]


Examples

The following example returns the address at which the variable FIRST is stored:

data numlist;
   first=3;
   x=addr(first);
run;


See Also

CALL Routine:

CALL POKE Routine

Functions:

PEEK Function

PEEKC Function

ADDRLONG Function

Previous Page | Next Page | Top of Page