Two pointer dereferences are slower than one - got to read from the top-level array, then use the pointer to read from the individual string. This way you can figure out the address of the string with about four very cheap instructions and zero memory accesses.
Plus cache locality.