| delorie.com/archives/browse.cgi | search |
| Xref: | news2.mv.net comp.os.msdos.djgpp:3678 |
| From: | Roland Exler <R DOT Exler AT jk DOT uni-linz DOT ac DOT at> |
| Newsgroups: | comp.os.msdos.djgpp |
| Subject: | Re: more sizeof questions |
| Date: | Fri, 10 May 1996 07:50:57 -0700 |
| Organization: | Institute for el. Measurement, University of Linz, Austria |
| Lines: | 34 |
| Message-ID: | <319357D1.9FD@jk.uni-linz.ac.at> |
| References: | <199605090048 DOT UAA09442 AT eelab DOT newpaltz DOT edu> |
| NNTP-Posting-Host: | sensor4.emt.uni-linz.ac.at |
| Mime-Version: | 1.0 |
| To: | djgpp AT delorie DOT com |
| DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
John Fortin wrote:
> typedef unsigned char BYTE;
> typedef unsigned short WORD;
> typedef unsigned long DWORD;
>
> typedef struct
> {
> DWORD VESASignature; 4
> WORD VESAVersion; 2
> DWORD OEMStringPointer; 4
> DWORD Capabilities; 4
> DWORD VideoModePointer; 4
> WORD TotalMemory; 2
> BYTE Info[236]; 236
> } _VGAInfoBlock; = 256 bytes
>
> John E. Fortin
> fortin44 AT eelab DOT newpaltz DOT edu
Each element of the structure will be aligned, so 2 bytes will be padded after
VESAVersion and 2 after TotalMemory which gives 260 instead of 256!
Try __attribute__ ((packed)) or #pragma pack(1) as some previous posts has
shown.
Roland
+---------------------------------------+---------------------------+
I Roland Exler I EMAIL: I
I Universitaet Linz I R DOT Exler AT jk DOT uni-linz DOT ac DOT at I
I Institut fuer Elektrische Messtechnik I I
I Altenbergerstr. 69 I Phone: I
I A-4040 Linz, AUSTRIA I + 43 732 2468 9205 I
+---------------------------------------+---------------------------+
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |