詳解C語(yǔ)言之柔性數(shù)組
定義
可調(diào)整大小的數(shù)組
以0大小數(shù)組或無(wú)大小數(shù)組定義在結(jié)構(gòu)體的最后一個(gè)元素中
特點(diǎn)
1.結(jié)構(gòu)體中的柔性數(shù)組前必須包含至少一個(gè)其他成員。
2.sizeof返回的這種結(jié)構(gòu)體大小不包含柔性數(shù)組的內(nèi)存。
3.包含柔性數(shù)組成員的結(jié)構(gòu)用malloc()函數(shù)進(jìn)行內(nèi)存的動(dòng)態(tài)分配,并且分配的大小應(yīng)該大于結(jié)構(gòu)的大小,以適應(yīng)柔性數(shù)組的預(yù)期大小。
具體使用例
實(shí)現(xiàn)可調(diào)整大小的數(shù)組還可用一般的方法:
但是相比之下柔性數(shù)組有如下優(yōu)點(diǎn):
1.方便內(nèi)存釋放,如果分配兩次內(nèi)存,則需要釋放兩次。如果我們的代碼是給別人的一個(gè)函數(shù)中,并返回了整個(gè)結(jié)構(gòu)體,用戶可以調(diào)用函數(shù)free釋放結(jié)構(gòu)體,但并不知道結(jié)構(gòu)體內(nèi)的成員也需要free釋放。
2.有利于提高訪問(wèn)速度,連續(xù)的內(nèi)存分配有益于提高訪問(wèn)速度,也有益于減少內(nèi)存碎片。
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
關(guān)于函數(shù)傳參問(wèn)題(指針傳參,值傳參,引用傳參)
這篇文章主要介紹了關(guān)于函數(shù)傳參問(wèn)題(指針傳參,值傳參,引用傳參),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01C/C++ 原生API實(shí)現(xiàn)線程池的方法
線程池,簡(jiǎn)單來(lái)說(shuō)就是有一堆已經(jīng)創(chuàng)建好的線程,接下來(lái)通過(guò)本文給大家介紹C/C++ 原生API實(shí)現(xiàn)線程池的方法,感興趣的朋友跟隨小編一起看看吧2021-11-11C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)之?dāng)U展字符詳解
掌握C語(yǔ)言數(shù)據(jù)結(jié)構(gòu)的關(guān)鍵在于理解其核心概念,擴(kuò)展字符作為其中的重要一環(huán),對(duì)于編程人員來(lái)說(shuō)至關(guān)重要,本指南將為您深入剖析擴(kuò)展字符的相關(guān)知識(shí),帶您輕松掌握C語(yǔ)言數(shù)據(jù)結(jié)構(gòu),讓我們一起探索這個(gè)令人著迷的領(lǐng)域吧!2024-03-03C++?Boost?MultiArray簡(jiǎn)化使用多維數(shù)組庫(kù)
Boost是為C++語(yǔ)言標(biāo)準(zhǔn)庫(kù)提供擴(kuò)展的一些C++程序庫(kù)的總稱。Boost庫(kù)是一個(gè)可移植、提供源代碼的C++庫(kù),作為標(biāo)準(zhǔn)庫(kù)的后備,是C++標(biāo)準(zhǔn)化進(jìn)程的開(kāi)發(fā)引擎之一,是為C++語(yǔ)言標(biāo)準(zhǔn)庫(kù)提供擴(kuò)展的一些C++程序庫(kù)的總稱2022-11-11C++日期類(Date)實(shí)現(xiàn)的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用C++語(yǔ)言實(shí)現(xiàn)日期類(Date),可以實(shí)現(xiàn)確定某年某月有多少天、打印日期等功能,感興趣的可以了解一下2022-07-07C/C++?Qt?MdiArea?多窗體組件應(yīng)用教程
MDI窗體控件類似于畫(huà)布,該控件只具備展示窗體的功能,無(wú)法實(shí)現(xiàn)生成窗體,所以我們需要在項(xiàng)目中手動(dòng)增加自定義的Dialog對(duì)話框,并對(duì)該對(duì)話框進(jìn)行一定的定制,這篇文章主要介紹了C/C++?Qt?MdiArea?多窗體組件應(yīng)用,需要的朋友可以參考下2021-12-12利用C語(yǔ)言結(jié)構(gòu)體實(shí)現(xiàn)通訊錄
這篇文章主要為大家詳細(xì)介紹了利用C語(yǔ)言結(jié)構(gòu)體實(shí)現(xiàn)通訊錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-01-01