当前位置:首页 > C语言 >

c语言中长度为0的数组妙用

发布时间:2017-03-01 09:23:51 作者:佚名 阅读:(404)

  长度为0的数组在GNU C是可以使用的,在定义一个变长对象的结构体是非常有用的。
  
  请看下例。
  
  struct line {
  
  int length;
  
  char contents[0];
  
  };
  
  struct line *thisline = (struct line *)
  
  malloc (sizeof (struct line) + this_length);
  
  thisline->length = this_length;
  
  显然这样的代码要比下面的定义节省空间
  
  struct line {
  
  int length;
  
  char *contents;
  
  };
  
  struct line {
  
  int length;
  
  char contents[1];
  
  };

欢迎分享转载→ c语言中长度为0的数组妙用

© 2015-2021 - 吾爱编程网 版权所有 苏ICP备18033726号-1关于我们 - 网站声明 - 联系我们