Menu
Coddy logo textTech

הצהרה ואתחול

שיעור 2 מתוך 14 בקורס מצביעים ב-C++ של Coddy.

תחביר ההכרזה על מצביע מורכב מסוג משתנה שאליו המצביע יצביע, מסמל הכוכבית (*) שמודיע למהדר שמדובר במצביע, ומשם של משתנה המצביע.

// varType *ptrName;
int *ptr;

אפשר להכריז על מצביע מכל סוג: מצביע int, מצביע למחרוזת, bool, float או double. אפשר להצביע על אובייקטים, על מבנים וכו׳.

int var = 5;
int *ptr = &var;
cout << "Address of var: " << ptr;
Output:
0x7fffffa84984

בקוד הזה, המצביע ptr מסוג int מצביע אל var. כדי לאתחל את הערך שלו כך שיצביע על משהו, משתמשים באופרטור אמפרסנד (&) כדי לקבל את הערך של var. 

  • במהלך ההכרזה, משתמשים בסמל הכוכבית (*) כדי לציין שאנחנו יוצרים מצביע לסוג המשתנה שצוין
  • כדי לקבל את הכתובת של משתנה נתון, משתמשים בסמל אמפרסנד (&)
  • בסמל הכוכבית (*) משתמשים גם עבור ביטול הפניה. כשמשתמשים ב-* יחד עם מצביע, אפשר לגשת לערך המאוחסן בכתובת הזיכרון שאליה המצביע מצביע
int var = 10;
int *ptr = &var;
cout << "Value stored on address " 
 << ptr << " is " << *ptr;
Output:
Value stored on address 0x7fff4ec0de14 is 10
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

challenge icon

אתגר

קל

בצעו את המשימות הבאות בקוד שלכם

  • הכריזו על מצביע מסוג bool בשם boolPtr
  • הכריזו על מספר שלם בשם num
  • קלטו מספר שלם מהקלט הסטנדרטי ושמרו אותו ב-num
  • הכריזו על מצביע למספר שלם בשם intPtr ואתחלו את ערכו לכתובת של num
  • הדפיסו את הערך של intPtr באמצעות ביטול הפניה

נסו בעצמכם

#include <iostream>

using namespace std;

int main() {
    
    // הכניסו את הקוד שלכם כאן
    
    return 0;
};

כל השיעורים ביחידה מצביעים ב-C++

תרגלו בעצמכם: קומפיילר C++ אונליין