Mahalaga ang pag-unawa kung paano iniimbak ang datos sa memorya para sa mahusay na programming sa C at C++. Ang mga estruktura at unyon ay mga pundamental na datos na nakakaimpluwensiya sa pagkakaayos at sukat ng memorya. Ang artikulong ito ay nagpapaliwanag kung paano inilalaan ang memorya para sa mga uring ito ng datos at kung paano eksaktong matatantiya ang kanilang mga sukat.
Pag - aalis ng Alaala sa mga Ipusta
Ang mga estruktura sa C at C++ ay mga kalipunan ng mga variables, maaaring may iba't ibang uri, na nakapangkat sa ilalim ng isang pangalan.Ang tagatipon ay nagtatabi ng memorya para sa isang istraktura sa pamamagitan ng paglalagay ng bawat miyembro sequentially, na may posibleng pandidamento upang matugunan ang mga kahilingan ng pagkakahanay.
Ang kabuuang sukat ng isang istraktura ay ang kabuuan ng mga sukat ng mga kasapi nito pati na ang anumang pandagdag na para sa pagkakahanay.Titiyakin ni Panding na ang bawat kasapi ay magsisimula sa isang address divisible sa pamamagitan ng kanyang sukat o kahilingan ng pagkakahanay.
Ang Alaala ng mga Pagsasama - sama
Ang mga Union ay katulad ng mga istraktura ngunit iba iba sa allocation ng memorya. Ang lahat ng mga miyembro ng isang unyon ay may parehong memory space, na katumbas ng sukat ng pinakamalaking miyembro nito. Ito ay pumapayag sa multiple data types na umokupa sa parehong lokasyon ng memorya.
Ang sukat ng isang unyon ay itinatakda ng pinakamalaking kasapi nito, at posibleng pandingding para sa pagkakahanay. Ang pagsusulat sa isang miyembro ay umaapekto sa datos ng ibang miyembro, kaya ang mga unyon ay ginagamit para sa memory-diperensiyang pagbabahagi ng datos.
Dumarami ang Pagkalkula sa Data
Ang pagkalkula sa sukat ng mga istraktura at unyon ay kinasasangkutan ng pagbubuod ng mga sukat ng indibiduwal na mga kasapi at pagsasaalang-alang ng pagpapares para sa pagkakahanay. Ang operator sa C at C++ ay nagbibigay ng kabuuang sukat sa bytes.
Halimbawa, isaalang - alang ang isang kayarian na may at isang .[1] Ang sukat ng kayarian ay depende sa laki ng , ang laki ng , at ang pandingding na idinagdag para sa pagkakahanay.
- Gamitin upang malaman ang kabuuang sukat.
- Isaalang - alang ang mga kahilingan sa paghahanay ng mga miyembro.
- Ulat para sa padding na idinagdag ng tagatipon.
- Tandaan na ang mga pagsasama ay may iisang memorya sa gitna ng lahat ng miyembro.