GNU C標準中,struct 空數組成員妙用,構建動態數組

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);

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章