पूर्णांक एक डेटा प्रकार है जिसका उपयोग किसी संख्या को परिभाषित करने के लिए किया जाता है जिसमें सभी सकारात्मक, नकारात्मक या शून्य गैर-आंशिक मान होते हैं। इनमें दशमलव नहीं हो सकते।
फ्लोट एक डेटा प्रकार है जिसका उपयोग किसी संख्या को परिभाषित करने के लिए किया जाता है जिसमें एक भिन्नात्मक मान होता है। इनमें दशमलव भी हो सकते हैं।
अब, हम जांच करेंगे कि जब हम दोनों के लिए समान मान इनपुट करते हैं तो कंपाइलर द्वारा फ्लोट और इंटीजर रिटर्न का मान क्या होगा।
उदाहरण
#include <iostream> using namespace std; int main(){ float f = 23; unsigned int x = 23; cout<<"Float f = "<<f<<endl; cout<<"Integer x = "<<x<<endl; f = 0xffffffff; x = 0xffffffff; cout << "f = " << f << endl; cout << "x = " << x << endl; return 0; }
आउटपुट
Float f = 23 Integer x = 23 f = 4.29497e+09 x = 4294967295
यहां इस कोड में, हम देख सकते हैं कि यदि हम एक पूर्णांक मान को एक फ्लोट में पास करते हैं तो यह एक पूर्णांक के रूप में कार्य करेगा और आउटपुट के रूप में एक पूर्णांक मान लौटाएगा। लेकिन दोनों के लिए अधिकतम मान अलग-अलग होते हैं।
अब, देखते हैं कि अगर हम फ्लोट वैल्यू के साथ इंटीजर वेरिएबल को इनिशियलाइज़ करते हैं तो क्या होगा।
उदाहरण
#include <iostream> using namespace std; int main(){ float f = 23.768; unsigned int x = 23.768; cout<<"Float f = "<<f<<endl; cout<<"Integer x = "<<x<<endl; return 0; }
आउटपुट
Float f = 23.768 Integer x = 23
इस कंडीशन में भी प्रोग्राम कंपाइल करके रन करता है। पूर्णांक चर ने प्रारंभिक फ्लोट मान के दशमलव बिंदु मानों को त्याग दिया और इसके पूर्णांक मान के साथ प्रारंभ हो गया।
अब, आइए इन मानों की तुलना करें -
उदाहरण
#include <iostream> using namespace std; int main(){ float f = 0xffffffff; unsigned int x = 0xffffffff; if(f == x ){ cout<<"TRUE"; } else cout<<"FALSE"; return 0; }
आउटपुट
TRUE