/Anonimizzato9583Utente anonimizzato13 gen 2012, 09:32Ciao ragazzi, come da titolo volevo capire il significato di #pragma pack e quali sono i vantaggi e svantaggi. Grazie
/Anonimizzato7532Utente anonimizzato13 gen 2012, 09:40Che io sappia serve per allineare le strutture in memoria ad un multiplo di 2 elevato a x. Per più info puoi leggere anche quà:
/Anonimizzato9583Utente anonimizzato13 gen 2012, 09:49Ma perchè deve essere usato e quindi forzare il compilatore? perchè il compilatore non lo esegue in automatico?
/Anonimizzato7532Utente anonimizzato13 gen 2012, 09:58Il compilatore lo esegue in automatico come li aggrada a lui. il pack si usa per risparmiare memoria per la struct stessa ma devi essere sicuro di ciò che fai. Il pack ti cambia l'offset in memoria dei membri della struttura. Si usa per di + in sistemi embedd dove anche un byte è importante. http://en.wikipedia.org/wiki/Data_structure_alignmen
/Anonimizzato7532Utente anonimizzato13 gen 2012, 10:06Se sbagli potrai avere problemi con funzioni di lettura/scrittura sequenziale tipo fwrite/fread e i dati letti/scritti possono essere corrotti. p.s.: Ma i link che ti metto li leggi o no?
/Anonimizzato9583Utente anonimizzato13 gen 2012, 10:10I link più le tue spiegazioni mi hanno aiutato a capire meglio questo mio dubbio grazie...