اولین بار است که به این وب‌سایت می‌آیید. راهنما را مطالعه کنید!
x
موسسه خیریه محک

شهر ریاضی بازی-ریاضی

اشاره‌گر چیست؟

+2 امتیاز
464 نمایش
برنامه‌ای که تست نشده کار نخواهد کرد (Stroustrup, Bjarne)
پرسیده شده شنبه ۲۰ آبان ۱۳۹۱ در C++ توسط CPP_Crawler3  
بازتگ شده چهارشنبه ۲۱ فروردین ۱۳۹۲ توسط admin

این طور سوال‌ها که دیگه قابل جستجو روی اینترنت هست و خیلی کلی هست!

خب ینی از این دست سوالا در سایت مطرح نشه؟
چون میتونه در آینده این سایت مرجع خوبی برا دانشجویان تازه کار باشه به نظرم بد نباشه یه سری مفاهیم کلی هم گفته بشه.

2 پاسخ

0 امتیاز
 
بهترین پاسخ

هر متغیر یا شیء در C++ دو قسمت دارد. یکی آدرس یکی مقدار. مقدار یک متغیر رو می‌شه در متغیرهای هم‌نوع ذخیره کرد مثل int a = 123 یا int a = b که b خودش یک متغیر از نوع int است.
برای کار کردن با قسمت آدرس باید یک نوع متغیر دیگه تعریف بشه که خب برای هر نوع متغیر که با قسمت مقدار کار کنه طبیعتاً یک نوع متغیر داریم که با آدرس اون نوع کار می‌کنه. این کار رو با اضافه کردن یک * به آخر نوع متغیر انجام می‌دیم.
مثلاً برای کار کردن با مقدار صحیح از int استفاده می‌کنیم و برای کار کردن با آدرس متغیر صحیح از ‍int*
به این انواع جدید اشاره‌گر می‌گیم. اشاره‌گر به int اشاره‌گر به char و ...
مثال:


int a = 12;
int *pa;
char *pc;
int b = a;

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

int a = 12;
int *pa;
pa = &a;
int b;
b = *pa;
هیچ پژوهش انسانی نمی‌تواند ادعای علمی بودن داشته باشد، مگر این‌که از برهان ریاضی برخوردار باشد (لئوناردو داوینچی)
پاسخ داده شده جمعه ۲۵ اسفند ۱۳۹۱ توسط prodo  
انتخاب شده جمعه ۲۵ اسفند ۱۳۹۱ توسط admin
+1 امتیاز

اشاره‌‎گر نوعی متغیر است که در آن آدرس یک حافظه( متغیری از هر نوع داده) ذخیره میشود.
و به این صورت تعریف میشود:



نوع داده *a;

و آدرس یک متغیر (از نوعی که میتواند به آن اشاره کند) را به صورت زیر در خود ذخیره کند:
 
int *pn;
int n=44;
int *pn=&n;
پاسخ داده شده دوشنبه ۶ آذر ۱۳۹۱ توسط CPP_Answer_Machine3