Issues with arrays of arrays and PROGMEM

Hello All,

I am attempting to store an array of strings for use in generating a GUI. Ive tried various methods of generating tables of strings that are usable in LCD displays, serial monitoring, and comparisons, with no luck.

Currently I am attempting to simply store an array of strings in PROGMEM, and I believe I have following the example given on the site and other forum posts nearly verbatim, and I've no idea why it is still producing an error. Bellow is what I have for pertinent code, which is all before my setup():

#include <avr/pgmspace.h> //For putting stuff in program memory
const char string00[] PROGMEM = "A 1: 2: ";
const char string10[] PROGMEM = " 1: Status ";
const char string20[] PROGMEM = " 1: Actuals ";

const char *stry0[] PROGMEM = {string00, string10, string20}; //x, then y

And the error I receive is:

exit status 1
variable 'stry0' must be const in order to be put into read-only section by means of 'attribute((progmem))'

Any assistance would be greatly appreciated. Thank you!

const char * const stry0[] PROGMEM ....

Any assistance would be greatly appreciated.

As Budvar10 points out, you need a const array of const pointers, to store them in PROGMEM.

I really don't understand the need to store the pointers in PROGMEM, though. Are you REALLY going to have that many strings?

Thank you for the help! I'll be trying this out tonight.

PaulS:
As Budvar10 points out, you need a const array of const pointers, to store them in PROGMEM.

I really don't understand the need to store the pointers in PROGMEM, though. Are you REALLY going to have that many strings?

I can probably store the pointer arrays in RAM, but I'd like to try to learn how to store everything I possibly can in Flash. I'm also afraid of scope creep with this project, and would like to not have programmed everything and then later realize I've ran out of RAM by some small amount, then go back and reprogram a whole bunch of things again.