C语言二维数组——添加与修改

C语言二维数组——添加与修改,第1张

你这样写不太好,我建议使用结构体来存储数据,可以一开始初始化一个大一点的结构体数组,在主程序里面用一个while循环(你可以设一个标志为退出),同时在里面用switch表示各个功能项,增加会员信息就是在结构体数组中增加一个成员,修改就是修改指定结构体成员的属性值。

你这个已经开辟好了啊,

array = (struct record *)malloc(sizeof(struct record )*num)

就是开辟了num*sizeof(struct record )大小的连续空间

不过你后边对array进行 *** 作时候尽量不要用数组形式,用指针形式会比较好。

开辟好了,你这就是固定的num个元素的数组,

如果要增大这个数组中元素的个数,就是把这个数组变长的话,

只能重新申请新的总个数的空间大小,比如增长m个

就只能重新申请 (struct record *)malloc(sizeof(struct record )*(num+m))

然后把原来的数据复制过去,因为数组是连续的空间,必须一次分配好全部内存才行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11915577.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存