* memory_allocation
@ 2004-08-13 12:27 simon.guinot
2004-08-13 12:34 ` memory_allocation Henry Margies
2004-08-13 13:01 ` memory_allocation Jan-Benedict Glaw
0 siblings, 2 replies; 3+ messages in thread
From: simon.guinot @ 2004-08-13 12:27 UTC (permalink / raw)
To: linux-c-programming
hello,
i have a problem with a structure memory allocation...
struct dns_answer {
unsigned short type;
unsigned short class;
unsigned int ttl;
unsigned short rdlength;
unsigned int addr_answer;
} dns_answ;
all this element are not adjacent in memory... i have two
"free bytes" between rdlenght and addr_answer...
since here, i have alway made my headers like this... and no
problem...
an idea to force this structure elements to be adjacent in
memory ?
thank by advance for help
simon
ps : sorry for my poor english...
Accédez au courrier électronique de La Poste : www.laposte.net ;
3615 LAPOSTENET (0,34€/mn) ; tél : 08 92 68 13 50 (0,34€/mn)
-
To unsubscribe from this list: send the line "unsubscribe linux-c-programming" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: memory_allocation
2004-08-13 12:27 memory_allocation simon.guinot
@ 2004-08-13 12:34 ` Henry Margies
2004-08-13 13:01 ` memory_allocation Jan-Benedict Glaw
1 sibling, 0 replies; 3+ messages in thread
From: Henry Margies @ 2004-08-13 12:34 UTC (permalink / raw)
To: linux-c-programming
Hi
You could use -fpack-struct, if you are using gcc. But maybe there is
a finer solution.
Henry
--
Hi! I'm a .signature virus! Copy me into your
~/.signature to help me spread!
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: memory_allocation
2004-08-13 12:27 memory_allocation simon.guinot
2004-08-13 12:34 ` memory_allocation Henry Margies
@ 2004-08-13 13:01 ` Jan-Benedict Glaw
1 sibling, 0 replies; 3+ messages in thread
From: Jan-Benedict Glaw @ 2004-08-13 13:01 UTC (permalink / raw)
To: linux-c-programming
[-- Attachment #1: Type: text/plain, Size: 1357 bytes --]
On Fri, 2004-08-13 14:27:51 +0200, simon.guinot <simon.guinot@laposte.net>
wrote in message <I2DXAF$7B97927BCA10A589B58FC0F34E16A58F@laposte.net>:
> hello,
>
> i have a problem with a structure memory allocation...
>
> struct dns_answer {
> unsigned short type;
> unsigned short class;
> unsigned int ttl;
> unsigned short rdlength;
> unsigned int addr_answer;
> } dns_answ;
>
> all this element are not adjacent in memory... i have two
> "free bytes" between rdlenght and addr_answer...
> since here, i have alway made my headers like this... and no
> problem...
You can add "__attribute__ ((packed))" to the declaration of that
struct to force GCC to pack it. However, keep in mind that the gap does
serve a purpose! Accessing those parts at unaligned offsets may cause
quite some speed penalty on some CPUs. However, if it's a binary
structure (as it looks like), that's okay. (NB: Is your coding
endianess-save in that case?)
MfG, JBG
--
Jan-Benedict Glaw jbglaw@lug-owl.de . +49-172-7608481 _ O _
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg _ _ O
fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak! O O O
ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2004-08-13 13:01 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-08-13 12:27 memory_allocation simon.guinot
2004-08-13 12:34 ` memory_allocation Henry Margies
2004-08-13 13:01 ` memory_allocation Jan-Benedict Glaw
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).