שאלות תרגיל בית 1

בירור לגבי כתיבה נכונה של מאלוק

בירור לגבי כתיבה נכונה של מאלוק

על ידי עדן בר-לב בתאריך
מספר תגובות: 2

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


בהרצאה נאמר לנו כי בשפת C ניתן לכתוב ללא המרה את המאלוק ((Lecture 2: Advanced C Features (Part 5)בדקה 37
אך מצד שני למדנו התרגול כי מאחר שהמאלוק מחזיר טיפוס של void* יש לבצע המרה.
מאחר שמצב כזה כן מתקמפל האם אי כתיבה של ההמרה נחשבת כשגיאת קונבנציה או שגיאת תכנות ?


בנוסף מאחר שגודל של צאר הוא 1, אי כתיבה של סייז אוף צאר בהקצאת מקום ללולאה לא תוביל לשגיאה בקמפול,
האם עליי להחשיב זאת כשגיאת קונבנציה או תכנות?
(כאילו במערכת הפעלה היפותטית אולי יהיה צאר בגודל ששונה מאחד ואז זה יוביל לשגיאה אך זה לא המצב אצלנו)

תודה רבה מראש ולילה טוב

בתגובה ל: עדן בר-לב

תשובה ל: בירור לגבי כתיבה נכונה של מאלוק

על ידי אחמד אגבאריה בתאריך
1) בשפת c אין צורך לבצע המרה.
2) ב C99 מובטח לך שבכל מערכת הפעלה sizeof(char)=1
בתגובה ל: אחמד אגבאריה

תשובה ל: בירור לגבי כתיבה נכונה של מאלוק

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

עם זאת הנקודה שהעלית לגבי char יפה, מומלץ להתרגל לשימוש באופרטור sizeof.