首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

笔考题,这到底要考的是什么知识点

2012-10-13 
笔试题,这到底要考的是什么知识点?问题:用C去描述下面数据结构的形式:字段内存字节版本信息2数据总长度4数

笔试题,这到底要考的是什么知识点?
问题:
用C去描述下面数据结构的形式:
  字段 内存字节
版本信息 2
数据总长度 4
数据内容 内容的长度
可选数据长度 2
可选消息内容 内容的长度
数据包的标志 4
校验码 2


笔试时,我就直接用C的形式封装一个结构体算是解答完了,可面试官问我这题到底想考的是什么知识点,我说就是这么封装下,他说不是,请问下,这到底想考的是什么知识点呀!!!

[解决办法]
考虑内存对齐
[解决办法]
内存对齐问题吧!这样有利于数据的接收和发送的。
[解决办法]

C/C++ code
#pragma pack(push,1)struct PACK {    unsigned short int ver    ;//版本信息     2    unsigned       int tlen   ;//数据总长度   4    unsigned      char data[0];//数据内容     内容的长度} pack;struct OPTION {    unsigned short int olen   ;//可选数据长度 2    unsigned      char odat[0];//可选消息内容 内容的长度};struct TAIL {    unsigned       int falg   ;//数据包的标志 4    unsigned short int crc    ;//校验码       2};#pragma pack(pop)
[解决办法]
结构体对齐,大小端的问题即字节序的问题。
[解决办法]
探讨
C/C++ code
#pragma pack(push,1)
struct PACK {
unsigned short int ver ;//版本信息 2
unsigned int tlen ;//数据总长度 4
unsigned char data[0];//数据内容 内容的长度
} pack;
stru……

热点排行