مشاهدة النسخة كاملة : ممكن حد يفهمني الجزء ده؟؟؟
winter sonata
03-01-2010, 10:46 PM
انا الجزء ده نقلاه من المحاضره الاخيره ومش فاهمه تماما
يا ريت اي حد يفهمهولي:TT:
float x = 1.2 ;
int y= 5 ;
int z= 0x878925 ;
int a ;
char b ;
a = x ; ( fraction part is lost because int can't contain decimal)
b = y ; (no problem in conversion )
b = z ; ( data lost because b (char. = 8 bit ) while z (int. =24 bit ))
type casting.....................:
a= (int) x ; 1
b=( char ) y ; 5
b= char (z) ; 0x25
atemuoh1991
03-01-2010, 10:55 PM
int و char و float دي متغيرات
كل نوع فيهم بيحط حدود على شكل ال data اللي جواه
مينفعش أحط حاجة كبيرة جوا حاجة اصغر منها لكن ممكن العكس
يعني مثلا ال x نوعها float
وده بيسمح بـ decimal
لما آجي أحطها جوا ال a اللي هي int
مش حينفع عشان int مش بتسمح بال decimal
فحتاخد ال 1 وتسيب ال 0.2
بالنسبة لل z وال b
المشكلة في الحجم بتاع المتغير مش في الحدود
Mohammed Abdel Hamid
03-01-2010, 11:01 PM
طيب دي سهلة أوي
فيه حاجة اسمها data types و هي نوع الـData اللي الـVariable بتاعنا بيشيلها
مثلاً الـInt ده بيكون على طول رقم صحيح من غير كسور
طيب
لما عرفنا int a و جينا نحط جواه الـFloat اللي اسمها X و اللي قيمتها 1.2
ممكن يعترض لأن أنواع الـData types مالهاش نفس عدد الـbits اللي بيتحط فيها الداتا
فلازم نعمل حاجة الأول اسمها الـType conversion
دي بتخليني أحول من Float مثلا الى int زي ما في الجملة دي
a=(int)x; This means
حول الـVariable اللي اسمه x الى int (خلينا فاكرين أنه كان Float) و حطه في الـVariable اللي اسمه a
winter sonata
03-01-2010, 11:05 PM
تمام
طب بالنسبه جزء الz
محب الدين
03-01-2010, 11:14 PM
انا الجزء ده نقلاه من المحاضره الاخيره ومش فاهمه تماما
يا ريت اي حد يفهمهولي
عرفت variable اسمه x نوعه float وحطيط فيه 1.2
عرفت variable اسمه y نوعه int وحطيط فيه 5
عرفت variable اسمه z نوعه int وحطيط فيه 878925
( اى رقم هيسكا بحط قبليه 0x )
int a ;
عرفت variable اسمه a نوعه int
char b ;
عرفت variable اسمه b نوعه char
a = x ; ( fraction part is lost because int can't contain decimal)
a نوعه int بيخزن ارقام صحيحه بس فلما بساويه بال x اللى نوعه float بيهمل الجزء العشرى اللى هو 0.2
b نوعه char حجمة اقل من int بس y فيها رقم صغير مفحصلش مشكله
ولكن حدث مشكله مع z عشان الرقم اللى مخزنه كبير اكبر من حجم ال char عشان كده اخد اصغر byte اللى هى 0x25
type casting.....................:
a= (int) x ; 1
b=( char ) y ; 5
b= char (z) ; 0x25
بس كده
Mohammed Abdel Hamid
03-01-2010, 11:18 PM
تمام
طب بالنسبه جزء الz
طيب واحدة واحدة
مش احنا قلنا ان الـint حجمه 24 ؟
و الـChar حجمه 8 بس:whistling:
يعني الـChar تلت الـint
طب ازاي أحط حاجة حجمها 24 جوة حاجة حجمها 8 ؟:petlya35ch:
علشان كدة هاتلاقي اللي نوعه char أخد الثلث اللي على اليمين من الـint بس
يعني الـb أخدت الـ25 اللي عاليمين بس
علشان هو ده اللي هو هايقدر يشيله
ox اللي في الأول دي يعني Hexadecimal مش رقم ولا حاجة
لو لسة مش واصلة أوي ممكن أوضحها أكتر
winter sonata
03-01-2010, 11:27 PM
تمام كده بدات افهم:)
شكرا بحضرتك يا باشمهندس
Yusuf
03-01-2010, 11:31 PM
طيب دي سهلة أوي
فيه حاجة اسمها data types و هي نوع الـData اللي الـVariable بتاعنا بيشيلها
مثلاً الـInt ده بيكون على طول رقم صحيح من غير كسور
طيب
لما عرفنا int a و جينا نحط جواه الـFloat اللي اسمها X و اللي قيمتها 1.2
ممكن يعترض لأن أنواع الـData types مالهاش نفس عدد الـbits اللي بيتحط فيها الداتا
فلازم نعمل حاجة الأول اسمها الـType conversion
دي بتخليني أحول من Float مثلا الى int زي ما في الجملة دي
a=(int)x; This means
حول الـVariable اللي اسمه x الى int (خلينا فاكرين أنه كان Float) و حطه في الـVariable اللي اسمه a
جامد والله يا عبده انا عاوزك بقى :):)
Powered by vBulletin™ Version 4.1.0 Copyright © 2012 vBulletin Solutions, TranZ by Almuhajir