עבור לתוכן

פקודות על מחסנית ב-C

Featured Replies

פורסם

שלום לכולם!

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

איך רושמים אותם. תנו לי דוגמא ואני יבין.

תודה

פורסם

תגדיר ככה

void push(some_type new_element);
some_type pop(void);

וזהו

פורסם

זה לא מספיק. זה C, הוא צריך גם לתת מצביע למחסנית עצמה.

פורסם

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

פורסם

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

בכל מקרה כדאי להגדיר את שתי הפונקציות כ-int (כאשר 0 מייצג אי הצלחה, ו-1 מסמן הצלחה בפעולה) ולתת ב-Pop מצביע למשתנה מסוג stack_info_type (שכל איבר במחסנית הוא stack_info_type).

בגלל שזה כזה מימוש צריך בסופו של דבר להשתמש ב-Struct ולהגדיר גם פונקצית stack_init

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים