共2条
1/1 1 跳转至页
ARM ARM数据存储的问题,困扰我好几天了。

问
我用的系统是ADS1.2,在做JPEG解码的时候,首先定义了一个bmp的头文件
typedef struct
{
unsigned short bfType;
unsigned int bfSize;
unsigned short bfReserved1;
unsigned short bfReserved2;
unsigned int bfOffBits;
} BITMAPFILEHEADER
BITMAPFILEHEADER bf;
我定义
bf.bfType=0xabcd;
bf.bfSize=0x12345678;
但是运行后,发现bf存储的时候却是cd ab 00 00 78 56 34 12,
为什么bfType和bfSize中间多了两个00呢?
程序在vc正常运行。具体见附件 答 1: 解决了,呵呵,加__packed就可以了。 答 2: re能否讲清楚一点? 答 3: 呵呵,字对齐的原因,看编译器手册,
typedef struct
{
unsigned short bfType;
unsigned int bfSize;
unsigned short bfReserved1;
unsigned short bfReserved2;
unsigned int bfOffBits;
} BITMAPFILEHEADER
BITMAPFILEHEADER bf;
我定义
bf.bfType=0xabcd;
bf.bfSize=0x12345678;
但是运行后,发现bf存储的时候却是cd ab 00 00 78 56 34 12,
为什么bfType和bfSize中间多了两个00呢?
程序在vc正常运行。具体见附件 答 1: 解决了,呵呵,加__packed就可以了。 答 2: re能否讲清楚一点? 答 3: 呵呵,字对齐的原因,看编译器手册,
共2条
1/1 1 跳转至页