1. C भाषा मा डेटा प्रकारको महत्व
C भाषा मा, डेटा प्रकारले प्रोग्रामको शुद्धता र प्रदर्शनमा ठूलो प्रभाव पार्छ।char
प्रकार र int
प्रकार प्रोग्रामभित्र बारम्बार प्रयोग हुने आधारभूत डेटा प्रकारहरू हुन्, र यीलाई आपसमा रूपान्तरण गर्नुपर्ने परिस्थितिहरू धेरै हुन्छन्। यस लेखमा, char
प्रकार र int
प्रकारको रूपान्तरण विधि तथा ध्यान दिनुपर्ने बुँदाहरूको व्याख्या गर्नेछौं।
रूपान्तरणको सामान्य प्रयोगहरू
प्रोग्राममा, char
प्रकार र int
प्रकारको आपसी रूपान्तरणले अक्षर र त्यससँग सम्बन्धित संख्यात्मक मानहरूलाई ह्यान्डल गर्न चाहँदा वा मेमोरी आकार बचत गर्न चाहँदा उपयोगी हुन्छ। उदाहरणका लागि, char
प्रकारमा प्रतिनिधित्व गरिएको ASCII कोडलाई int
प्रकारमा रूपान्तरण गरेर, त्यो कोड प्रयोग गरी गणना गर्ने विचार गर्न सकिन्छ। साथै, char
प्रकारमा इनपुट गरिएको मानलाई संख्यात्मक रूपमा प्रक्रिया गर्न चाहँदा पनि, यो रूपान्तरण आवश्यक हुन्छ।
2. char प्रकारबाट int प्रकारमा रूपान्तरण
C भाषा मा, char
प्रकारबाट int
प्रकारमा रूपान्तरण कास्ट प्रयोग गरेर गरिन्छ। यस विधिले, char
प्रकारको मानलाई पूर्णांकको रूपमा सञ्चालन गर्न सकिन्छ।
मूलभूत रूपान्तरण विधि
char
प्रकारको मानलाई int
प्रकारमा रूपान्तरण गर्दा, साधारण कास्ट प्रयोग गरिन्छ।
#include <stdio.h>
int main() {
char character = 'A'; // 'A' को ASCII कोड 65 हो
int intValue = (int)character; // char लाई int मा कास्ट गर्नुहोस्
printf("अक्षर %c को ASCII कोड %d हो。
", character, intValue);
return 0;
}
यो प्रोग्राममा, अक्षर 'A'
लाई पूर्णांकमा रूपान्तरण गरी, नतिजा देखाइन्छ। नतिजा 65
हुन्छ।
साइन गरिएको र साइन नगरिएको char प्रकार
C भाषामा, साइन गरिएको char
प्रकार र साइन नगरिएको char
प्रकारका दुई प्रकारहरू छन्। साइन गरिएको char
प्रकारले नकारात्मक मानहरू लिन सक्छ, जबकि साइन नगरिएको char
प्रकारले 0 देखि 255 सम्मका मानहरू लिन्छ। char
प्रकारलाई int
प्रकारमा रूपान्तरण गर्दा, यो भिन्नतामा ध्यान दिनु आवश्यक छ। साइन गरिएको र साइन नगरिएको रूपान्तरणका उदाहरणहरू तल दिइएका छन्।
#include <stdio.h>
int main() {
unsigned char uChar = 200; // चिन्हरहित char प्रकार
int intValue = (int)uChar;
printf("चिन्हरहित char को मान %u लाई int प्रकारमा परिवर्तन गर्दा %d हुन्छ।\n", uChar, intValue);
return 0;
}
यो प्रोग्राममा, साइन नगरिएको char
प्रकारको 200 लाई int
प्रकारमा रूपान्तरण गरी, सोही 200 को रूपमा देखाइन्छ। साइन गरिएको अवस्थामा, साइनको ह्यान्डलिङ अनुसार फरक नतिजा आउँछ, त्यसैले परिस्थितिअनुसार उपाय आवश्यक हुन्छ।

3. int प्रकारबाट char प्रकारमा रूपान्तरण
int
प्रकारबाटchar
प्रकारमा रूपान्तरणले, उल्टो रूपमाint
प्रकारको मानलाई सानोchar
प्रकारमा कास्ट गर्ने अर्थ हुन्छ। तर,char
प्रकारको दायरा भन्दा बाहिरकोint
प्रकारको मानलाई रूपान्तरण गर्दा डेटा हराउन सक्छ, त्यसैले सावधान रहनु आवश्यक छ।
रूपान्तरण विधिहरू र सावधानिहरू
int
प्रकारको मानलाईchar
प्रकारमा रूपान्तरण गर्दा, दायरा बाहिरको मान रूपान्तरण भएमा अनपेक्षित परिणाम प्राप्त हुन सक्छ।
#include <stdio.h>
int main() {
int number = 300; // char को सीमा बाहिरको मान
char character = (char)number; // डेटा हानि हुन्छ
printf("पूर्णांक %d लाई char प्रकारमा परिवर्तन गर्दा अक्षर '%c' हुन्छ।\n", number, character);
return 0;
}
यो प्रोग्राममा, 300
लाई char
प्रकारमा रूपान्तरण गर्दा डेटा हराउँछ, र अनपेक्षित अक्षर देखिन सक्छ। char
प्रकारको दायरा प्रति ध्यान दिनु महत्वपूर्ण छ।
4. स्ट्रिङबाट संख्यामा रूपान्तरण
C भाषा मा, स्ट्रिङलाई संख्यामा रूपान्तरण गर्ने कार्य पनि बारम्बार गरिन्छ। उदाहरणका लागि, प्रयोगकर्ताबाट इनपुट गरिएको डेटा पूर्णांकमा रूपान्तरण गरी प्रयोग गर्ने कुरा प्रायः हुन्छ। यस अवस्थामा, atoi
वा strtol
जस्ता फलनहरू उपयोगी हुन्छन्।
atoi फलन द्वारा रूपान्तरण
atoi
फलनलाई प्रयोग गरेर, स्ट्रिङलाई सजिलै पूर्णांकमा रूपान्तरण गर्न सकिन्छ, तर त्रुटि ह्यान्डलिङमा सीमितता हुन्छ।
#include <stdio.h>
#include <stdlib.h>
int main() {
char str[] = "1234";
int number = atoi(str); // स्ट्रिङलाई int प्रकारमा रूपान्तरण
printf("स्ट्रिङ %s लाई पूर्णांकमा रूपान्तरण गर्दा %d हुन्छ।\n
", str, number);
return 0;
}
यो प्रोग्राममा, स्ट्रिङ"1234"
लाई पूर्णांक1234
मा रूपान्तरण गरी आउटपुट गरिन्छ, तर त्रुटि उत्पन्न भएमा त्यसलाई ह्यान्डल गर्न सकिँदैन।
strtol फलन द्वारा सुरक्षित रूपान्तरण
strtol
फलनले त्रुटि जाँच गर्दै स्ट्रिङलाई संख्यामा रूपान्तरण गर्ने कारण, यो अधिक सुरक्षित विधि हो।
#include <stdio.h>
#include <stdlib.h>
int main() {
char str[] = "1234";
char *endptr;
long int number = strtol(str, &endptr, 10); // सुरक्षित रूपमा स्ट्रिङलाई int मा परिवर्तन गर्नुहोस्
if (*endptr != '\0') {
printf("परिवर्तन असफल भयो।\n");
} else {
printf("स्ट्रिङ %s लाई पूर्णाङ्कमा परिवर्तन गर्दा %ld हुन्छ।\n", str, number);
}
return 0;
}
यो कोडमा, रूपान्तरण असफल भएमा त्रुटि सन्देश देखाउने प्रणाली लागू गरिएको छ। यसले सुरक्षित रूपमा संख्यालाई ह्यान्डल गर्न सम्भव बनाउँछ।
5. char प्रकार र int प्रकार प्रयोग गरेर लागू उदाहरणहरू
अन्त्यमा、char
प्रकार र int
प्रकारलाई संयोजन गरेर वास्तविक लागू उदाहरण हेर्नुहोस्।
char प्रकार र int प्रकारको मिश्रित गणना
तलको प्रोग्रामले char
प्रकार र int
प्रकारलाई मिश्रित गरेर गणना गर्दछ। अक्षर र संख्यालाई प्रयोग गरेर नयाँ अक्षर बनाउने उदाहरण हो।
#include <stdio.h>
int main() {
char ch = 'a';
int num = 3;
char result = ch + num; // 'a' को ASCII मानमा 3 थप्नुहोस्
printf("अक्षर %c मा %d थप्दा अक्षर '%c' हुन्छ।\n
", ch, num, result);
return 0;
}
यस प्रोग्राममा、'a'
को ASCII कोडमा 3 थपेर 'd'
उत्पन्न हुन्छ।char
प्रकार र int
प्रकारको मिश्रित अपरेशन सजिलै गर्न सकिने उदाहरण हो।