struct person{
char *all;
char *fname;
char *lname;
char *age;
}p[NUMBER];

この構造体の中身はいつ領域が割り当てされてるの?