自学内容网 自学内容网

【时时三省】(C语言基础)柔性数组的使用

山不在高,有仙则名。水不在深,有龙则灵。 ----CSDN 时时三省

示例:

cbbedd7a3920401598cc2eb694ff87ef.jpg

柔性数组是一次性开辟的一块空间,实际上后面arr的空间是通过预设的方式,给它增加了一块空间

用柔性数组得好处

第一个好处是:方便内存释放如果我们的代码是在一个给别人用的函数中,你在里面做了二次内存分配,并把整个结构体返给用户。用户调用free可以释放结构体,但是用户并不知道这个结构体内的成员也需要free ,以你不能指望用户来发现这个事。所以,如果我们把结构体的内存以及其成员要的内存一次性配好了,并返回给用户一个结构体指针,用户做一次free就可以把所有的内存也给释放掉。

第二个好处是:这样有利于访问速度.(其实,我个人觉得也没多高了正你跑不了要用做偏移量的加法来寻址)


原文地址:https://blog.csdn.net/2301_81226734/article/details/145213931

免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!