🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.std.c
Article #1555

Re: Size of structure containing char fields

#1555
From: Scott Amspoker
Date: Fri, 03 Aug 1990 18:00
34 lines
1959 bytes
In article <8631@cognos.UUCP> jimp@cognos.UUCP (Jim Patterson) writes:
>In article <1030@lzaz.ATT.COM> bds@lzaz.ATT.COM (Bruce Szablak) writes:
>>Given a structure that contains only char fields (possibly unsigned):
>>
>>	struct example1 { char a, b, c; };
>>
>>is ANSI restrictive enough [;-)] to force sizeof(example1) to be 3?
>>Is anyone aware of existing compilers for which this wouldn't be true?
>
>Sun's C compiler on a Sun 3 (with Sun OS 4.0) aligns structs on two
>byte boundaries....
>Another compiler that uses a constant 2-byte alignment rule is the
>Data General MV-series C compiler....

Interesting.  We dynamically allocate different structures back-to-back
in a common memory arena.  Some structures require word alignment and
some don't.  For a long time we simply used sizeof() to allocate the
next structure (we ran on many different machines without any problem).

We finally ran into an implementation that did not pad the character 
structures and got zapped when they got sandwhiched in between other 
structures that required alignment.  (We solved the problem by aligning 
the sizeof() in our code which is a constant expression folded at compile 
time).

The point is, for many years, systems that did *not* pad character
structures seemed to be the mavericks.  Today, I don't know.
We have it set up so we don't care anymore.

-- 
Scott Amspoker
Basis International, Albuquerque, NM
(505) 345-5232
unmvax.cs.unm.edu!bbx!bbxsda!scott
Technical Details
Message-ID: <933@bbxsda.UUCP>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!maverick.ksu.ksu.edu!unmvax!bbx!bbxsda!scott
References: <1030@lzaz.ATT.COM> <8631@cognos.UUCP>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!maverick.ksu.ksu.edu!unmvax!bbx!bbxsda!scott
From: scott@bbxsda.UUCP (Scott Amspoker)
Newsgroups: comp.std.c
Subject: Re: Size of structure containing char fields
Message-ID: <933@bbxsda.UUCP>
Date: 3 Aug 90 18:00:24 GMT
References: <1030@lzaz.ATT.COM> <8631@cognos.UUCP>
Reply-To: scott@bbxsda.UUCP (Scott Amspoker)
Organization: Basis International,  Albuquerque, NM
Lines: 34