ABA


"מה ההבדל בין i++ ל ++i (שפת C)"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #12966 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 12966
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות, דרג אמינות חבר זה
   21:22   30.01.06   
אל הפורום  
  מה ההבדל בין i++ ל ++i (שפת C)  
 
  

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


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  ההבדל הוא מה מתבצע קודם DOWI 30.01.06 21:41 1
  תאמת שעדיין לא הבנתי, צריך דוגמא יותר טובה עם פרינט.. Grass-Boyy 31.01.06 20:38 2
     כנס udiko 02.02.06 10:46 3
  כלומר אם i=7 אז שה++ נמצא בצד שמאל הוא יוגדל ויהיה 8 והפוך יהיה 7 Grass-Boyy 02.02.06 12:35 4
     בשתיהם הוא יהיה 8 boynet 02.02.06 16:45 5

       
DOWI

דרג אמינות חבר זה
   21:41   30.01.06   
אל הפורום  
  1. ההבדל הוא מה מתבצע קודם  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 30.01.06 בשעה 21:53 בברכה, DOWI
 
למשל


i = 5
a = i++

=>לאחר 2 השורות
a = 5
i = 6
כי קודם i מוצב ל a ואז הוא מקודם ב 1

אבל


i = 5
a = ++i

=>לאחר 2 השורות
a = 6
i = 6
כי קודם i יעלה באחד ואז הוא יוצב לתוך a

בתוך לולאת for זה לא משנה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות, דרג אמינות חבר זה
   20:38   31.01.06   
אל הפורום  
  2. תאמת שעדיין לא הבנתי, צריך דוגמא יותר טובה עם פרינט..  
בתגובה להודעה מספר 0
 
  


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

דרג אמינות חבר זה
   10:46   02.02.06   
אל הפורום  
  3. כנס  
בתגובה להודעה מספר 2
 
   כאשר ה ++ נמצא מצד שמאל של המשתנה (לדוג' c=++a) אז קודם תתבצע ההגדלה של a ורק אחר כך תתבצע ההצבה של a ל c .

כאשר ה ++ נמצא מצד ימין של המשתנה (לדוג'++c=a) אזי קודם יתבצעו כל הפקודות האחרות ורק אחר כך תתבצע ההעלאה של a


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Grass-Boyy
חבר מתאריך 9.6.03
3603 הודעות, דרג אמינות חבר זה
   12:35   02.02.06   
אל הפורום  
  4. כלומר אם i=7 אז שה++ נמצא בצד שמאל הוא יוגדל ויהיה 8 והפוך יהיה 7  
בתגובה להודעה מספר 0
 
  


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

דרג אמינות חבר זה
   16:45   02.02.06   
אל הפורום  
  5. בשתיהם הוא יהיה 8  
בתגובה להודעה מספר 4
 
   פשוט ש++ בצד שמאל אז המשתנה גודל לפי שנעשה בו שימוש
הכי נוח זה להסביר ככה
ברגע שיש

print(++n)

זה אומר
n = n+1
ורק אז תדפיס את התוצא

וברגע שיש

print(n++)
אז קודם המשתנה מודפס
ורק אז הוא מועלה ב1
n = n+1


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

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

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



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