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

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

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

by עדן בר-לב -
Number of replies: 2

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


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


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

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

In reply to עדן בר-לב

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

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

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

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

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