ABA


"צריך עזרה ב C בעייה בהבנה של struct ושל פויינטרים"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #10139 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 10139
Yariv-H לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 24.3.02
5856 הודעות, 1 פידבק, 2 נקודות
   10:37   10.11.10   
אל הפורום  
  צריך עזרה ב C בעייה בהבנה של struct ושל פויינטרים  
 
   טוב אז ככה אני צריך לממש פונקציה מסויימת

int addDepartment(Department *head, char *name);


אלו הסטראקטים שלי


struct Department
{
char *name;
int numOfEmployees;
struct Department *nextDep;
struct Employee *firstEmp;
};

struct Employee
{
char *firstName;
char *lastName;
int salary;
struct Employee *nextEmp;
};

זאת התוכנית


void MainMenu ()

struct Department *TopDepartmentList ;

char Dname;
char *name;
.
.
.
.
printf("\nEnter The Name Of The Department:\n");
scanf("%s",&Dname);
name=Dname;
addDepartment(TopDepartmentList,name);
.
.
.
}

void addDepartment(struct Department *head, char *name )
{
head.name=name;
head.numOfEmployees=5;
if (head.nextDep==NULL)
{
printf("NULL");
}

return 0;

עכשיו הקטע שאני לא מבין.
הרי אני צריך להשתמש ב מאללוק בשביל ליצור מערך דינמי.
איפה אני אמור להשתמש בו?
לפני הקריאה לפונקציה?
במידה וכן אני צריך ליצור משתנה מסוגג
struct Department **DEP
?

אני צריך לעשות מעיין מערך נתונים של חברה שאני יוכל להוסיף ולהוריד מחלקות.

הבנתי שאני צריך איזה שהוא פויינטר שהוא יהיה מסוג מחלקה שיצביע לי על מערך של מחלקות

איך אני יכול לבדוק האם head.nextDep==NULL ?

אם מישהוא יכול לכוון אותי או לזרוק מידע זה יעזור לי ..

תודה רבה!



                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  הבנתי את הטעות.. Yariv-H 11.11.10 09:10 1
     יש לך עוד הרבה בעיות שם ldan192  11.11.10 09:12 2

       
Yariv-H לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 24.3.02
5856 הודעות, 1 פידבק, 2 נקודות
   09:10   11.11.10   
אל הפורום  
  1. הבנתי את הטעות..  
בתגובה להודעה מספר 0
 
   במקרה ומישהוא גם יתקע במשהוא דומה..

הסטראקט שלי מוגדר בפנים עם פויינטרים.
במידה ורוצים לגשת למשתנה שההוא פויינטר בתוך הסראקט צריך לגשם עם


head->name

ו לא עם .

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



                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ldan192 
חבר מתאריך 14.9.08
95119 הודעות
   09:12   11.11.10   
אל הפורום  
  2. יש לך עוד הרבה בעיות שם  
בתגובה להודעה מספר 1
 
למשל איך אתה יודע ש-head->next הוא null?
איפה הצגת קוד שמאפס אותו?

ואתה לא חייב אלוקציה עד לפחות לנוד ה-NEXT.
מאתחל בסטאק struct something name; ומעביר פויינטר אליו בפונקציה &name כפרמטר.


בברכה,
עידן


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net