Sto tentando di dirti che non puoi stampare una stringa in quel modo perché tu stai passando a printf un puntatore a intero (4/8 byte a seconda) e non a char (1 byte) per cui non otterrai mai i valori corretti, ma leggerai anche parte dei successivi. Inoltre si aggiunge il problema dell'allineamento della struttura ( http://stackoverflow.com/questions/4...ucture-packing ).
P.s. prima non avevo considerato l'allineamento.