בעיות עם ה-buffer (נראה לי)
כתבתי תוכנית שבחלקה קולטת תמונה מהמסך (עם הגדרת מצביע void, עשיתי לו malloc מתאים ואז getimage) לא הרבה אחרי זה, יש עוד מצביע שקולט תמונה מאותו חלק של המסך, בו השתמשתי באותן פקודות בדיוק (בעצם המצביע הראשון קולט ציור של חלון על המסך.. אח"כ התוכנה רצה.. המצביע השני קולט את התמונה הנוכחית על המסך ומהמצביע הראשון נלקחת התמונה שבתוכו כדי לפתוח את החלון.. ואח"כ התוכנה חוזרת למצבה הקודם ע"י לקיחת התמונה מהמצביע השני.. מקווה שזה מובן =\ ) בכל מקרה, במצביע הראשון זה פועל והכל טוב אך המצביע השני יוצר שגיאה שסוגר לי את הקומפיילר. בדקתי וכאשר אני עושה flush לבאפר אחרי הגדרת המצביע השני, או עושה free למצביע הראשון... ורק אז קולט את התמונה למצביע השני, זה כן פועל, אך לא כמו שצריך - כי המצביע הראשון בעצם מצביע על אותו מקום כמו המצביע השני השאלה שלי, בעצם, איך אפשר לסדר את זה? להרחיב את הבאפר.. או לנקות אותו מבלי לאבד את הערך במצביע הראשון?
כתבתי תוכנית שבחלקה קולטת תמונה מהמסך (עם הגדרת מצביע void, עשיתי לו malloc מתאים ואז getimage) לא הרבה אחרי זה, יש עוד מצביע שקולט תמונה מאותו חלק של המסך, בו השתמשתי באותן פקודות בדיוק (בעצם המצביע הראשון קולט ציור של חלון על המסך.. אח"כ התוכנה רצה.. המצביע השני קולט את התמונה הנוכחית על המסך ומהמצביע הראשון נלקחת התמונה שבתוכו כדי לפתוח את החלון.. ואח"כ התוכנה חוזרת למצבה הקודם ע"י לקיחת התמונה מהמצביע השני.. מקווה שזה מובן =\ ) בכל מקרה, במצביע הראשון זה פועל והכל טוב אך המצביע השני יוצר שגיאה שסוגר לי את הקומפיילר. בדקתי וכאשר אני עושה flush לבאפר אחרי הגדרת המצביע השני, או עושה free למצביע הראשון... ורק אז קולט את התמונה למצביע השני, זה כן פועל, אך לא כמו שצריך - כי המצביע הראשון בעצם מצביע על אותו מקום כמו המצביע השני השאלה שלי, בעצם, איך אפשר לסדר את זה? להרחיב את הבאפר.. או לנקות אותו מבלי לאבד את הערך במצביע הראשון?