看到的一个有意思的结构体成员定义,想请教一下
来源:8-1 结构体【内存占用分析】

完整的柠檬
2022-04-09
老师你好,今天看代码的时候发现别人在结构体里面定义了一个没有指定长度的数组
typedef struct header {
uint32_t status;
uint32_t size;
uint8_t data[];
} header_type;
平时见过的都是指定好大小的数组 比如说uint8_t data[32];
或者是用指针,表示一个不定长数组
想问问这个结构体里面uint8_t data[];
跟uint8_t *data;
效果是不是一样的呢?
写回答
1回答
-
bennyhuo
2022-04-09
这还不一样,用的时候可以给结构体多开辟一些内存,多出来的部分就是数组的
022022-04-09
相似问题