Arm linux 下的enum的size
请教一下,在arm linux下我定义的enum,sizeof(enum)只有1B,但是在linux下的enum就有4B,我知道是因为平台的差异,但是怎么解决呢,因为有些数据的存储是按照sizeof(enum)读取的,这样我在linux和arm linux上读取的数据就会有区别,所以怎麽样才能统一呀,比如说让linux上的enum就是1个byte呀?
type TEnum unsigned char;
然后在linux和arm linux上都用TEnum。
typedef TEnum unsigned char;
。
enum _MsgClass{Nothing=0,EarlyWarn,MsgBack,Others};
enum _MsgColor{Red=1,Orange,Yellow,Blue,Green};
struct _MsgStru
{
unsigned char Data[MaxMsgLen];
_MsgColor ColorType;
_MsgClass ClassType;
_RevTime RevTime;
short TextPos;
bool Readed;
};
可是我是要做sizeof(_MsgStru),这样的话在arm linux下的大小还是不一样呀,而且typedef TEnum unsigned char 也不能作为一个enum数据吧
{{
相关问答:
引用内容vsking 2009-12-25 22:56:52
现在是win2008和iis8的时代了,不要还停留在iis5时代,win2008被评为十佳操作系统之首不是偶然的,你要是..
我的问题是:
最近想买个服务器,看了dell上的系统定制选择,一些 ......
现在需要在一个嵌入式系统中实现时间函数,编译器未提供time库函数,请问大家如何用c语言实现时间函数啊?
年月日时分秒 到 整数秒(从1970年开始) 之间的相关转换啊
类似mktime 和localtime的功能,谢谢
mktime ......
rt,我试了网上直连Acces数据库的方法,windows下没有问题,但是在linux下不行,谁能给点提示?谢谢
你怎么连的?
Acces数据库..
你怎么练的呢?
Java code:
static String DBDRIVER = "sun.jd ......