|
הרשם | ![]() |
שאלות ותשובות | ![]() |
רשימת חברים | ![]() |
לוח שנה | ![]() |
הודעות מהיום | ![]() |
חיפוש | ![]() |
|
![]() |
![]() |
|
כלים לאשכול | תצורת הצגה |
|
![]() |
# 1 |
חבר וותיק
|
למה כשאני מקצה בצורה רגילה - לא מצליח. ודינמית - כן.
אני עובד בשפת C.
כשאני מקצה מערך גדול מאוד (מאות אלפי תאים של int) בצורה רגילה - זה לא יוצא, זה נתקע בזמן הרצה (נגמר הזיכרון? או שיש הסבר אחר?). אבל כשאני מקצה אותו מערך (כמובן שזה אותו הגודל) בהקצאה דינמית זה כן יוצא. משהו יכול להסביר לי איך זה קורה? תודה רבה |
![]() |
![]() |
# 2 |
משתמש - היכל התהילה
|
כנראה שבאמת נגמר המקום.. תנסה לחכות אולי תקבל סטאק אובר פלו.
Last edited by mlnn; 22-06-09 at 20:07.. |
![]() |
![]() |
# 3 |
חבר וותיק
|
לא מצאתי שום דבר מעניין בעמוד.
אוי מחר אני מגיש את הפרויקט במחשבים ואני עדיין לא יודע איך להסביר את זה.... אבל אני זוכר שאיפשהו שמעתי שאם מקצה רגיל מערך זה שומר את המידע ברצף בזיכרון (זה בטוח) ובהקצאה דינמית הוא שומר את זה איפה שיש מקום (הוא יכול לחלק ולשמור חלק מהנתונים במקומים מוסימים וחלק אחר מהנתונים במקום אחר). זה נכון? |
![]() |
![]() |
# 4 |
חבר בקהילה
|
במערך הדינאמי אתה ממלא את כל התאים?
ההסבר היחיד שאני מוצא זה , שכשאתה מצהיר על מערך רגיל , אין לו מאות אלפים של תאים להקצות לך ברצף בשביל המערך במערך דינאמי הוא לא מקצה ברצף כי הוא דינאמי אז אין לו פה בעייה כנראה... |
![]() |
![]() |
# 5 |
Winner
|
בהקצאת סטטית המערך נשמר במחסנית, כנראה שזה לא overflow כי הקצאת את הגודל המדוייק של המערך, פשוט נגמר המקום במחסנית, היא לא מקום גדול במיוחד.
הקצאה דינמית לעומת זאת נשמרת בערימה, זה מקום יותר דינמי שמתרחב אם נגמר בו המקום, דברים גדולים תשמור שם.
__________________
להנאתם אתר משחקים כיפי. היום עושים מסיבות רווקים ורווקות רק בלופט למסיבות, תנסו ולא תתחרטו. |
![]() |
![]() |
חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים) | |
|
|