שאלה ב-C פוינטרים

SmartToyBoy

New member
שאלה ב-C פוינטרים

שלום לכולם! משהו קטן... אני צריך למצוא מה הטעות בקטע התוכנית הבא: ** מצורף קובץ ** באמת הרצתי וזה לא מדפיס את האיבר השלישי כמו שצריך. אני יודע שזה משהו עם הקטע של כתובות, שליחה של פוינטר לפונצקיה או משהו כזה , ובאמת ניסיתי כמה שינויים ועדיין לא הצלחתי. זה באמת קטע של עשר שורות קוד... אשמח נורא אם מישהו יוכל לעזור לי. המון תודות ופורים שמח
SmartToyBoy.
 

vinney

Well-known member
שכחת הרבה דברים

בין היתר - להקצות מקום למשתנה, כוכבית בהשמה, ושיש פורום שפות תכנות
בהצלחה
 

SmartToyBoy

New member
מממ...

ראשית תודה :) ואם זה בסדר אני מעדיף עדיין לשאול כאן כי כבר התחלתי וזה לא כל כך מורכב... בעיקרון הייתי אמור לתקן את השגיאה בתוכנית. עשיתי *pgrd=NULL אבל מה פירוש כוכבית בהשמה ועדיין לא הבנתי את הבעיה... סליחה אם אני מטריח יותר מדי, ושוב תודה [:
 

vinney

Well-known member
מה זה pgrd?

זה מצביע, נכון? זאת אומרת הוא עצמו לא אמור להכיל את הערך, אלא להצביע למקום שמכיל את הערך.
 

double X

New member
הבעיה בתוכנית כרגע

היא שהערך של pgrd לא נשמר ביציאה מהפונקציה, מכיוון שהוא נשלח by value ולא by reference . למעשה, אתה צריך לתקן 3 דברים: השליחה של המצביע לפונקציה צריכה להתבצע by ref , כלומר- לשלוח את pgrd&. הפונקציה, אם כך, צריכה לקבל את המשתנה בצורת **int , וההשמה לתוך המשתנה... את זה אני אתן לך לחשוב עליו. בהצלחה :)
 
למעלה