Qual é a necessidade de matriz com elementos zero?

No código do kernel do Linux, encontrei a seguinte coisa que não consigo entender.

 struct bts_action {
         u16 type;
         u16 size;
         u8 data[0];
 } __attribute__ ((packed));

O código está aqui:http://lxr.free-electrons.com/source/include/linux/ti_wilink_st.h

Qual é a necessidade e o propósito de uma matriz de dados com elementos zero?

questionAnswers(5)

yourAnswerToTheQuestion