Declaring Program Memory Variables

A program memory variable is declared using the __pmem qualifier. Here are some examples:

typedef struct // simple structure declaration

{

   int i;

   char *p;

   long l;

} test;



__pmem int ip1 = 5; // initialized int in program memory

__pmem int ip2; // uninitialized int in program memory

int *__pmem ppx1; // pointer in program memory to int in data memory

__pmem int * __pmem ppp1; // pointer in program memory to int in program memory

__pmem int parr[ 100 ]; // array in program memory

__pmem test sp; // structure in program memory

__pmem int aap[ 2 ][ 2 ]; // two dimensional array in program memory

__pmem int *pxp1; // pointer in data memory to int in program memory