שפת C/מצביעים: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Guycn2 (שיחה | תרומות)
אין תקציר עריכה
Guycn2 (שיחה | תרומות)
אין תקציר עריכה
שורה 34:
כלומר, ערכי המשתנים '''לא''' הוחלפו. הסיבה לכך שנכשלנו היא שהשתמשנו ב-''[[w:en:call_by_value|call by value]]'', כלומר - הערכים אותם קיבלה הפונקציה הם רק '''העתקים''' של הערכים המקוריים. השינויים שהפונקציה עושה מתבצעים רק על ההעתקים האלה, ולכן לא משפיעים על המקור. נחזור לנקודה זו כשנדבר על [[שפת C/מצביעים#מבנה הזיכרון ומשתנים|מבנה הזיכרון ומשתנים]], וב[[שפת C/מצביעים#שימוש במצביעים להעברת משתנים לפונקציה|שימוש במצביעים להעברת משתנים לפונקציה]] נראה כיצד מצביעים מאפשרים להעביר נתונים לפונקציות בצורה גמישה יותר.
 
==''מבנה הזיכרון ומשתנים''==
 
==='''מודל פשוט לזיכרון'''===
 
כדי להבין מצביעים, ראשית יש להבין את זיכרון המחשב ([[w:en:RAM|RAM]]), או ביתר דיוק, הפשטה שלו. אפשר לחשוב על זיכרון המחשב כ[[שפת C/מערכים|מערך]] בעל מספר תאים גדול - כל תא בגודל תו. כאשר אנו מגדירים משתנה, מוקצים לו בזכרון תא אחד או יותר, לפי סוג המשתנה.
שורה 305:
{{שפת C|מוגבל}}
 
== הערות שוליים ==
{{הערות שוליים}}
[[קטגוריה:שפת C|מצביעים]]