70,024
社区成员




// 定义块的结构
typedef struct {
unsigned short id;
long len;
} Chunk3DS;
if (fread(&chunk,sizeof(Chunk3DS),1,m_fp)!=1)
{
return FALSE;
}
Chunk3DS chunk;
if (fread(&chunk.id,sizeof(unsigned short),1,m_fp)!=1)
{
return FALSE;
}
if (fread(&chunk.len,sizeof(long),1,m_fp)!=1)
{
return FALSE;
}
int nShortSize = sizeof(unsigned short); // 等于2
int nLongSize = sizeof(long); // 等于4
int SstructSize = sizeof(Chunk3DS); // 等于8
/* 对齐结构成员到1字节 */
#ifdef __GNUC__
#define GNUC_PACKED __attribute__((packed))
#else
#define GNUC_PACKED
#endif
#ifdef __arm
#define ARM_PACKED __packed
#else
#define ARM_PACKED
#endif
#ifdef WIN32
#pragma pack(1)
#endif
ARM_PACKED
typedef struct {
unsigned short id;
long len;
}GNUC_PACKED Chunk3DS;
#ifdef WIN32
#pragma pack()
#endif