اشاره گرها
درفصل اول گفتیم داده ها در حافظه ذخیره می شود، اشاره گر ها در واقع مشخص کننده مکان شروع حافظه داده ها هستند. لذا اشاره گرها به خودی خود اهمیت زیادی ندارد و فقط به مکانی از حافظه اشاره می کنند که در آن داده قرار گرفته.
البته گاهی اوقات این قاعده نقض می شود و اشاره گرهایی فقط صرف اشاره به حافظه استفاده می شوند.
در زبان
امکان تعریف اشاره گر به هر دو صورت وجود دارد.
اشاره گر به مکان حافظه بدون نوع عمدتاً جایی کاربرد دارد که هر نوع داده ای را در مکان خاص حافظه می توانیم داشته باشیم. این کار در برنامه نویسی عادی لزومی ندارد کاربرد دیگر آن بنابه مورد استفاده توضیح داده خواهد شد.
اشاره گری که نوع دارد. هم کاربردهای زیادی دارد. از جمله آن استفاده در لیست های پیوندی است که در ادامه همین فصل توضیح داده شده است.
نحوه استفاده از آنها هم بصورت زیر است.
محتوی حافظه ای است که
به آن اشاره می کند و خود
آدرس آن مکان حافظه است.
برای تهی کردن آدرس از دستور
استفاده می کنیم.
اشاره گر به هیچ مکان حافظه نیست لذا با دستور بالا دیگر
به هیچ مکان حافظه اشاره نمی کند.
اشاره گرها بصورت های دیگری هم تعریف می شوند یکی همان متغیرهای نوع زیر برنامه است که مطرح شد (6-5-2) . دیدید که برای اینکه متغیر به هیچ مکانی اشاره نکند از
استفاده کردیم.
یک کاربرد عام اشاره گرها اختصاص حافظه در حین اجرای برنامه است تنها نکته این است که حتماً پس از اتمام استفاده حافظه آن را آزاد باید کرد. روش کار بصورت زیر است.
ساختار
در بخش اشکال زدایی مفصلاً توضیح داده خواهد شد فقط مختصراً بگوئیم که مجموعه دستورات فوق باعث می شود در صورت رخدادن هر اتفاقی در فاصله
دستور
اجرا شود.
دقت کنید برای استفاده از
حتماً باید یکی از دو حالت زیر باشد یا حافظه به آن اختصاص داده باشید و یا
به محل یک متغیر دیگر اشاره کند. محل متغیرها با استفاده از عملگر @ بدست می آید.
پیوند های خارجی
http://Olympiad.roshd.ir/computer/content/pdf/0214.pdf