Różnica wskaźnika stosu dla wskaźnika i tablicy znaków

mamchar tablica jak poniżej:

 char buffer[100]

I kolejnychar wskaźnik jak poniżej:

 char *buffer
 buffer = malloc(100)

Kiedy używamGDB aby sprawdzić wskaźnik stosu, są one rzeczywiście różne. Czemu?