Originariamente inviato da warcomeb
... mentre con 1 non ci sono avanzi di byte ...
Corretto ...

Il problema dovrebbe essere che il compilatore inserisce un ulteriore byte nella struttura per rispettare l'allineamento (sarà 4 di default ...) e quindi la struttura diventa di 16 caratteri. Il risultato è che l'ultimo valore int a 32 bit "sfora" su un byte in memoria casuale che segue la struttura (che casualmente vale BF ...)