שיעור 8: המרת טיפוסים ותחביר — casting
ב-C לכל ערך יש טיפוס, והטיפוס קובע איך פעולות מתנהגות. כששני אגפי החלוקה הם int, התוצאה היא חלוקה שלמה: 5 / 2 הוא 2, לא 2.5! כשמערבבים int עם double, ה-int מקודם אוטומטית ל-double (המרה משתמעת), אבל כששני האגפים שלמים — אנחנו צריכים להתערב עם cast מפורש: (double)a / b. נגלה גם ש-char הוא בעצם מס
חלוקה שלמה היא כמו לחלק 5 עוגיות בין 2 ילדים בלי לשבור עוגייה: כל אחד מקבל 2, והעוגייה הנותרת פשוט נעלמת. cast הוא כמו להביא סכין — פתאום אפשר לחלק גם חצאים.
- חלוקה שלמה
- int חלקי int זורק את השארית: 5 / 2 הוא 2, 7 / 4 הוא 1.
- המרה משתמעת (קידום)
- כשמערבבים int ו-double בביטוי, ה-int מקודם אוטומטית ל-double.
- cast מפורש
- (double)a — ממיר את הערך של a ל-double לצורך הביטוי, בלי לשנות את a עצמו.
- char כמספר
- char מאחסן קוד מספרי: 'A' הוא 65, ולכן 'A' + 1 הוא 66 — האות B.
- %c מול %d
- אותו ערך, שתי תצוגות: %c מדפיס תו, %d מדפיס את הקוד המספרי שלו.