Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11155
  • 博文数量: 11
  • 博客积分: 410
  • 博客等级: 下士
  • 技术积分: 120
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-23 13:02
文章分类
文章存档

2011年(1)

2010年(10)

我的朋友

分类:

2010-11-02 15:10:17


typedef struct
{
    unsigned int    flag;
    unsigned short    cmd;
    unsigned short    len;
    unsigned short    result;
    unsigned short    reserve;
    char data[0];
}STRUCT_CMD_HEAD,*LPSTRUCT_CMD_HEAD;


在最后留一个保留字节长度为零,用于以后的扩展,只能动态分配。
malloc(sizeof(STRUCT_CMD_HEAD) + datalen);


#define exchange(x,y) do{int tmp; \
                         tmp=x;\
                         x=y;\
                         y=tmp;\
                         }while(0)



用do while把宏包含起来,可以避免一些奇怪的问题,具体情况自己分析吧,网上也能搜到好多。



typedef struct a
{
    int temp1;

    int temp2;
}STRUCT[1];


将一个结构体定义成一个数组,现在还不是太理解这个的好处,据说是可以减小栈里的存储空间。

阅读(184) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~