Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

Studies

הצהרה ומתן ערך למשתנה

כעת נגדיר מהם משתנים, כיצד משתמשים בהם ומהם המאפיינים שלהם.

מאפייני משתנים

משתנים הם האובייקט הבסיסי ביותר בשפה. הם הם הדרך שלנו לייצג מאפיינים ומידע של הבעיות האמיתיות אותן נרצה לפתור. על מנת להשתמש במשתנה בתוכנית שלנו, עלינו להצהיר עליו - זה נראה כך:

int result = 42;

מה כתבנו כאן? נפרק את הההצהרה. כל משתנה בכל תוכנית שנכתוב מכיל 3 מאפיינים:

  1. טיפוס (type): טיפוס הוא סוג האובייקט שהמשתנה מייצג - כל טיפוס מגדיר קבוצה של ערכים שמשתנים מאותו הטיפוס יכולים לקבל. המשתנה בדוגמא הוא מטיפוס int - קיצור של integer, או מספר שלם בעברית. משתני int יכולים לקבל ערכים שלמים בלבד, חיוביים ושליליים, כמו 5, 3- או 201, אבל הם אינם יכולים לקבל ערכים שאינם שלמים, כמו 2.6- או 500.25.

  2. שם/מזהה (name/identifier): לכל משתנה יש שם, בו נשתמש לאחר הצהרתו על מנת להתייחס אליו שוב בהמשך התוכנית. נהוג ורצוי לתת למשתנים שם המסביר מה הם מייצגים: למשל result עבור תוצאת חישוב, milk_price עבור מחיר חלב בחנות ו-password עבור סיסמא.

  3. ערך (value): לכל משתנה יש ערך מספרי. בדוגמא, ערך המשתנה הוא 42.

Note

כל ביטוי בשפת C נגמר בנקודה-פסיק, ; על מנת לציין את סופו.

Note

בקורסים בעברית לפעמים משתמשים במונח סוג משתנה במקום טיפוס - אין הבדל בין המינוחים.

לסיכום, בדוגמא הגדרנו משתנה מטיפוס int, ששמו result, וערכו 42.

בשפת C ניתן להצהיר על משתנה בלי לתת לו ערך:

int result;
char this_is_a_char;
float floatingPointNumber;
double DoubleNumber;

כמו כן, ניתן להצהיר על משתנה ללא ערך ולתת לו ערך מאוחר יותר:

int x;
int y = 7;
x = y + 1;

Warning

כפי שניתן לראות, בדוגמאה לא נתנו ערך לארבעת המשתנים. שאלה טבעית היא - מהו הערך של משתנים שלא נתנו להם ערך? זוהי נקודה חשובה וניגע בה בהמשך.

סגנונות כתיבה לשמות משתנים

קיימים סגנונות רבים לכתיבת שמות משתנים. למשל:

int my_variable_name; // snake_case
int myVariableName; // camelCase
int MyVariableName; // PascalCase
int my-variable-name; // kebab-case
int MY_VARIABLE_NAME; // SCREAMING_SNAKE_CASE

אין משמעות לסגנון בו כותבים, אבל רצוי מאוד לדבוק בסגנון אחד לטובת קריאות ונוחות. אנחנו נדבוק בקורס ב-snake_case מכיוון שזו הקונבנציה הרווחת ביותר, אבל יתכן ותפגשו בקורס סגנונות נוספים.

Note

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