No no .. non e` assolutamente la stessa!

memset() imposta N bytes ad un certo valore. Quindi invece di:

codice:
q=p;
for (i=0; i<n; i++) {
*q=a;
q=q+1;
}
*q='\0';
Potresti fare:

codice:
...
memset( p, a, n );
p[ n ] = '\0';
...
E` molto piu` fiQo .. :sexpulp:

Ciao.