GNU C标准中,struct 空数组成员妙用,构建动态数组

原创 2013年12月02日 10:52:22

typedef struct array 

{

      int len;//记录数据的长度

      char data[0];//没有元素,但是data指向结构体后续的地址;

}char_array;

用法:

     通过 char_array * p_array = (char_array *)malloc(sizeof(char_array)+LEN);来分配超过array结构体的实际size的空间,LEN分配数组的大小

     通过p_array->data来访问struct后续的地址空间,进行操作

    使用之后,要记得free(p_array->data);

相关文章推荐

C语言结构体(struct)常见使用方法

结构体与函数: 关于传参,首先: void func(int); func(a.b.c); 把结构体中的int成员变量当做和普通int变量一样的东西来使用,是不用脑子就想到的一种方法。 另外两...

结构struct动态数组创建与操作

在做hdoj的1009,本来这道题目不是很难,可是对于struct动态数组操作不是很熟,做了很久,在这里记录一下,避免下次继续出错。 FatMouse' Trade Time Limit: 200...

关于sizeof(空struct和空class)

struct empty_struct { }empty_struct; struct empty_class { }empty_class; 问:sizeof(empty_struct)和...

结构体数组(C++)

1.定义结构体数组 和定义结构体变量类似,定义结构体数组时只需声明其为数组即可。如: struct Student{ int num; char name[20]; ch...

C语言中,为什么结构体后面经常定义一个空数组

最近在写C代码,经常看到Linux 的头文件中有的结构体后面会定义一个空数组,不知道其为何作用?经过高人指点终于明白其要点! struct inotify_event { __s32 wd; ...

C语言结构体中字符数组的问题

第一个程序: #include #include typedef struct student {     char name[10];     int scores; }Stu_s...

【Struct(结构体)杂谈之六】无既是有---没有成员变量的Struct(结构体)

没有成员变量的Struct(结构体)        在开始本篇之前,想问大家一个问题:        ---0是什么?        ---呵呵,就是没有呗!        ---...

c语言结构体中动态数组的使用

结构体中动态数组的使用。

C C++ C++ Builder创建动态数组

  • 2011年03月12日 22:28
  • 7KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:GNU C标准中,struct 空数组成员妙用,构建动态数组
举报原因:
原因补充:

(最多只允许输入30个字)