pssheba פורסם 2005 בינואר 8 Share פורסם 2005 בינואר 8 בקוד דלהלן אני מעביר לפונקציה מערך מסוג int ובפונקציה מוסיף לו איבר עם ערך:void myFunc(int *);int main(){int *myArr;myFunc(myArr);return 0;}void myFunc(int *myA){myA[0] = 1;}התכנית עוברת הידור ללא הודעות שגיאה.התכנית רצה אך ניתקעת בפונקציה ולא מוציאה שום הודעת שגיאה.מערכת ההפעלה XP מודיעה שהתרחש משהו לא טוב ושואלת אם להודיע על השגיאה למיקרוסופט.יש למישהו הצעה מוצלחת יותר מזו של ה XP ?תודה ! קישור לתוכן שתף באתרים אחרים More sharing options...
Holy פורסם 2005 בינואר 8 Share פורסם 2005 בינואר 8 לא שלחת לה מערך, שלחת לה מצביע למקום אקראי בזיכרון (וכמובן שאסור לך לכתוב לשם)אתה צריך בתוך ה-main להגדיר את myArr כמערך ולא כמצביע ע"יint myArr[10]; קישור לתוכן שתף באתרים אחרים More sharing options...
pssheba פורסם 2005 בינואר 8 מחבר Share פורסם 2005 בינואר 8 תודה ! קישור לתוכן שתף באתרים אחרים More sharing options...
rk666 פורסם 2005 בינואר 9 Share פורסם 2005 בינואר 9 או אם אתה מתעקש ללכת עם פויטרים אז כבר:[pre]int *arr;arr = new int[10]...your code...delete []arr;[/pre] קישור לתוכן שתף באתרים אחרים More sharing options...
Ghosthunter פורסם 2005 בינואר 10 Share פורסם 2005 בינואר 10 אם תעשה מערך של פויינטרים אז תוכל לעשות מה שרצית(להשוות לNULL). קישור לתוכן שתף באתרים אחרים More sharing options...
Recommended Posts
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.