PDA

Visualizza la versione completa : [C++] #pragma pack - info


nakata-marco
13-01-2012, 09:57
Non capisco perchè mi è stata chiusa la discussione. E' un forum di discussione o no?
Prima di postare, ho cercato su goggle e nn ho trovato niente che mi soddisfa.
quello che voglio capire sul #progma pack è:
perchè deve essere usato e quindi forzare il compilatore?
perchè il compilatore non allinea le strutture in memoria in automatico?

Grazie

oregon
13-01-2012, 10:13
Originariamente inviato da nakata-marco
perchè deve essere usato e quindi forzare il compilatore?
perchè il compilatore non allinea le strutture in memoria in automatico?


L'allineamento in memoria delle strutture è per default a 8 byte.

Con quella direttiva puoi cambiarlo se ti è necessario, non devi per forza.
Lo è quando usi delle funzioni (magari di altre librerie) che si aspettano un tipo di allineamento diverso per la struttura.

Come mai niente ti soddisfa di quello che hai trovato su google?

Trovi tutte le informazioni su

http://msdn.microsoft.com/en-us/library/2e70t5y1(v=vs.80).aspx

(ovviamente, dato che è una direttiva dei compilatori Microsoft)

e mi sembra che ci sia tutto.

Per quanto riguarda la "chiusura" della discussione, ti consiglio di leggere il Regolamento. La tua richiesta era troppo generica.

Anche questa è un po' distante dalle finalità di questo forum, ma almeno hai fatto delle domande precise.

alka
13-01-2012, 10:19
Originariamente inviato da nakata-marco
Non capisco perchè mi è stata chiusa la discussione.
E' sufficiente leggere il motivo della chiusura nella discussione stessa per scoprirlo.


Originariamente inviato da nakata-marco
E' un forum di discussione o no?

Ci sono comunque delle regole.


Originariamente inviato da nakata-marco
Prima di postare, ho cercato su goggle e nn ho trovato niente che mi soddisfa.

E' difficile determinarlo se non spieghi cosa non ti soddisfa, e se non indichi questa informazione è ovvio che non ti si può rispondere altro che fare una ricerca.

Hai il dovere di dettagliare le tue incomprensioni nello specifico, cioè quello che hai trovato ma non hai capito, altrimenti la richiesta è generica e altro non ti si può dire che indicarti di leggere la documentazione (visto che non si capisce cosa non ti sia chiaro).


Originariamente inviato da nakata-marco
quello che voglio capire sul #progma pack è:
perchè deve essere usato e quindi forzare il compilatore?
perchè il compilatore non allinea le strutture in memoria in automatico?

Siamo sempre "borderline", ma almeno hai specificato qualcosa di più, per cui lascio aperto.

Loading