شما تنها می توانید از مشخصه ذخیره سازی خودکار برای نام متغیرهای شناسایی شده در بلوک ها یا نام های پارامترهای عملیاتی استفاده کنید. به هر حال این نام ها به صورت پیش فرض دارای ذخیره سازی خودکار می باشند. بنابراین مشخصه نوع ذخیره سازی خودکار معمولا در وضعیت داده ها تکراری می باشد.
شما می توانید متغیرهای خودکار اولیه را به جز پارامترها مشخص کنید. اگر صریحا مقداری را برای یک هدف اتوماتیک مشخص نکنید، مقدار آن نامشخص می باشد. اگر شما مقدار اولیه ای را ایجاد کنید، عبارتی که نشان دهنده مقدار اولیه می باشد بر مبنای زبان برنامه نویسی C یا C++ معتبر می باشد. سپس هدف بر مبنای آن مقدار اولیه هر زمان که برنامه محتوا را بلوکه می کند، تنظیم می شود. این موارد شامل تعریف اهداف ورودی می باشد.
توجه داشته باشید زمانی که از دستور goto برای جهش به بخش میانی بلوک استفاده می کنید، متغیرهای اتوماتیک درون بلوک آغاز نمی گردند.
اهدافی که به همراه مشخصه ذخیره سازی خودکار می باشند دارای مدت زمان ذخیره سازی خودکار هستند. زمانی که یک بلوک وارد می شود، ذخیره سازی برای اهداف خودکار در آن بلوک در دسترس قرار می گیرند. زمانی که بلوک خارج می گردد، اهداف دیگر برای استفاده در دسترس نمی باشند. هدف شناسایی شده بدون هیچ مشخصه پیوندی و مشخصه ذخیره سازی ایستا دارای دوره زمانی ذخیره سازی خودکار می باشد.
اگر هدف خودکار درون یک تابع که به صورت بازگشتی فراخوانی می گردد، تعریف شود، حافظه برای هدف در هر بازخوانی بلوک اختصاص داده می شود.
متغیر خودکار دارای محدوده بلوکی بوده و بدون پیوند می باشد.
- دستور بلوک در صفحه 175
- دستور goto در صفحه 189
- شرح نقش در صفحه 148
مشخصه طبقه ذخیره سازی بیرونی این امکان را به شما می دهد که اهداف و توابعی را که چندین فایل مبدا می تواند مورد استفاده قرار دهند، بیان کنید. متغیرهای بیرونی، تعریف وظایف، یا دستورات متغیرهای توصیفی یا نقش ها را با مد نظر قرار دادن بخشی از فایل مبدا، قابل استفاده می سازند.
دستورات بیرونی خارج از تابع یا در آغاز بلوک ظاهر می شوند. اگر این دستورات به توصیف تابع بپردازند یا خارج از تابع آشکار شوند یا به توصیف هدف با پیوند بیرونی بپردازند، کلیدوازه بیرونی اختیاری می باشد. اگر شما به تعیین مشخصه طبقه ذخیره سازی نپردازید، تابع دارای پیوند بیرونی می باشد.