通常来说一个长度为0的数组我们称之为空数组,其包含元素的个数为0。
作用:
- 假设一个方法返回一个数组,如果它返回null,则调用方法必须先判断是否返回null,才能对返回数组进一步处理,而如果返回空数组,则无须null引用检查。鉴于此,返回数组的方法在没有结果时我们通常返回空数组,而不是null,这样处理比较方便。
- 在函数中定义空数组没有任何的意义,它指向上一个定义的变量。
- 在结构体中,可以给结构体添加一个缓存区,如下:
struct T{
int a;
int b;
……
char buffer[];
}
//在声明空间时,加上buffer_len(所需缓存区长度)
//则buffer指向结构体后的buffer_len的空间
struct T * p = (T*)malloc(sizeof(T) + buffer_len);