टाइप कास्टिंग और टाइप रूपांतरण के बीच अंतर

लेखक: Laura McKinney
निर्माण की तारीख: 1 अप्रैल 2021
डेट अपडेट करें: 4 मई 2024
Anonim
टाइप कास्टिंग बनाम टाइप रूपांतरण|टाइप कास्टिंग और टाइप रूपांतरण के बीच अंतर
वीडियो: टाइप कास्टिंग बनाम टाइप रूपांतरण|टाइप कास्टिंग और टाइप रूपांतरण के बीच अंतर

विषय


टाइप कन्वर्शन और टाइप कास्टिंग के बीच बुनियादी अंतर, यानी टाइप कन्वर्जन को कंपाइलर द्वारा "स्वचालित रूप से" बनाया जाता है, जबकि टाइपिंग कास्टिंग प्रोग्रामर द्वारा "स्पष्ट रूप से किया जाता है"।

दो प्रकार "टाइप कास्टिंग" और "प्रकार रूपांतरण" तब होते हैं जब एक डेटा प्रकार को दूसरे में बदलने की आवश्यकता होती है। जब दो प्रकार एक दूसरे के साथ संगत होते हैं, तो एक प्रकार से दूसरे में रूपांतरण स्वचालित रूप से संकलक द्वारा किया जाता है। तुलना चार्ट की मदद से दोनों प्रकार के कास्टिंग और रूपांतरण के अंतर पर चर्चा करें।

  1. तुलना चार्ट
  2. परिभाषा
  3. मुख्य अंतर
  4. निष्कर्ष

तुलना चार्ट:

तुलना के लिए आधारकास्टिंग टाइप करेंरूपांतरण टाइप करें
अर्थएक डेटा प्रकार उपयोगकर्ता द्वारा दूसरे को सौंपा जाता है, एक कास्ट ऑपरेटर का उपयोग करके फिर इसे "टाइप कास्टिंग" कहा जाता है।संकलक द्वारा एक डेटा प्रकार को दूसरे में स्वचालित रूप से परिवर्तित करना "प्रकार रूपांतरण" कहलाता है।
आवेदन किया हैटाइप कास्टिंग को दो असंगत डेटा प्रकारों पर भी लागू किया जा सकता है।टाइप रूपांतरण केवल तब लागू किया जा सकता है जब दो डेटा प्रकार संगत हों।
ऑपरेटरडेटा टाइप को दूसरे में डालने के लिए, एक कास्टिंग ऑपरेटर () की आवश्यकता होती है।कोई ऑपरेटर की आवश्यकता नहीं है।
डेटा प्रकारों का आकारगंतव्य प्रकार स्रोत प्रकार से छोटा हो सकता है।यहाँ गंतव्य प्रकार स्रोत प्रकार से बड़ा होना चाहिए।
कार्यान्वितयह प्रोग्राम डिजाइनिंग के दौरान किया जाता है।यह संकलन करते समय स्पष्ट रूप से किया जाता है।
रूपांतरण प्रकार

संकीर्ण रूपांतरण।व्यापक रूपान्तरण।
उदाहरणint a;
बाइट b;
...
...
b = (बाइट) a;
int a = 3;
फ्लोट बी;
ख = एक; // मान b = 3.000 में।


टाइप कास्टिंग की परिभाषा

कास्टिंग टाइप करें प्रोग्राम डिज़ाइनर के समय प्रोग्रामर द्वारा एक डेटा टाइप को दूसरे डेटा टाइप की कास्टिंग के रूप में परिभाषित किया जा सकता है। एक डेटा प्रकार का दूसरे में स्वचालित रूपांतरण हर समय संभव नहीं है। यह शर्त हो सकती है कि the गंतव्य प्रकार ’’ स्रोत प्रकार ’से छोटा हो। इसलिए, प्रोग्रामर को कास्टिंग ऑपरेटर) () का उपयोग करके बड़े डेटा प्रकार को स्पष्ट रूप से छोटे डेटा प्रकार में डालना पड़ता है। जैसा कि बड़े डेटा प्रकार को छोटे डेटा प्रकार में संशोधित किया जाता है, इसे 'संकीर्ण रूपांतरण' भी कहा जाता है।

घोषणा:

Dest_type = (target_type) चर / मान // लक्ष्य प्रकार एक प्रकार है जिसमें आप स्रोत प्रकार को रूपांतरित करना चाहते हैं, यह हमेशा गंतव्य प्रकार होता है।

उदाहरण

इसे एक उदाहरण से समझते हैं। आप डेटा प्रकार को 'बाइट' में 'बाइट' में बदलना चाहते हैं। अब, चूंकि 'बाइट' 'इंट' से छोटा है, इसलिए टाइप रूपांतरण की अनुमति नहीं है। यहां, हमें कास्टिंग ऑपरेटर) () का उपयोग करके we int ’को’ बाइट ’में बदलना है। चूंकि ’int '‘ byte' से बड़ा है, इसलिए 'int' का आकार "int mod byte" सीमा तक कम हो जाएगा।


int a; बाइट b; ... ... बी = (बाइट) ए;

जब ’फ्लोट’ को, int ’में बदल दिया जाता है, तो फ्लोट का आकार छोटा हो जाता है, क्योंकि store int’ आंशिक मूल्य को संग्रहीत नहीं करता है। यदि स्रोत प्रकार फिट होने के लिए गंतव्य प्रकार का आकार बहुत छोटा है, तो स्रोत प्रकार modulo गंतव्य प्रकार। श्रेणी ’है। डेटा प्रकार संगत होने पर कास्टिंग भी लागू किया जा सकता है। जहाँ भी रूपांतरण की आवश्यकता होती है वहाँ टाइप कास्टिंग का उपयोग करना अच्छा होता है।

प्रकार रूपांतरण की परिभाषा

रूपांतरण टाइप करें जब भी आवश्यक हो, कंपाइलर द्वारा स्पष्ट रूप से किए गए एक डेटा प्रकार का दूसरे में स्वचालित रूपांतरण होता है। लेकिन टाइप रूपांतरण से पहले संतुष्ट होने के लिए दो शर्तें हैं।

  • स्रोत और गंतव्य प्रकार संगत होना चाहिए।
  • गंतव्य प्रकार स्रोत प्रकार से बड़ा होना चाहिए।

इन दो स्थितियों को टाइप रूपांतरण प्राप्त करने के लिए संतुष्ट होना चाहिए, और इस प्रकार के रूपांतरण को 'व्यापक रूपांतरण' कहा जाता है, क्योंकि छोटे प्रकार को बड़े प्रकार में परिवर्तित किया जाता है, प्रकार का चौड़ीकरण होता है। इस व्यापक रूपांतरण के लिए, संख्यात्मक प्रकार wid int ’,’ फ्लोट ’एक दूसरे के साथ संगत होते हैं जबकि संख्यात्मक चार और बुलियन या चार से बूलियन भी संगत नहीं होते हैं।

उदाहरण

यह उदाहरण इस बारे में बेहतर दृष्टिकोण प्रदान करेगा

int a = 3; फ्लोट बी; ख = एक; // मान b = 3.000 में।

यहाँ, ’int’ को ‘float’ में बदल दिया जाता है, जो, int ’से बड़ा होता है, इसलिए स्रोत प्रकार का चौड़ीकरण होता है। यहां, कोई कास्टिंग ऑपरेटर की आवश्यकता नहीं है क्योंकि कंपाइलर इसे स्पष्ट रूप से करेगा।

  1. बुनियादी अंतर जो टाइप रूपांतरण से टाइप कास्टिंग को अलग करता है, वह है टाइपिंग एक प्रकार से दूसरे में रूपांतरण, प्रोग्रामर द्वारा किया जाता है। दूसरी ओर, प्रकार रूपांतरण एक प्रकार से दूसरे में रूपांतरण होता है, संकलन करते समय कंपाइलर द्वारा किया जाता है।
  2. टाइप कास्टिंग को डेटाटाइप्स पर लागू किया जा सकता है, जो एक दूसरे के साथ संगत नहीं हो सकता है। इसके विपरीत, टाइप रूपांतरण केवल डेटाटाइप पर लागू किया जा सकता है जो एक दूसरे के साथ संगत हैं।
  3. टाइप कास्टिंग में एक प्रकार से दूसरे प्रकार के रूपांतरण के लिए कास्टिंग ऑपरेटर "()" की आवश्यकता होती है जबकि टाइप रूपांतरण में एक डेटा प्रकार से दूसरे में रूपांतरण के लिए किसी ऑपरेटर की आवश्यकता नहीं होती है।
  4. टाइपिंग कास्टिंग में एक डेटा प्रकार को दूसरे में परिवर्तित करते समय, गंतव्य प्रकार स्रोत प्रकार से बड़ा या छोटा हो सकता है। जैसा कि होता है, गंतव्य प्रकार प्रकार रूपांतरण में स्रोत प्रकार से बड़ा होना चाहिए।
  5. एक प्रकार से दूसरे प्रकार का रूपांतरण टाइप कास्टिंग में कोडिंग करते समय किया जाता है। इसके विपरीत, टाइप रूपांतरण में, संकलन के दौरान एक प्रकार से दूसरे में रूपांतरण स्पष्ट रूप से किया जाता है।
  6. टाइप कास्टिंग को संकीर्ण रूपांतरण कहा जाता है क्योंकि यहां गंतव्य प्रकार स्रोत प्रकार से छोटा हो सकता है। इसके विपरीत, टाइप रूपांतरण को व्यापक रूपांतरण कहा जाता है क्योंकि यहां, गंतव्य प्रकार स्रोत प्रकार से बड़ा होना चाहिए।

निष्कर्ष:

यह निष्कर्ष निकाला जा सकता है कि टाइप रूपांतरण और टाइप कास्टिंग, दोनों एक डाटा टाइप को दूसरे में बदलने का कार्य करते हैं, लेकिन इस मायने में भिन्न होता है कि टाइपिंग कास्टिंग प्रोग्रामर द्वारा की जाती है, कास्ट ऑपरेटर () और टाइप कन्वर्जन का उपयोग करके किया जाता है। , और यह किसी भी ऑपरेटर का उपयोग नहीं करता है।