सी लाइब्रेरी - <फ्लोट.एच>
float.hC मानक लाइब्रेरी की हेडर फ़ाइल में फ़्लोटिंग पॉइंट मानों से संबंधित विभिन्न प्लेटफ़ॉर्म-निर्भर स्थिरांक का एक सेट होता है। ये स्थिरांक एएनएसआई सी द्वारा प्रस्तावित हैं। वे अधिक पोर्टेबल कार्यक्रम बनाने की अनुमति देते हैं। सभी स्थिरांक की जांच करने से पहले, यह समझना अच्छा है कि फ्लोटिंग-पॉइंट नंबर चार तत्वों से बना है -
अनु क्रमांक। | घटक और घटक विवरण |
---|---|
1 |
S चिन्ह (+/-) |
2 |
b प्रतिपादक प्रतिनिधित्व का आधार या मूलांक, 2 बाइनरी के लिए, 10 दशमलव के लिए, 16 हेक्साडेसिमल के लिए, और इसी तरह ... |
3 |
e घातांक, न्यूनतम के बीच पूर्णांक emin और एक अधिकतम emax। |
4 |
p परिशुद्धता, महत्व में बेस-बी अंकों की संख्या। |
उपरोक्त 4 घटकों के आधार पर, एक फ्लोटिंग पॉइंट का मूल्य निम्नानुसार होगा -
floating-point = ( S ) p x be
or
floating-point = (+/-) precision x baseexponent
लाइब्रेरी मैक्रोज़
निम्नलिखित मान कार्यान्वयन-विशिष्ट हैं और #define निर्देश के साथ परिभाषित किए गए हैं, लेकिन ये मान यहां दिए गए से कम नहीं हो सकते हैं। ध्यान दें कि सभी उदाहरणों में FLT टाइप करने के लिए संदर्भित करता हैfloat, DBL को संदर्भित करता है double, और LDBL को संदर्भित करता है long double।
अनु क्रमांक। | मैक्रो और विवरण |
---|---|
1 | FLT_ROUNDS फ़्लोटिंग पॉइंट जोड़ के लिए गोलाई मोड को परिभाषित करता है और इसके निम्न मान हो सकते हैं -
|
2 | FLT_RADIX 2 यह घातांक के आधार मूलांक निरूपण को परिभाषित करता है। एक बेस -2 बाइनरी है, बेस -10 सामान्य दशमलव प्रतिनिधित्व है, बेस -16 हेक्स है। |
3 | FLT_MANT_DIG DBL_MANT_DIG LDBL_MANT_DIG ये मैक्रोज़ संख्या में अंकों की संख्या (FLT_RADIX आधार में) को परिभाषित करते हैं। |
4 | FLT_DIG 6 DBL_DIG 10 LDBL_DIG 10 ये मैक्रोज़ अधिकतम संख्या दशमलव अंकों (आधार -10) को परिभाषित करते हैं जिन्हें गोलाई के बाद बिना परिवर्तन के दर्शाया जा सकता है। |
5 | FLT_MIN_EXP DBL_MIN_EXP LDBL_MIN_EXP ये मैक्रो आधार FLT_RADIX में एक घातांक के लिए न्यूनतम नकारात्मक पूर्णांक मान को परिभाषित करते हैं। |
6 | FLT_MIN_10_EXP -37 DBL_MIN_10_EXP -37 LDBL_MIN_10_EXP -37 ये मैक्रो बेस 10 में एक घातांक के लिए न्यूनतम नकारात्मक पूर्णांक मान को परिभाषित करते हैं। |
7 | FLT_MAX_EXP DBL_MAX_EXP LDBL_MAX_EXP ये मैक्रो आधार FLT_RADIX में एक घातांक के लिए अधिकतम पूर्णांक मान को परिभाषित करते हैं। |
8 | FLT_MAX_10_EXP +37 DBL_MAX_10_EXP +37 LDBL_MAX_10_EXP +37 ये मैक्रोज़ बेस 10 में एक प्रतिपादक के लिए अधिकतम पूर्णांक मान को परिभाषित करते हैं। |
9 | FLT_MAX 1E+37 DBL_MAX 1E+37 LDBL_MAX 1E+37 ये मैक्रोज़ अधिकतम परिमित फ्लोटिंग-पॉइंट वैल्यू को परिभाषित करते हैं। |
10 | FLT_EPSILON 1E-5 DBL_EPSILON 1E-9 LDBL_EPSILON 1E-9 ये मैक्रोज़ कम से कम महत्वपूर्ण अंकों को दर्शाते हैं। |
1 1 | FLT_MIN 1E-37 DBL_MIN 1E-37 LDBL_MIN 1E-37 ये मैक्रोज़ न्यूनतम फ्लोटिंग-पॉइंट वैल्यू को परिभाषित करते हैं। |
उदाहरण
निम्न उदाहरण फ़्लोट.एच फ़ाइल में परिभाषित कुछ स्थिरांक के उपयोग को दर्शाता है।
#include <stdio.h>
#include <float.h>
int main () {
printf("The maximum value of float = %.10e\n", FLT_MAX);
printf("The minimum value of float = %.10e\n", FLT_MIN);
printf("The number of digits in the number = %.10e\n", FLT_MANT_DIG);
}
आइए उपरोक्त कार्यक्रम को संकलित करें और चलाएं जो निम्नलिखित परिणाम देगा -
The maximum value of float = 3.4028234664e+38
The minimum value of float = 1.1754943508e-38
The number of digits in the number = 7.2996655210e-312