ABA


"אפשר להגדיר מערך בזכרון לפי גודל משתנה (C) ?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #12004 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 12004
Tamirrr

   19:12   05.04.05   
אל הפורום  
  אפשר להגדיר מערך בזכרון לפי גודל משתנה (C) ?  
 
   נגיד אני קולט משתנה ואז אני מגדיר מערך לפיו?
תודה


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  כן בעזרת malloc כנס DOWI 05.04.05 19:39 1
     מזה מצביעים? Tamirrr 05.04.05 20:58 3
  כן אבל אסור לך לעשות ככה: Gold Dragon 05.04.05 20:31 2
     למה אסור ככה? :/ Tamirrr 05.04.05 20:58 4
         אי אפשר ב c לעשות מה שאתה רוצה אלא בעזרת מצביעים DOWI 05.04.05 21:34 5
             טוב :| באמת קצת קשה להבין Tamirrr 07.04.05 18:35 6

       
DOWI

   19:39   05.04.05   
אל הפורום  
  1. כן בעזרת malloc כנס  
בתגובה להודעה מספר 0
 
   אתה צריך לדעת מצביעים...

int* a

n = 10


(a = (int*)malloc(sizeof(int)*n

(כאן הקצנו מקום בזיכרון ל 10 integers ו a מצביע להתחלה של המקום)
ועכשיו אפשר להשתמש ב a כמו במערך...למרות שהוא לא בדיוק...

a = 4


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

   20:58   05.04.05   
אל הפורום  
  3. מזה מצביעים?  
בתגובה להודעה מספר 1
 
   מצביעי זכרון? כמו באסמבלי? (SI BX וכול'?)
אבל לא ממש הבנתי מה שעשית כאן? הכוונה שלי הייתה אם אפשר לקלוט משתנה כלשהו ואז לפיו להגדיר מערך כלשהו (כאילו int tamir שX זה גודל התאים


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

   20:31   05.04.05   
אל הפורום  
  2. כן אבל אסור לך לעשות ככה:  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 05.04.05 בשעה 20:32 בברכה, Gold Dragon
 

int a=5;
int v{a};

אלא רק בעזרת פקודות שמקצות זכרון.


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

   20:58   05.04.05   
אל הפורום  
  4. למה אסור ככה? :/  
בתגובה להודעה מספר 2
 
   ואיך אפשר?
תודה לשניכם על העזרה!


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

   21:34   05.04.05   
אל הפורום  
  5. אי אפשר ב c לעשות מה שאתה רוצה אלא בעזרת מצביעים  
בתגובה להודעה מספר 4
 
   ערכתי לאחרונה בתאריך 05.04.05 בשעה 21:36 בברכה, DOWI
 
מצביעים לזיכרון כן

מצביע זה טיפוס, כמו int, double ..

אתה מגדיר מצביע לסוג זיכרון שאתה רוצה, נגיד int
int* a

ואז אתה יכול להקצות זכרון ולגרום לו להצביע עליו או שיצביע על כתובת של משתנה כלשהו
זכרון מקצים בעזרת malloc (יש עוד )
כאשר אתה שולח לmalloc את כמות הזכרון שאתה רוצה להקצות

(a = (int*)malloc(sizeof(int)*10
גורם ל a להצביע על מקום בזכרון ל 10 int -ים
(עכשיו תקרא שוב את מה שרשמתי בתגובה ראשונה)

אי אפשר להסביר את זה ב 5 מילים, זה אחד הנושאים היותר "קשים" או מסובכים ב סי


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

   18:35   07.04.05   
אל הפורום  
  6. טוב :| באמת קצת קשה להבין  
בתגובה להודעה מספר 5
 
   אני יבדוק בספר אולי יש מידע על זה
תודה


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

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

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



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