サイズが 508 バイトの構造体を作成したいと思います。
このコードを見て、任意のサイズの構造体を作成できると推測しました。
#include <stdint.h>
/**
* Common Data Types
*
* The data types in this section are essentially aliases for C/C++
* primitive data types.
*
* Adapted from http://msdn.microsoft.com/en-us/library/cc230309(PROT.10).aspx.
* See http://en.wikipedia.org/wiki/Stdint.h for more on stdint.h.
*/
typedef uint8_t BYTE;
typedef uint32_t DWORD;
typedef int32_t LONG;
typedef uint16_t WORD;
/**
* BITMAPFILEHEADER
*
* The BITMAPFILEHEADER structure contains information about the type, size,
* and layout of a file that contains a DIB [device-independent bitmap].
*
* Adapted from http://msdn.microsoft.com/en-us/library/dd183374(VS.85).aspx.
*/
typedef struct
{
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;
} __attribute__((__packed__))
BITMAPFILEHEADER;
サイズが 508 バイトの int 型が必要です。この投稿を読んだ後:必要なサイズの int を作成できると想像しました。だから私は次のような構造体を作成しようとしました:
typedef struct
{
int datachunk : 4064;
}
BLOCK;
もちろん、それは勝手な想像であり、私は間違っています。
では、同じサイズのデータ型整数 (つまり 4064?