ABA


"בעיה בCasting בC++"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #12627 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 12627
Non Stop

   13:02   30.10.05   
אל הפורום  
  בעיה בCasting בC++  
 
   יש את הקוד הבא:

cout << (test*0.7+work*10*0.3);
cout << (int)(test*0.7+work*10*0.3);

Test וwork שתיהם INT

והפלט הוא
100
99

איך זה הגיוני?!!...אני משתגע...
זה משהו לא טוב בCASTING...מישהו יודע אולי?..

תודה


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

  האשכול     מחבר     תאריך כתיבה     מספר  
  זה ידוע שמשתנים עם נקודה צפה לא מיוצגים טוב במחשב. חפש על IEEE. bizho 30.10.05 14:54 1
     זה שיגע אותי Non Stop 30.10.05 15:00 2
         כשאתה עושה את זה, מה יוצאת התוצאה? nesher  30.10.05 18:11 3
             הפלט הוא Non Stop 30.10.05 19:41 4
                 אני חושב שאני יודע למה nesher  30.10.05 20:03 5
                     לא אחי הלוואי זה היה ככה... Non Stop 31.10.05 02:12 6

       
bizho

   14:54   30.10.05   
אל הפורום  
  1. זה ידוע שמשתנים עם נקודה צפה לא מיוצגים טוב במחשב. חפש על IEEE.  
בתגובה להודעה מספר 0
 
  


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

   15:00   30.10.05   
אל הפורום  
  2. זה שיגע אותי  
בתגובה להודעה מספר 1
 
   הקטע שאם אני מכניס את הביטוי למשתנה FLOAT ואז עושה לו CASTING זה עובד מצויין


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

   18:11   30.10.05   
אל הפורום  
  3. כשאתה עושה את זה, מה יוצאת התוצאה?  
בתגובה להודעה מספר 2
 
   כמובן עם אותם נתונים שהכנסת למשתנים


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

   19:41   30.10.05   
אל הפורום  
  4. הפלט הוא  
בתגובה להודעה מספר 3
 
   100
100

לא יודע למה זה ככה...


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

   20:03   30.10.05   
אל הפורום  
  5. אני חושב שאני יודע למה  
בתגובה להודעה מספר 4
 
   אני לא בטוח 100% אבל תנסה לעשות DEBUG אתה אולי תראה בעצמך
כשאתה לא עושה קאסטינג אז התשובה היא 99 נקודה משהו משהו וכן הלאה
ואז זה מציג 99... (כנראה מקצץ מהתשובה את מה שאחרי הנק')
כשאתה עושה קאסטינג עם float אז המשהו אחרי הנק' כנראה גדול מ-50 (למשל 99.546)
ואז הוא מציג פלט 100...


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

   02:12   31.10.05   
אל הפורום  
  6. לא אחי הלוואי זה היה ככה...  
בתגובה להודעה מספר 5
 
   הביטוי הזה שאני מחשב יוצא 100 עגול...בלי הcasting זה יוצא 100 ואחרי שאני עושה CASTING הוא משום מה ממיר לי אותו ל99...אין לי מושג למה....

בכל אופן עזבתי את זה אחי תודה


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

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

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



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