ABA


"מה ההבדל בין הפקודות const לעומת #define?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #10035 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 10035
dvir8
חבר מתאריך 13.5.02
5929 הודעות, דרג אמינות חבר זה
   11:51   22.08.10   
אל הפורום  
  מה ההבדל בין הפקודות const לעומת #define?  
 
   ערכתי לאחרונה בתאריך 22.08.10 בשעה 11:56 בברכה, dvir8
 
בשלבי למידה בשפת C נתקלתי בשורה הבאה:
const int PI = 3.142;
לעומת השורה הבאה:
#define PI 3.142

הבנתי ש- define זה רק מחליף את השם במספר פשוטו כמשמעו.
אבל הפקודה const הבתי שהיא משתנה קבוע
ברגע שמשתנה זה הופך לקבוע מה ההבדל בינו לבין define?
שאת Define אפשר לשנות?


ודבר נוסף?
מה החישוב המתמטי הזה בדיוק?
(i % 3 == 0 || i % 7 == 0)

הכוונה ל 0=i*3/100?


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  תשובה ronen333  22.08.10 12:36 1
     הבנתי, ולגבי זה שמתחלק ב 3 או 7 dvir8 22.08.10 13:05 2
         % זה האופרטור לmod ronen333  22.08.10 14:42 3
             הבנתי תודה רונן, דרך אגב, dvir8 23.08.10 00:38 4

       
ronen333 
חבר מתאריך 20.2.03
6069 הודעות, דרג אמינות חבר זה
   12:36   22.08.10   
אל הפורום  
  1. תשובה  
בתגובה להודעה מספר 0
 
   ההבדל בין DEFINEל CONST הוא שCONST הוא קבוע, והוא "משתנה" שלא ניתן לשנות אותו, והוא נקבע בזמן ריצה.
DEFINE זה קדם מעבד, כלומר עוד לפני שהכל מתקמפל לך ממש מתבצע פעולה של "העתק והחלף" בכל מקום שרשמת PI יופיע במקום המספר 3.142.
const טוב שאתה רוצה להקצות מקום ולהבטיח שהמידע שהזנת עם האתחול שלו לא יתשנה בהמשך.. define זה פשוט כמשמעו, הגדרה חילופית למשהו.


והביטוי שרשמת (i % 3 == 0 || i % 7 == 0) נועד לבדוק אם i מתחלק ב3 או ב7.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
dvir8
חבר מתאריך 13.5.02
5929 הודעות, דרג אמינות חבר זה
   13:05   22.08.10   
אל הפורום  
  2. הבנתי, ולגבי זה שמתחלק ב 3 או 7  
בתגובה להודעה מספר 1
 
   מה הפעולה המתמטית שהתוכנה עושה אני לא הבנתי?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
ronen333 
חבר מתאריך 20.2.03
6069 הודעות, דרג אמינות חבר זה
   14:42   22.08.10   
אל הפורום  
  3. % זה האופרטור לmod  
בתגובה להודעה מספר 2
 
   אתה בודק בתנאים האלה אם יש שארית 0 בחלוקה ב3 או ב7.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
dvir8
חבר מתאריך 13.5.02
5929 הודעות, דרג אמינות חבר זה
   00:38   23.08.10   
אל הפורום  
  4. הבנתי תודה רונן, דרך אגב,  
בתגובה להודעה מספר 3
 
   כתבתי קוד מסויים אני אעלה אותו מחר ואשמח אם תציץ ותסביר לי מה לא תקין בקוד כי משום מה האלגוריתם לא בדיוק עושה מה שאני מבקש


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

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

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



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