वरील उदाहरणात, फ्लोटमध्ये स्पष्टपणे टाकल्यानंतर फ्लोट व्हेरिएबल NUM2 मध्ये पूर्णांक मूल्य NUM1 जोडले जाते. रिझल्ट व्हेरिएबलमध्ये परिणामाचे प्रतिनिधित्व करणारे फ्लोट मूल्य असते.
स्पष्ट कास्टिंग:
कास्ट ऑपरेटरचा वापर करून, स्पष्ट कास्टिंगमध्ये एक डेटा प्रकार स्पष्टपणे बदलणे आवश्यक आहे. त्यास कोडमध्ये स्पष्ट सूचनांची आवश्यकता आहे आणि प्रोग्रामर नियंत्रणास प्रकार रूपांतरणास अनुमती देते.
कसे लिहावे
(pzakar) ABaivyaKtai
येथे, अभिव्यक्ती हे मूल्य किंवा व्हेरिएबल आहे जे कास्ट केले जावे आणि (प्रकार) आवश्यक डेटा प्रकार आहे.
उदाहरण
#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya() {
ApaunaZ saMqyaaR1 = 15.6;
paunaZ saMqyaaR2;
saMqyaaR2 = (paunaZ) saMqyaaR1; // spaST kasT paasauna ApaunaZ Tu paunaZ
laiha("D parinaama Aahe: %paunaZ\n", saMqyaaR2);
vaapasakra 0;
}
आउटपुट
D parinaama Aahe: 15
स्पष्टीकरण:
हे उदाहरण पूर्णांकात फ्लोट व्हेरिएबल NUM1 स्पष्टपणे कास्ट करण्यासाठी (इंट) वाक्यरचना वापरते. अपूर्णांक भाग कमी केल्यानंतर, आम्हाला पूर्णांक मूल्य मिळते आणि ते मूल्य NUM2 व्हेरिएबलला नियुक्त केले जाते.
अरुंद रूपांतरण:
जेव्हा मूल्य एखाद्या अरुंद श्रेणी किंवा अचूकतेसह डेटा प्रकारात रूपांतरित केले जाते तेव्हा ते संकुचित होते असे म्हटले जाते, ज्यामुळे डेटा कमी होऊ शकतो. जर ते योग्यरित्या हाताळले गेले नाही तर ते अनपेक्षित वर्तन होऊ शकते आणि स्पष्ट कास्टिंगची आवश्यकता असू शकते.
उदाहरण
#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya() {
AMk saMqyaaR1 = 1234.56789;
paunaZ saMqyaaR2;
saMqyaaR2 = (paunaZ) saMqyaaR1; // ArfMD rfpaaMtarna paasauna AMk Tu paunaZ
laiha("D parinaama Aahe: %paunaZ\n", saMqyaaR2);
vaapasakra 0;
}
आउटपुट
D parinaama Aahe: 1234
स्पष्टीकरण:
हे उदाहरण पूर्णांकात दुहेरी मूल्य NUM1 स्पष्टपणे टाकून रूपांतरण संकुचित करते. पूर्णांक मूल्य NUM2 व्हेरिएबलवर पाठविले जाते आणि अपूर्णांक भाग काढून टाकला जातो.
रुंदीकरण रूपांतरण:
जेव्हा मूल्य विस्तृत श्रेणी किंवा अधिक अचूकतेसह डेटा प्रकारात रूपांतरित केले जाते तेव्हा या प्रक्रियेस रुंदीकरण रूपांतरण म्हणतात. हे स्पष्टपणे उद्भवत असल्याने, कास्ट करणे आवश्यक नाही.
उदाहरण
#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya() {
paunaZ saMqyaaR1 = 10;
AMk saMqyaaR2;
saMqyaaR2 = saMqyaaR1; // rfMDikrna rfpaaMtarna paasauna paunaZ Tu AMk
laiha("D parinaama Aahe: %ApaunaZ\n", saMqyaaR2);
vaapasakra 0;
}
आउटपुट
D parinaama Aahe: 10.000000
स्पष्टीकरण:
या उदाहरणात, NUM2 व्हेरिएबलची असाइनमेंट परिणामी पूर्णांक मूल्य NUM1 चे दुहेरी रूपांतरण होते. प्रारंभिक पूर्णांक सारख्याच संख्यात्मक मूल्यासह दुहेरी परिणाम म्हणजे परिणाम.
प्रकार कास्टिंगचे फायदे
त्याचे असंख्य फायदे प्रोग्रामरसाठी सी मध्ये एक उपयुक्त वैशिष्ट्य बनवतात. चला काही मुख्य फायदे तपासू:
अचूक नियंत्रण:
टाइप कास्टिंग प्रोग्रामरना गणितांच्या अचूकतेवर अचूक नियंत्रण करण्यास सक्षम करते. ते दशांश ठिकाणे बदलू शकतात, अपूर्णांक घटक काढून टाकू शकतात किंवा व्हेरिएबल्सला विविध डेटा प्रकारात रूपांतरित करून अधिक अचूक उत्तरे मिळवू शकतात.
डेटा सुसंगतता:
बाह्य लायब्ररी किंवा एपीआय वापरताना, डेटा सुसंगततेचे आश्वासन देण्यासाठी टाइप कास्टिंग आवश्यक आहे. विशिष्ट डेटा प्रकार बर्याच लायब्ररी किंवा फंक्शन्सद्वारे इनपुट वितर्क म्हणून अपेक्षित आहेत. प्रोग्रामर प्रभावी डेटा ट्रान्समिशन आणि इंटरऑपरेबिलिटीची सोय, प्रकार कास्टिंगचा वापर करून या बाह्य घटकांसह त्यांचा कोड सहजपणे जोडू शकतात.
अधिक लवचिकता:
टाइप कास्टिंग वापरकर्ता इनपुट व्यवस्थापित करताना अधिक अनुकूलतेसाठी अनुमती देते. प्रोग्रामर अतिरिक्त प्रक्रिया किंवा प्रमाणीकरणासाठी आवश्यक डेटा प्रकारात स्ट्रिंग रूपांतरित करू शकतात, उदाहरणार्थ, इनपुटला स्ट्रिंग म्हणून स्वीकारताना. या लवचिकतेद्वारे अधिक मजबूत इनपुट प्रक्रिया आणि सुधारित त्रुटी तपासणीसह, प्रोग्राम अधिक विश्वासार्ह आहेत.
प्रभावी मेमरी वापर:
व्हेरिएबल्स लहान डेटा प्रकारात आकार कमी करून जेथे ते व्यवहार्य आहे, टाइप कास्टिंग प्रोग्रामरला कार्यक्षमतेने मेमरी वापरण्यास सक्षम करते. उदाहरणार्थ, टाइप कास्टिंग मेमरी संवर्धनास मदत करू शकते जर पूर्णांक मूल्य सुरक्षितपणे चार किंवा शॉर्ट सारख्या लहान डेटा प्रकारात सुरक्षितपणे संग्रहित केले जाऊ शकते. जेव्हा स्मृती कार्यक्षमता महत्त्वपूर्ण असते तेव्हा मर्यादित स्त्रोत असलेल्या सिस्टममध्ये हा फायदा अधिक महत्त्वपूर्ण होतो.
कोड पुन्हा वापरता:
विविध डेटा प्रकारांसह एकाच डेटा प्रकारासाठी तयार केलेली फंक्शन्स किंवा घटक वापरण्यासाठी प्रोग्रामर सक्षम करून, टाइप कास्टिंग कोडचा पुनर्वापर वाढवते. ते विद्यमान कोडचा पुन्हा वापर करू शकतात आणि व्हेरिएबल्स प्रभावीपणे कास्ट करून, विकासाचा वेळ आणि प्रयत्न कमी करून डुप्लिकेशनला प्रतिबंधित करू शकतात.
त्रुटी हाताळणी:
त्रुटी व्यवस्थापन आणि शोध प्रकार कास्टिंगचा फायदा होऊ शकतो. एक त्रुटी किंवा अपवाद तयार केला जाऊ शकतो. उदाहरणार्थ, विसंगत डेटा प्रकारांमुळे एखादे रूपांतरण अपयशी ठरल्यास, परिस्थितीचे कृतज्ञतेने निराकरण करण्याची संधी देते. विकास आणि चाचणी टप्प्या दरम्यान, ही त्रुटी शोधण्याचे तंत्र कोणत्याही समस्या शोधण्यात आणि निराकरण करण्यात मदत करते.
डेटा सुरक्षित ठेवणे:
सी मध्ये स्पष्टपणे कास्टिंग रूपांतरण दरम्यान डेटा कमी होण्याच्या शक्यतेची आठवण म्हणून काम करते. व्हेरिएबलला लहान डेटा प्रकारात रूपांतरित करताना प्रोग्रामर गंतव्य प्रकाराच्या मर्यादित श्रेणी किंवा अचूकतेबद्दल लक्षात ठेवणे आवश्यक आहे. ते डेटा अखंडतेवरील परिणामाचे मूल्यांकन करू शकतात आणि आवश्यक असल्यास, व्हेरिएबल स्पष्टपणे कास्ट करून योग्य त्रुटी हाताळण्याची प्रक्रिया तयार करू शकतात.
कार्यक्षमता वाढवणे:
काही प्रक्रिया अधिक कार्यक्षमतेने अंमलात आणून, प्रकार कास्टिंग अधूनमधून कार्यक्षमता वाढवू शकतो. उदाहरणार्थ, सुस्पष्ट कास्टिंग मिश्रित डेटा प्रकार असलेल्या जटिल अभिव्यक्तींशी संबंधित असताना अधिक प्रभावी मशीन कोड तयार करण्यात कंपाईलरला अधिक प्रभावी मशीन कोड तयार करण्यास मदत करू शकते.
निष्कर्ष:
परिणामी, सी मधील टाइप कास्टिंग हे एक शक्तिशाली वैशिष्ट्य आहे जे अचूकता नियंत्रण, डेटा सुसंगतता, लवचिकता, मेमरी ऑप्टिमायझेशन, कोड पुनर्वापर, त्रुटी हाताळणी, डेटा गमावण्याचे संरक्षण आणि संभाव्य गती नफा प्रदान करते. प्रोग्रामर संगणनाची बारीक-ट्यून करू शकतात, बाह्य घटकांशी संवाद साधू शकतात, वापरकर्त्याचे इनपुट व्यवस्थापित करू शकतात, मेमरी वापराचे ऑप्टिमाइझ करू शकतात, कोडचा पुनर्वापर सुनिश्चित करू शकतात, चुका शोधू शकतात, डेटा गमावू शकतात आणि एका डेटा प्रकारातून दुसर्या प्रकारात चल बदलून कार्यक्षमता वाढवू शकतात. डेटा अखंडता आणि प्रोग्राम स्थिरतेची हमी देण्यासाठी टाइप कास्टिंग काळजीपूर्वक वापरणे आवश्यक आहे. प्रोग्रामर सी मध्ये टाइपकास्टिंगची ठोस आकलन करून त्यांच्या प्रोग्रामची कार्यक्षमता आणि कार्यक्षमता सुधारू शकतात.
स्पष्टीकरण:
स्पष्टीकरण:
वरील उदाहरणात, फ्लोटमध्ये स्पष्टपणे टाकल्यानंतर फ्लोट व्हेरिएबल NUM2 मध्ये पूर्णांक मूल्य NUM1 जोडले जाते. रिझल्ट व्हेरिएबलमध्ये परिणामाचे प्रतिनिधित्व करणारे फ्लोट मूल्य असते.
सी मध्ये प्रकार कास्टिंग
प्रोग्रामिंगच्या क्षेत्रातील व्हेरिएबल्सचे स्वरूप आणि वर्तन निश्चित करण्यासाठी डेटा प्रकार महत्त्वपूर्ण आहेत. टाइपकॅस्टिंग आम्हाला एका डेटा प्रकारास दुसर्या डेटा रूपांतरित करण्यास अनुमती देते. या प्रक्रियेस टाइप कास्टिंग म्हणतात आणि सी प्रोग्रामिंग भाषा त्यास उपयुक्त साधन म्हणून ऑफर करते. या ब्लॉगमध्ये, आम्ही वाक्यरचना, व्यावहारिक अनुप्रयोग आणि सी मधील टाइपकास्टिंगचे फायदे तपासू. व्हेरिएबलचा डेटा प्रकार बदलण्याची प्रक्रिया टाइप कास्टिंग म्हणून ओळखली जाते. हे विविध परिस्थितींमध्ये उपयुक्त ठरू शकते, कारण वापरकर्त्याच्या इनपुटवर प्रक्रिया करताना, गणिताची गणना करणे किंवा डेटा प्रकारांची आवश्यकता असलेल्या इतर लायब्ररीत संवाद साधताना. सी भाषेत, आम्ही टाइपकॅस्टिंगसाठी कास्ट ऑपरेटर वापरतो जो (प्रकार) द्वारे दर्शविला जातो.
कसे लिहावे
(pzakar)maulya;
टीपः डेटा कमी होण्यापासून टाळण्यासाठी नेहमीच कमी मूल्याचे रूपांतर करण्याची शिफारस केली जाते.
Saivaaya pzakar kasTiMga:
paunaZ Ppaf= 9/4;
laiha("f: %paunaZ\n", Ppaf) ;//AaUTpauT: 2
sah pzakar kasTiMga:
ApaunaZ Ppaf=(ApaunaZ) 9/4;
laiha("f: %ApaunaZ\n", Ppaf) ;//AaUTpauT: 2.250000
प्रकार कास्टिंगचे प्रकार
टाइप कास्टिंग सी मध्ये अनेक मार्गांनी केले जाऊ शकते, ज्यात अंतर्भूत आणि सुस्पष्ट कास्टिंगचा समावेश आहे.
अंतर्भूत कास्टिंग:
जेव्हा कंपाईलर स्वयंचलितपणे डेटाचे एका प्रकारातून दुसर्या प्रकारात रूपांतरित करते, तेव्हा त्यास अंतर्भूत कास्टिंग किंवा स्वयंचलित प्रकारचे रूपांतरण म्हणून संबोधले जाते. हे कास्टिंग मार्गदर्शक तत्त्वांच्या संचावर आधारित आहे जे विविध प्रकारचे डेटा एकत्र कसे राहू शकतात याची रूपरेषा. एक उदाहरण म्हणून, फ्लोटमध्ये पूर्णांकांचे स्वयंचलित रूपांतरण, जे कोणत्याही स्पष्ट सूचनांशिवाय उद्भवते, हे अंतर्भूत कास्टचे उदाहरण आहे.
अंतर्भूत कास्टिंगला कोणत्याही विशेष वाक्यरचनाची आवश्यकता नसते कारण कंपाईलर त्याची काळजी घेते.
उदाहरण
#vaapara <PsaTidiAayaAae.Pca>
paunaZ mauqya() {
paunaZ saMqyaaR1 = 10;
ApaunaZ saMqyaaR2 = 5.5;
ApaunaZ parinaama;
parinaama = saMqyaaR1 + saMqyaaR2; // AMtaBaZuta kasT paasauna paunaZ Tu ApaunaZ
laiha("D parinaama Aahe: %ApaunaZ\n", parinaama);
vaapasakra 0;
}
आउटपुट
आउटपुट
D parinaama Aahe: 15.500000