Eu tenho uma grande confusão para entender a diferença entre `char * var [3]`, `char var [3] [15]`

Como no título.

Estou confuso entre eles.

char var[3][15]= {"Hello_world!", "good", "bad"}; // as known this is for an 2D array.  
char *var[3]= {"Hello_world!", "good", "bad"}; // and this I think also 2D array, but how.

Qual a diferença entre eles?
Quais são os casos para usar isso ou aquilo?

Me desculpe, mas eu tenho uma grande confusão entre eles.

questionAnswers(4)

yourAnswerToTheQuestion