struct m{
char *p0_start, *p0_end;
char *p1_start, *p1_end;
char *p2_start, *p2_end;
char *p3_start, *p3_end;
char *p4_start, *p4_end;
};
p0_start=malloc(1024); p0_end= p0_start+ 1024;
p1_start=malloc(2048); p0_end= p1_start+ 2048;
.....
free(p0_start); p0_start= p0_end= NULL;
p0_start=malloc(1024); p0_end= p0_start+ 1024;
.....