English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
كتابة C المعياري float.h يحتوي الملف المضمن على مجموعة من المعلمات المعتمدة على المنصة المتعلقة بالقيم التمثيل العشري. هذه المعلمات مقترحة من ANSI C، مما يجعل البرنامج أكثر قابلية للتنقل. قبل شرح هذه المعلمات، من الأفضل أن نفهم أن القيم التمثيل العشري تتكون من أربعة عناصر كالتالي:
المكونات | وصف المكونات |
---|---|
S | الإشارة (+/-) |
b | النسبة تعني القاعدة، 2 تعني الثنائية، 10 تعني العشرية، 16 تعني السداسية، وما إلى ذلك... |
e | النسبة، بين الحد الأدنى eالحد الأدنى والقيمة القصوى eالحد الأقصى بينها |
p | الدقة، عدد الأرقام العشرية الفعالة في القاعدة b |
بناءً على هذه العناصر الأربعة، يمكن تحديد قيمة عدد تمثيلي كالتالي:
التمثيل العشري = (S) p x be
أو
التمثيل العشري = (+/-) دقة x قاعدةالأس
القيم التالية هي معينة للتنفيذ، وتعرف باستخدام تعليمات #define، ولا يجب أن تكون أقل من القيم المذكورة أدناه. يرجى ملاحظة أن جميع الأمثلة FLT تشير إلى نوع float، DBL تشير إلى نوع double، LDBL تشير إلى نوع long double.
المكتبة الماكرو | الوصف |
---|---|
FLT_ROUNDS | تحديد نمط التمثيل العشري للجمع، يمكن أن يكون أي من القيم التالية:
|
FLT_RADIX 2 | هذا التعريف يعرف قاعدة العدد المستخدمة في تمثيل الأرقام العشرية. قاعدة 2 تعني ثنائي، قاعدة 10 تعني عشري، وقاعدة 16 تعني عشري الستة عشر. |
FLT_MANT_DIG DBL_MANT_DIG LDBL_MANT_DIG | هذه التعريفات تعرف عدد الأرقام في FLT_RADIX. |
FLT_DIG 6 DBL_DIG 10 LDBL_DIG 10 | هذه التعريفات تعرف أكبر قيمة عشري غير محددة يمكن أن تظل نفسها بعد التمثيل. |
FLT_MIN_EXP DBL_MIN_EXP LDBL_MIN_EXP | هذه التعريفات تعرف أصغر قيمة صحيحة للسلاسل العشرية عند قاعدة FLT_RADIX. |
FLT_MIN_10_EXP -37 DBL_MIN_10_EXP -37 LDBL_MIN_10_EXP -37 | هذه التعريفات تعرف أصغر قيمة صحيحة للسلاسل العشرية عند قاعدة 10. |
FLT_MAX_EXP DBL_MAX_EXP LDBL_MAX_EXP | هذه التعريفات تعرف أكبر قيمة صحيحة للسلاسل العشرية عند قاعدة FLT_RADIX. |
FLT_MAX_10_EXP +37 DBL_MAX_10_EXP +37 LDBL_MAX_10_EXP +37 | هذه التعريفات تعرف أكبر قيمة صحيحة للسلاسل العشرية عند قاعدة 10. |
FLT_MAX 1E+37 DBL_MAX 1E+37 LDBL_MAX 1E+37 | هذه التعريفات تعرف أكبر قيمة نقية محدودة. |
FLT_EPSILON 1E-5 DBL_EPSILON 1E-9 LDBL_EPSILON 1E-9 | هذه التعريفات تعرف أصغر عدد فعال قابلاً للتعبير عنه. |
FLT_MIN 1E-37 DBL_MIN 1E-37 LDBL_MIN 1E-37 | هذه التعريفات تعرف أصغر قيمة نقية. |
هذا المثال يعرض استخدام بعض المعلمات المحددة في ملف float.h.
#include <stdio.h> #include <float.h> int main(); { printf("أكبر قيمة float = %.10e\n", FLT_MAX); printf("أصغر قيمة float = %.10e\n", FLT_MIN); printf("رقم الأرقام = %.10e\n", FLT_MANT_DIG); }
لنقوم بتشغيل البرنامج المذكور أعلاه، وسيتم إنتاج النتيجة التالية:
أعلى قيمة float = 3.4028234664e+38 أدنى قيمة float = 1.1754943508e-38 عدد أرقام number = 7.2996655210e-312