I have a few character arrays in the PROGMEM and an array containing address to these arrays:
PROGMEM prog_char yn_00[]=" YES >NO<";
PROGMEM prog_char yn_01[]=">YES< NO ";
PROGMEM const char *list[]= {yn_00,yn_01};
Why strcpy_P(list_buffer,(char*)pgm_read_word(list+1)); works to get yn_01’s content?
I thought the addresses to PROGMEM locations are words. Then I should use list+2 to get yn_01. But list+1 works! Is it because of the pointer++ means adding the size of the data type being pointed since list is a pointer? I’m a bit rusty on this topic.