C的结构体存储

来源:互联网 发布:snh48知乎马鹿 编辑:程序博客网 时间:2024/04/29 04:34

没有按字节对齐

----------------------------------------------------------------------------------------如下结构体:

typedef struct DATA_LINK_LIST_struct
{
unsigned char ucaUpFlag[5];// 5字节

unsigned int uiBuffLen;// 4字节

unsigned int uiUpNode;// 4字节

unsigned int uiCurrNode; // 4字节

unsigned int uiNextNode;// 4字节

unsigned int usTermSnr;// 4字节

unsigned char ucRecordType;// 1字节
}DATA_NOT_T;

----------------------------------------------------------------------------------------如下结构体:

DATA_NOT_Tg_LastNote;


----------------------------------------------------------------------------------------如下结构体:

g_LastNote.uiBuffLen = 1001;
g_LastNote.uiUpNode = 1002;
g_LastNote.uiCurrNode = 1003; 
g_LastNote.uiNextNode = 1004;

g_LastNote.usTermSnr = 1005;

g_LastNote. ucRecordType = ‘0’;

memset(g_LastNote.ucaUpFlag, 0xFF, sizeof(g_LastNote.ucaUpFlag));
g_LastNote.ucaUpFlag[4] = 0xAC;


----------------------------------------------------------------------------------------如下结构体:

sizeof(DATA_NOT_T) ==  32;

----------------------------------------------------------------------------------------内存里的存储

地址数值00xFFFFFFFF40xAC00000080xE9030000120xEA030000160xEB030000200xEC030000240xED030000280x30000000

000000  : 代表为了内存对齐补传的字节数据;





1 0
原创粉丝点击