To illustrate the difference:

Compile time allocation:

static char fred[128];

Run time equivalent:

char * fred;
fred = malloc(128);