It's a double pointer the same way dayn is.
In my code snippet days_names is an array just like dayn at least in usage.
days_names is just the same array shifted over one.
dayn
[0] contains pointer to "Sun"
[1] contains pointer to "Mon"
[2] contains pointer to "Tue"
days_names
[0] contains pointer to ??? (equivalent to dayn[-1], so don't try to access it)
[1] contains pointer to "Sun" (equivalent to dayn[0])
[2] contains pointer to "Mon" (equivalent to dayn[1])