07-08-2008, 01:31
|
|
|
חבר מתאריך: 11.02.04
הודעות: 16,543
|
|
הבדל גדול.
int *a=5;
יוצר תא a, תא a הוא תא המצביע על כתובת זכרון מסויימת ובא מאוכסן אינטגר שערכו שווה ל5.
אם תנסה להדפיס על המסך את a, לא תראה "5" אלה הכתובת ש -a מכיל!!!
בכדי להדפיס את הערך 5" אתה צריך להדפיס את *a!
כמו כן באם תצור פונקציה שבתור פרמטר מקבלת את *a
ובזמן רצת השיטה תעשה נגיד פעולה כזו a=10*;
הערך של *a ישתנה (גם לאחר סיום הפונקציה), כי הפונקציה לא ייצרה משתנה מקומי חדש, אלה שנתה פיסית את הכתובת אליה מצביע a...
|