ABA


"שאלה לגבי VAR בפסקל..."
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #14099 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14099
zip_zap
חבר מתאריך 18.9.06
192 הודעות
   19:40   06.05.07   
אל הפורום  
  שאלה לגבי VAR בפסקל...  
 
   ערב טוב!
אם אני מגדיר נשתנה בתוך פונקציה או פרוצדורה בתוך הבלוק של הVAR אני יכול להשתמש בו גם לאחר סיום הפרוצדורה?
לדוגמא אם אני מצהיר על מערך בתוך פרוצדורה הוא יתקיים גם לאחר סיום הפרוצדורה(כלומר אוכל להמשיך להשתמש בו?)או שימחק?

תודה רבה!


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  לא.. זה כל הקטע בלהגדיר אותו בפנים MULI 06.05.07 20:08 1
     נראה לי מגדירים עם חץ - Nesher  06.05.07 23:10 2
  לא, IcqBoy 07.05.07 00:54 3
     אם אני לא טועה צריך לפני כל משתנה לרשום VAR. FireAngel 09.05.07 12:04 4
         לא הבנתי, IcqBoy 09.05.07 12:10 5
             זו הכוונה: FireAngel 09.05.07 12:57 6
                 אני חושב שאתה טועה :| IcqBoy 09.05.07 13:02 7
                     אני לא בטוח. ככה המורה אמר לנו. FireAngel 09.05.07 13:06 8
                         לאחר בדיקה: IcqBoy 09.05.07 13:08 9
                             COOL :} טוב נו, אני אשאר עם הגירסה שלי :} FireAngel 09.05.07 13:19 10

       
MULI

   20:08   06.05.07   
אל הפורום  
  1. לא.. זה כל הקטע בלהגדיר אותו בפנים  
בתגובה להודעה מספר 0
 
   שהוא אישי לפונקציה אחת

אם אתה רוצה להשתמש בו גם מבחוץ את צריך להגדיר אותו כגלובלי
או להשתמש במצביע שכבר שחכתי איך מגדירים מצביע בפסקל

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


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Nesher  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 2.7.02
2 הודעות, 24 פידבק
   23:10   06.05.07   
אל הפורום  
  2. נראה לי מגדירים עם חץ -  
בתגובה להודעה מספר 1
 
לא זוכר פסקל יותר גרוע ממך ילד


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

   00:54   07.05.07   
אל הפורום  
  3. לא,  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 07.05.07 בשעה 00:55 בברכה, IcqBoy
 
כי הוא משתנה מקומי .
במידה ואתה רוצה לבצע שינויים במשתנה מסויים בפונקציה ו/או בפרוצדורה, שאתה רוצה להשתמש בו בהמשך, תרשום בכותרת ההליך את המשתנה עם VAR לפניו.

דוגמא:


Function Sum(Var Ar:Ar_Type):Integer;
Procedure Abc(Var a,b,c:Integer);


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

   12:04   09.05.07   
אל הפורום  
  4. אם אני לא טועה צריך לפני כל משתנה לרשום VAR.  
בתגובה להודעה מספר 3
 
  


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

   12:10   09.05.07   
אל הפורום  
  5. לא הבנתי,  
בתגובה להודעה מספר 4
 
   שני הפירושים:
א. האם אתה מתכוון שלפני כל משתנה ששולחים להליך צריך לרשום VAR? לא. רק משתנה שבו רוצים שהשינויים שיתבצעו בהליך, יחולו גם על אותו משתנה בתכנית הכללית.
ב. האם אתה מתכוון שאי אפשר לעשות Var על 3 משתנים מאותו סוג? כמובן שאפשר, בידיוק כמו שבחלק הגדרת המשתנים והטיפוסים אתה יכול להגדיר:

var a,b,c:integer

ולא צריך:

var a:integer
var b:integer
var c:integer

אם יש פירוש שלישי ואני שגיתי, אתה מוזמן להעיר על כך


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

   12:57   09.05.07   
אל הפורום  
  6. זו הכוונה:  
בתגובה להודעה מספר 5
 
   אם רוצים שיבוצעו שינויים במשתנה צריך לרשום לפניו VAR נכון?
אז יופי. אבל מה קורה אם אתה רוצה ב-3 משתנים שונים? אז רושמים בשלושתם. זו הכוונה:

procedure name(var a:integer; var b:integer; var c:integer);

ולא:

procedure name(var a,b,c:integer);

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


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

   13:02   09.05.07   
אל הפורום  
  7. אני חושב שאתה טועה :|  
בתגובה להודעה מספר 6
 
  

procedure name(var a,b,c:integer);

הכתיבה הזאת שקולה לכתיבה הזאת:

procedure name(var a:integer; var b:integer; var c:integer);

אני אריץ משהו קצרצר בפסקל, אני מאמין שאני צודק ...


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

   13:06   09.05.07   
אל הפורום  
  8. אני לא בטוח. ככה המורה אמר לנו.  
בתגובה להודעה מספר 7
 
   תבדוק ותגיד לי.


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

   13:08   09.05.07   
אל הפורום  
  9. לאחר בדיקה:  
בתגובה להודעה מספר 8
 
   אמרתי לך :|


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

   13:19   09.05.07   
אל הפורום  
  10. COOL :} טוב נו, אני אשאר עם הגירסה שלי :}  
בתגובה להודעה מספר 9
 
  


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

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

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



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