if (!*p) { *p = xnfalloc(strlen(new) + 1); strcpy(*p,new); } else { *p = xnfrealloc(*p,((*p)?strlen(*p):0) + strlen(new) + 2); strcat(*p," "); strcat(*p,new); }
*p = xnfrealloc(*p, strlen(*p) + strlen(new) + 2); strcat(*p, " "); strcat(*p, new);
add(char **p, char *new){    if (!*p) {        *p = xnfalloc(strlen(new) + 1);	strcpy(*p,new);    } else {        *p = xnfrealloc(*p,((*p)?strlen(*p):0) + strlen(new) + 2);	strcat(*p," ");	strcat(*p,new);    }}