的数据类型,我想创建的大小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类型,之后我看到这篇文章:Size of the given structure我想象我可以创建的大小,我需要的INT。所以,我试图创建一个结构,像这样:
typedef struct
{
int datachunk : 4064;
}
BLOCK;
当然,这是野生的想象力和我错了。
所以,我怎么能创造出大小508个字节的结构包含相同大小的数据类型整数(即4064
没有内置的整数,大型的任何实现我所知道的。如果你真的需要一个4064位的整数,你将不得不使用一些大的整数实现,这有效地创建一个大的整数出多个较小的整数。 –