В коде ядра Linux я нашел следующее, чего не могу понять.
struct bts_action {
u16 type;
u16 size;
u8 data[0];
} __attribute__ ((packed));
Код здесь: http://lxr.free-electrons.com/source/include/linux/ti_wilink_st.h
Какова необходимость и цель массива данных с нулевыми элементами?