متغیرها چگونه ذخیره می شوند؟
متغیرها چگونه ذخیره می شوند؟

تصویری: متغیرها چگونه ذخیره می شوند؟

تصویری: متغیرها چگونه ذخیره می شوند؟
تصویری: مبانی کامپیوتر 19: چگونه متغیرها در کد کار می کنند 2024, نوامبر
Anonim

متغیرها معمولا هستند ذخیره شده است در رم خود معمولاً از قوانین بالا پیروی می کند (یک اشاره گر اعلام شده در یک تابع است ذخیره شده است در پشته)، اما داده ای که به آن اشاره می کند (خود بلوک حافظه یا شیئی که با new ایجاد کرده اید) است ذخیره شده است روی پشته

به طور مشابه ممکن است بپرسید که متغیرها در کجا ذخیره می شوند؟

همه متغیرهای سراسری و استاتیک در بخش داده ذخیره می شوند، در حالی که ثابت ها در بخش کد ذخیره می شوند. متغیرهای سراسری می توانند در چند مکان باشند، بسته به نحوه تنظیم آنها - برای مثال ، const globals ممکن است در یک بخش فقط خواندنی از فایل اجرایی باشد.

به همین ترتیب، متغیرها چگونه در جاوا ذخیره می شوند؟ همه اشیاء در جاوا هستند ذخیره شده است روی پشته " متغیرها " که ارجاعات به آنها را نگه می دارد می تواند در پشته باشد یا می تواند در اشیاء دیگر موجود باشد (در این صورت آنها واقعا نیستند متغیرها ، اما زمینه ها)، که آنها را نیز در پشته قرار می دهد. بخش Heap شامل اشیاء (همچنین ممکن است حاوی مرجع باشد متغیرها ).

همچنین سوال این است که متغیرها چگونه در حافظه ذخیره می شوند؟

را حافظه اسلات برای a متغیر ذخیره می شود روی پشته یا پشته. بستگی به زمینه ای دارد که در آن اعلام شده است: هر محلی متغیر (یعنی یکی اعلام شده در یک روش) است ذخیره شده است روی پشته هر ایستا متغیر ذخیره می شود روی پشته، صرف نظر از اینکه در یک نوع مرجع یا یک نوع مقدار اعلام شده باشد.

چگونه متغیرهای محلی در پشته ذخیره می شوند؟

ذخیره سازی متغیرهای محلی روی یک پشته یک جزئیات پیاده سازی است - اساساً یک بهینه سازی. شما می توانید به این موضوع فکر کنید. هنگام وارد کردن یک تابع، فضا برای همه متغیرهای محلی در جایی اختصاص داده شده است. این بر خلاف است متغیرها اختصاص داده شده بر روی پشته، که آدرس خود آنها هستند ذخیره شده است در دیگر متغیرها.

توصیه شده: