导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→移植uip协议栈时,大家遇到过“边界不对齐,大/小端,存储缝

* 87956: 移植uip协议栈时,大家遇到过“边界不对齐,大/小端,存储缝隙”这种问题吗?

   anfengmz 
anfengmz发表的帖子 

 移植uip协议栈时,大家遇到过“边界不对齐,大/小端,存储缝隙”这种问题吗?
移植uip协议栈到ARM时,大家遇到过“边界不对齐,大/小端“,或叫” 存储缝隙”这种问题吗?例如下面:

struct arp_hdr {
  struct uip_eth_hdr ethhdr;
    
  u16_t hwtype;
  u16_t protocol;
  u8_t hwlen;
  u8_t protolen;
  u16_t opcode;
  struct uip_eth_addr shwaddr;
  u16_t sipaddr[2];
  struct uip_eth_addr dhwaddr;
  u16_t dipaddr[2]; 
};

这里uip定义了一个嵌套的结构,另外有:#define BUF   ((struct arp_hdr *)&uip_buf[0])

uip_buf是已经预先定义的un char类型的缓冲区,但是调试显示 sizeof(BUF->  ethhdr) 不等于14,我查了书,好象这是C语言中的边界不对齐问题,请问高手,我能否改变我的编译器设置就解决这个问题?谢谢!!



发表时间:2006年1月11日12:01:54

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:谁有CPLD与24C02的测试程序???找了半天没有找到什么。谁有CPLD与24C02的测试程序能给
[下一篇帖子]:提供三星半导体器件,包括TFT-LCD,ARM,FLASH。 我们是三达香港有限公司北京办事