我有一些nesC代码,并且有一些严格的定义,例如下面的示例:

typedef nx_struct serial_header {
  nx_am_addr_t dest;
  nx_am_addr_t src;
  nx_uint8_t length;
  nx_am_group_t group;
  nx_am_id_t type;
} serial_header_t;


我不知道为什么在第一行中他们写serial_header而在最后一行中他们写serial_header_t。我想知道这个结构的实际名称是什么,在最后一行添加的_t是什么意思?

最佳答案

1)您可以假设serial_header_t等效于nx_struct serial_header,因此您可以在程序中声明变量,例如
         serial_header_t nx1;

注意:您不需要使用nx_struct serial_header。

2)如果您错过了typedef和简单的声明,如下所示,

nx_struct serial_header {
  nx_am_addr_t dest;
  nx_am_addr_t src;
  nx_uint8_t length;
  nx_am_group_t group;
  nx_am_id_t type;
}


然后,
   在源代码中,您应该使用类似:

        nx_struct serial_header nx1;


希望这可以帮助。

关于c - C或nesC中struct的语法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12670240/

10-12 16:09