[ بستن ]

سیستم وبلاگ پارسی باکسسیستم مدیریت فروش هاست و دامینسایت شخصی محسن داوری برنامه نویس PHPهماهنگی با موتورهای جستجو , رنکینگ گوگل , google pagerank , page rank , seo , search

  انجمن اینترنتی برنامه نویسان  
  برنامه نویسی و رفع اشکال و نرم افزارها  
 
منوی اصلی

بخش ها

نویسندگان

آرشیو

آمار
بازدید امروز : 81
بازدید دیروز : 48 ‍
بازدید این ماه : 1164
بازدید امسال : 13727
بازدید کل : 24791
تعداد پست ها : 87
تعداد لینک های لینکستان : 26
تعداد نظر سنجی های وبلاگ : 2

 
سخن روز
سلام دوستان از امروز برای خواندن مطالب این وب سایت می توانید در خبرنامه ویژه ما عضو شوید تا رمز مطالب برای شما ارسال شود. هنگام عضویت در خبرنامه ویژه به جای اسم نام و استان خود را ( محمد حسن بهجت (یزد)) نوشته و بجای ایمیل هم ایمیل یاهو خود را وارد کنید. بقیه دوستان عضو هم آی دی یاهو ما را اد کنند. کلیه دوستان می توانند مقالات و نوشته های خود را در رابطه با علوم کامپیوتری به ایمیل وب سایت ارسال نمایند تا در وب سایت برای نمایش عموم گذاشته شود... خواهشمند است در پایان مقالات خود نام و نام خانوادگی و استان و رشته تحصیلی و سن خود را ذکر نمائید.به مقالات برتر مبلغ ای اهدا خواهد شد. با تشکر _ مدیریت سایت محمد حسن بهجت شماره ارسال مسیج : 09133522892


اشاره گر ها / قسمت 8/ قسمت آخر
 
  • اشاره‌گر به اشاره‌گر

      بطوری که در گذشته بیان شد ، اگر متغیری آدرس متغیر دیگری را در خود نگه دارد آن را اشاره‌گر نامند . حال اگر متغیر دوم نیز از نوع اشاره‌گر باشد در این صورت متغیر اول یک اشاره‌گر به اشاره‌گر است .چنین موقعیتی را اشاره‌گر به اشاره‌گر نامند . گاهی ممکن است تصور و فهم اشاره‌گر به اشاره‌گر برای دانشجویان ایجاد اشکال کند .

شکل زیر مفهوم اشاره‌گر به متغیر عادی و اشاره‌گر به اشاره‌گر را روشن می‌کند :

نمایش اشاره‌گر به متغیر عادی و اشاره‌گر به اشاره‌گر

همانطور که ملاحظه می‌کنید ، مقدار یک اشاره‌گر معمولی ، آدرس یک متغیر است  اما در مورد اشاره‌گر به اشاره‌گر ، اولین اشاره‌گر آدرس اشاره‌گر دوم را دارد که آن هم به نوبة خود آدرس متغیر دیگری را در خود دارد . این روش می‌تواند (به‌صورت تودرتو) تا هرچند بار که نیاز باشد ، تکرار گردد . اما در عمل کمتر به بیش از یک بار نیاز پیش می‌آید و داشتن تصور صحیح از آن نیز برای اغلب برنامه‌نویسان مشکل است .

برای توصیف متغیرهایی از نوع اشاره‌گر به اشاره‌گر باید دو ستاره در جلوی آن قرار داد . برای مثال توصیف زیر به کامپایلر می‌گوید که متغیر z یک اشاره‌گر به اشاره‌گر از نوع float است :

float   **z ;

به هرحال باید توجه داشته باشید که z یک اشاره‌گر به یک مقدار اعشار نیست ؛ بلکه یک اشاره‌گر به اشاره‌گری است که اشاره‌گر دوم می‌تواند آدرس متغیری از نوع float را داشته باشد .

برای دستیابی به مقدار متغیر هدف که آدرس آن در اشاره‌گر دوم است ، باید اپراتور ستاره را دوباره بکار ببرید . مانند مثال زیر :

# include <stdio.h>

main ( )

 {

   int  x , *p , **q ;

   x = 10 ;

   p = &x ;

   q = &p ;

   printf ("%d" , **q) ;        / * print the value of x */

}

در این مثال ، p به‌عنوان اشاره‌گر به یک متغیر int و q نیز به‌عنوان اشاره‌گر به یک اشاره‌گری که می‌تواند آدرس متغیری از نوع int را داشته باشد ، توصیف شده است . حال نتیجه اجرای printf   این خواهد شد که 10 (مقدار متغیر x) روی صفحه نمایش ، نشان داده شود .

 

یادآوری - آرایه‌ای از اشاره‌گرها ، نوعی از اشاره‌گر به اشاره‌گر است .

 

باتوجه به مباحث این فصل می‌توان نتایج زیر را در مورد اشاره‌گرها بیان کرد :

1 ـ دو عملگر یا اپراتور در مورد اشاره‌گرها مورد استفاده قرار می‌گیرند که عبارتند از : * و & . عملگر & یک عملگر یکانی است که آدرس عملوند یا اپراند خود را مشخص می‌کند . عملگر * نیز یک عملگر یکانی است که محتویات یک آدرس حافظه را مشخص می‌کند . بنابراین عملگر * مکمل عملگر & می‌باشد .

2 ـ اعمال متداول روی اشاره‌گرها عبارتند از :

الف) عمل انتساب یا جایگذاری

ب) اعمال محاسباتی که شامل : عمل جمع ، عمل تفریق ، عمل + + و عمل - - است .

پ) مقایسه اشاره‌گرها

3 ـ اشاره‌گرها دارای ویژگیهای زیر می‌باشند :

الف) عمل تخصیص حافظه به‌صورت پویا را امکان‌پذیر می‌کنند .

ب) کار با آرایه‌ها و رشته‌ها را آسان می‌کنند .

پ) موجب بهبود کارآیی بسیاری از توابع می‌گردند .

ت) فراخوانی با آدرس را در مورد توابع امکان‌پذیر می‌سازند ؛ درنتیجه برگردان بیش از یک مقدار ، از یک تابع ، میسر می‌گردد .

ث) ایجاد ساختارهای پیچیده‌تر مثل لیستهای پیوندی ، درختهای دودویی ، گرافها و ... را به راحتی امکان‌پذیر می‌سازند .

پایان


سلام بعد از 8 قسمت تدریس فشرده  درس سی پلاس پلاس اونم قسمت  اشاره گر ها واقعا جای خسته نباشید داره به همه اونایی که تا اینجا با ما همراه بودند .

امتحانا هم که داره شروع میشه و انشاالله سربلند و پیروز بیرون بیایید.

اونایی که قبول شدند خبرشا بعدش بدند..ما منتظر خبر خوش شما هستیم

:: التماس دعا ::

یا حق



نوشته شده توسط محمد حسن بهجت | نظرات [2] | لینک به این مطلب |


 
تابلوی گفتمان



نظرسنجی

پیوندها

لوگو هـــا

خبرنامه ها





خبرنامه ویژه





خبرنامه عمومی


لوگو دوستان

پیوندهای روزانه

 
Copy Right 2007 ParsiBox.com ( Designed By ParsiBox Master Design )