Allora per capire come fare a creare uno stream ho fatto un programmino:
codice:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
void main(){
struct t {
char *name;
char *addr;
} msg1,msg2;
size_t SIZE=sizeof(msg1);
char packed1[SIZE];
char packed2[SIZE];
msg1.name="Pluto";
msg1.addr="Napoli";
msg2.name="Pippo";
msg2.addr="Roma";
sprintf ( packed1, "%s|%s", msg1.name, msg2.addr );
sprintf ( packed2, "%s|%s", msg2.name, msg2.addr );
printf("Messaggio 1: %s",packed1);
printf("\n");
printf("Messaggio 2: %s",packed2);
printf("\n");
}
Nei char packed ci sono le due struct che ho creato e fin qui tutto bene, ora se volessi fare l'operazione inversa come mi consigliate di fare?