עבור לתוכן

שאלה בשפת c

Featured Replies

פורסם

שלום יש לי בעיה קלה שלא כלכך הבנתי איך זה עושה את החישוב בקופלייר

התוכנית קיצור

int num1=2 ,num2=1 rasult

result = num1 + num2--;

printf("The formula is: result = num1 + num2--\n");

printf("The value of result is: %d\n\n",result);

לא הבנתי איך יוצא בקופלייר 4

result = num1-- + num2;

printf("The formula is: result = num1-- + num2\n");

printf("The value of result is: %d\n\n",result);

בקופלייר 3

result = num1 + --num2;

printf("The formula is: result = num1 + --num2\n");

printf("The value of result is: %d\n\n",result);

בקופלייר 1

result = ++num1 + ++num2;

printf("The formula is: result = ++num1 + ++num2\n");

printf("The value of result is: %d\n\n", result);

בקופלייר 4

תודה לעוזרים

פורסם

אל תצמיד את הקוד לשמאל - במקום זה שים אותו בתוך טג קוד (כפתור עם ציור #) וההודעה שלך תהיה יותר ברורה.

מה זה קופלייר?

פורסם
  • מחבר

קופלייר המסך השחור שמראה שמריץ את התוכנית

תמונה אחד שווה מאלף מילים יש הסבר בתמונה

http://www.fastup.co.il/v.php?file=18655564.png>

פורסם

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

הקומפיילר (לא "קופלייר") זה רק התוכנה שמתרגמת את הקוד שלך לקובץ הרצה (exe). זה לא "המסך השחור" שמריץ את התכנית (קובץ ה-exe יודע להריץ את עצמו). למסך השחור, אגב, קוראים קונסולה (console).

לשאלתך: האופרטור ++ עובד בשני אופנים שונים בהתאם לאם שמים אותו לפני או אחרי המשתנה. כלומר, ++a זה לא אותו דבר בדיוק כמו a++. שניהם מעלים את ערכו של המשתנה ב-1, אבל ++a מחזיר את ערכו של המשתנה לפני ההעלאה, ו-a++ מחזיר את ערכו אחרי ההעלאה. כלומר, נניח שיש לך את הקוד הבא:

int a = 4;
x = a++;

במקרה כזה קודם כל הערך של a מושם בתוך x ואז מעלים את a ב-1. כלומר אחרי הפעולות האלה, x=4 ו-a=5. לעומת זאת:

int a = 4;
x = ++a;

במקרה הזה קודם מעלים את a ב-1 ואז שמים את הערך שלו בתוך x, כלומר x=5 ו-a=5.

האופרטור -- עובד באופן דומה ל-++, רק שהוא מוריד 1 מהמשתנה במקום להוסיף 1.

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

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים