5 תשובות
שואל השאלה:
אתם יכולים להסביר לי מה זה בדיקת קוד?
אתם יכולים להסביר לי מה זה בדיקת קוד?
אנונימית
אני הייתי עושה את הקוד קצת שונה, הייתי ניגש ישר לmsb, ומחסר אותו מעצמו
x= (sizeof (int) * char_bit - 1)^x- (sizeof (int) * char_bit - 1)
x= (sizeof (int) * char_bit - 1)^x- (sizeof (int) * char_bit - 1)
או אם הייתי ממש דואג ליעילות אני יכול לחסוך את כל פעולת החיסור, שהיא די יקרה, על ידי קאסטינג לסטראקט אנונימי שבו הmsb הוא bitfield, והשמת 0 בתוכו
( (struct (unsigned int rest: sizeof (int) *char_bit - 1; unsigned int msb: 1;)) x).msb=0
( (struct (unsigned int rest: sizeof (int) *char_bit - 1; unsigned int msb: 1;)) x).msb=0
חוץ מזה שיש לי בעיה אישית עם scanf ("%d")
הקוד נראה בסדר
חוץ מ2 דברים. 1 אין בדיקת תקינות של הקלט
2. אין הגנת overflow בx*-1
מה יקרה אם x==int_min?
הקוד נראה בסדר
חוץ מ2 דברים. 1 אין בדיקת תקינות של הקלט
2. אין הגנת overflow בx*-1
מה יקרה אם x==int_min?
שכחת לכתוב אץ המילה else
באותו הנושא: