الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال في Printf Function

بدأه mandareka في 2 أبريل 2009 · 2 رد · 441 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

عند كتابة مثل هذا الكود

  1. #include <stdio.h>
  2.  
  3. int main()
  4. {
  5. float f;
  6. double d;
  7.  
  8. f = 2.5234;
  9. d = 1.12423546445324;
  10.  
  11. printf("%f %fn", f, d);
  12. return (0);
  13.  
  14. }     
  15.  

كيف تقوم الـ printf بالتمييز بين الـ double data type والـ float data type

علما بأن حجم وطريقة تركيب الـ double يختلف عن الـ float، مع أني استخدمت نفس التنسيق

 "%f"

في كلتا الحالتين....!!

تحياتي العطرة...............................................:)

تم تعديل هذه المشاركة بواسطة mandareka في 2 أبريل 2009 في 19:54

دولة الخلافة الاسلامية في المخاض الاخير وميلادها قريب

حزب التحرير : التزم الطريق الصحيح الشرعي الوحيد لاعادة دولة الخلافة الاسلامية .

الامة الاسلامية متعطشة لقيادة مخلصة لتذوق حلاوة النصر ولن يكون ذلك الا بعودة الخلافة الاسلامية

الامة الاسلامية تحتاج لاحداث تسحقها سحقا وتمعسها معسا لتفكر تفكيرا جماعيا بالتغير لان وحدة المشاعر لوحدها لاتكفي وهذة الاحداث كلها خير

#2

ألا يوجد أحد لديه فكرة عن الموضوع..........:S

دولة الخلافة الاسلامية في المخاض الاخير وميلادها قريب

حزب التحرير : التزم الطريق الصحيح الشرعي الوحيد لاعادة دولة الخلافة الاسلامية .

الامة الاسلامية متعطشة لقيادة مخلصة لتذوق حلاوة النصر ولن يكون ذلك الا بعودة الخلافة الاسلامية

الامة الاسلامية تحتاج لاحداث تسحقها سحقا وتمعسها معسا لتفكر تفكيرا جماعيا بالتغير لان وحدة المشاعر لوحدها لاتكفي وهذة الاحداث كلها خير

#3

بســم الله الـرحمــن الرحيــم

السلام عليكــم ورحمـة الله وبركاتــه ،،

طالما نوع المتغيير معرف في اللغة او قام المبرمج بتعريفه فلا توجد مشكلة فسيتم التحويل بسلاسة

فكر في الموضوع بنفس الطريقة التي يتم بها تحويل البيانات اي Casting فمثلا

int i = 5;
float m = 10.2;
i = (int)m; // the compiler  happy now .

فما يحصل لا يعدو كونه التعامل مع عدد اكبر او اقل من البايتات عند التحويل من نوع الى اخر

MSDN

Double precision values with double type have 8 bytes. The format is similar to the float format except that it has an 11-bit excess-1023 exponent and a 52-bit mantissa, plus the implied high-order 1 bit. This format gives a range of approximately 1.7E–308 to 1.7E+308 for type double.

Microsoft Specific —>

The double type contains 64 bits: 1 for sign, 11 for the exponent, and 52 for the mantissa. Its range is +/–1.7E308 with at least 15 digits of precision.

تحياتي

تم تعديل هذه المشاركة بواسطة HaTy في 3 أبريل 2009 في 20:12

while( "اسلام" )
{
 cout >> "الموت لبني صهيون" >> endl;
}
return "فلسطين";

مواضيع مشابهة