
例如,我想创建一个包含计数值的结构和一个包含count元素的数组.我知道这可以实现为:
typedef struct myStruct{ int count; int *myArray;} myStruct; 但是,我希望这个结构占用一个可靠的内存块,所以我可以在以后的时间点使用memcpy().像这样:
typedef struct myStruct{ int count; int myArray[count];} myStruct;解决方法 听起来你正在寻找灵活的阵列成员: typedef struct myStruct{ int count; int myArray[];} myStruct; 然后,当您稍后分配它时:
myStruct *x = malloc(sizeof(myStruct) + n * sizeof(int));x->count = n;总结
以上是内存溢出为你收集整理的是否有可能创建一个在编译时不知道大小的结构?全部内容,希望文章能够帮你解决是否有可能创建一个在编译时不知道大小的结构?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)