How do I create an array of pointers in program space (ROM)?
If the array is being placed in data memory, this would be because you have put the const qualifier before the * in the array definition, e.g.
This makes the const bind to the type pointed to, rather than to the array itself. Put the const keyword immediately before the array name, for example:
Remember that if the object is const, you will need to provide initial values when you define the object.
In some situations you may want to have a const array pointing to const data, in which case you would have const both before and after the *, e.g.
The rule is, anything to the left of the star in a pointer definition refers to what the pointer accesses indirectly; anything to the right refers to the pointer variable itself.