正如问题所述,我希望在 C 中创建一个结构,我在编译时不知道其总大小。
例如,我想创建一个结构,其中包含一个计数值和一个包含计数元素的数组。我知道这可以实现为:
typedef struct myStruct{
int count;
int *myArray;
} myStruct;
但是,我希望这个结构占用一个可靠的内存块,以便我可以memcpy()
在以后的时间点上使用它。像这样:
typedef struct myStruct{
int count;
int myArray[count];
} myStruct;