किसी भी प्रोग्रामिंग भाषा को सीखने के लिए आपको इसकी बेसिक भाषा C की
जानकारी होना आवश्यक है, क्योकि अगर आपको C की जानकारी
हो जाती है तो आप बाकि की सभी लैंग्वेज जैसे – C++, JAVA, Python इत्यादि को आसानी
से सीख सकते है, तो आज की पोस्ट में हम आपको C लैंग्वेज की विशेषताएं तथा इसके
उपयोग आदि के बारे में जानकारी देने वाले है.
Table of Contents
ToggleC Language क्या है
और इसे किसने Develop किया?
C Language एक
सामान्य-उद्देश्य, प्रक्रियात्मक कंप्यूटर प्रोग्रामिंग भाषा है
जिसे मूल रूप से 1970 के दशक की शुरुआत में डेनिस रिची द्वारा AT &
T Bells Labs में विकसित किया गया
था। इसमें एक ऑपरेटिंग सिस्टम को प्रोग्राम करने के
लिए आवश्यक उच्च-स्तरीय कार्यक्षमता और विस्तृत सुविधाएँ दोनों थीं। 1980 के दशक के दौरान, C प्रोग्रामिंग
ने मेनफ्रेम, माइक्रो कंप्यूटर और मिनी कंप्यूटर बनाने के लिए
लोकप्रियता हासिल की और यह सबसे व्यापक रूप से उपयोग की जाने वाली प्रोग्रामिंग
भाषाओं में से एक बन गई है।
जावा , पायथन , जावास्क्रिप्ट और पीएचपी जैसी कई नई भाषाओं के उद्भव के बावजूद , सी की लोकप्रियता में कोई बाधा नहीं है। C भाषा के उपयोग के
कुछ उदाहरण हैं- ऑपरेटिंग सिस्टम (UNIX ऑपरेटिंग सिस्टम और
सभी UNIX एप्लिकेशन), लैंग्वेज कंपाइलर (C कंपाइलर), असेंबलर, टेक्स्ट एडिटर, प्रिंट
स्पूलर, नेटवर्क ड्राइवर, मॉडर्न
प्रोग्राम, डेटाबेस, लैंग्वेज इंटरप्रेटर
और यूटिलिटीज आदि.
सी भाषा की विशेषताएं (Features of C Langauge)
एक प्रोग्रामिंग भाषा की मुख्य विशेषताएं इसकी क्षमता और विशिष्टता का
वर्णन करती हैं और यह बताती हैं कि वेबसाइट या सॉफ्टवेयर विकसित करने में यह कितना
फायदेमंद हो सकता है। सी भाषा की कुछ महत्वपूर्ण विशेषताएं नीचे सूचीबद्ध
हैं:-
1. सरल और कुशल भाषा (Simple and Efficient Language)
C Language को लागू करने
की मूल वाक्य रचना शैली बहुत ही सरल और सीखने में आसान है। यह भाषा को आसानी से समझने योग्य बनाता है और एक
प्रोग्रामर को नया एप्लिकेशन बनाने या फिर से डिज़ाइन करने में सक्षम बनाता है। इस विशेषता के कारण स्कूली छात्रों को
प्रोग्रामिंग पेश करने के लिए आमतौर पर C का उपयोग एक
परिचयात्मक भाषा के रूप में किया जाता है।
2. तेज स्पीड (High Speed)
यह एक सर्वविदित तथ्य है कि स्टेटिकली टाइप की गई प्रोग्रामिंग
लैंग्वेज डायनेमिक की तुलना में तेज होती हैं। सी एक
स्थिर रूप से टाइप की गई प्रोग्रामिंग भाषा है, जो इसे अन्य गतिशील
भाषाओं पर बढ़त देती है। इसके अलावा, जावा और पायथन के
विपरीत, जो दुभाषिया-आधारित हैं, C एक कंपाइलर-आधारित प्रोग्राम है। यह कोड के संकलन और निष्पादन को तेज करता है।
3. सुवाह्यता (Portability)
सी भाषा की एक अन्य विशेषता सुवाह्यता है। सीधे शब्दों में कहें तो, सी प्रोग्राम मशीन-स्वतंत्र हैं जिसका अर्थ है कि
आप ‘सी’ में बनाए गए कोड के अंश को विभिन्न मशीनों पर बिना किसी मशीन-विशिष्ट
परिवर्तनों के चला सकते हैं। इसलिए, यह आवश्यकता के आधार पर कई प्रणालियों पर एकल कोड
का उपयोग करने की कार्यक्षमता प्रदान करता है।
4. परिवर्तन (Editing)
आप सी प्रोग्राम को आसानी से (और जल्दी से) बढ़ा सकते हैं। इसका अर्थ यह है कि यदि कोई कोड पहले से ही लिखा
हुआ है, तो आप उसमें कुछ परिवर्तनों के साथ नई सुविधाएँ
जोड़ सकते हैं। मूल रूप से, यह मौजूदा सी
प्रोग्राम में नई सुविधाओं,
कार्यक्षमताओं और संचालन को जोड़ने की अनुमति
देता है।
5. फंक्शन रिच लाइब्रेरी
सी कई अंतर्निहित कार्यों के साथ लाइब्रेरी के एक व्यापक सेट के साथ
आता है जो एक प्रोग्रामर के जीवन को आसान बनाता है। यहां तक
कि एक नौसिखिया भी इन अंतर्निहित कार्यों का उपयोग करके आसानी से कोड कर सकता
है। आप अपने उपयोगकर्ता-परिभाषित फ़ंक्शन भी बना सकते
हैं और उन्हें C लाइब्रेरी में जोड़ सकते हैं। कार्यों और संचालन के इतने विशाल दायरे की
उपलब्धता एक प्रोग्रामर को कार्यक्रमों और अनुप्रयोगों की एक विस्तृत श्रृंखला
बनाने की अनुमति देती है।
6. गतिशील स्मृति प्रबंधन (Dynamic Memory Management)
सी भाषा की सबसे महत्वपूर्ण विशेषताओं में से एक गतिशील स्मृति
प्रबंधन के लिए इसका समर्थन है। इसका मतलब है कि आप
रनटाइम के दौरान सी में डेटा संरचना के आकार का उपयोग और प्रबंधन कर सकते हैं।
7. संरचित भाषा के साथ प्रतिरूपकता (Modularity with Structured Language)
सी एक सामान्य प्रयोजन वाली संरचित भाषा है। सी भाषा की यह विशेषता आपको कार्यों का उपयोग
करके विभिन्न भागों में एक कोड को तोड़ने की अनुमति देती है जिसे भविष्य में उपयोग
और पुन: प्रयोज्य के लिए पुस्तकालयों के रूप में संग्रहीत किया जा सकता है।
कार्यों का उपयोग करके कोड की संरचना करना दृश्य अपील को बढ़ाता है और कार्यक्रम
को अधिक व्यवस्थित और कम प्रवण बनाता है। त्रुटियों के लिए।
8. मिड-लेवल प्रोग्रामिंग लैंग्वेज (Mid-level Programming Language)
हालाँकि C को शुरू में केवल निम्न-स्तरीय प्रोग्रामिंग करने
के लिए विकसित किया गया था,
अब यह उच्च-स्तरीय प्रोग्रामिंग की सुविधाओं और
कार्यात्मकताओं का भी समर्थन करता है, जिससे यह एक
मध्य-स्तरीय भाषा बन जाती है। और एक मध्य-स्तरीय
प्रोग्रामिंग भाषा के रूप में, यह दोनों दुनिया के
सर्वश्रेष्ठ प्रदान करती है। उदाहरण के लिए, सी हार्डवेयर के सीधे हेरफेर की अनुमति देता है, जो उच्च स्तरीय प्रोग्रामिंग भाषाएं पेश नहीं
करती हैं।
9. संकेत (Signal)
सी में पॉइंटर्स के उपयोग से, आप सीधे मेमोरी के
साथ इंटरैक्ट कर सकते हैं। जैसा कि नाम से पता चलता है, पॉइंटर्स मेमोरी में एक विशिष्ट स्थान की ओर
इशारा करते हैं और इसके साथ सीधे इंटरैक्ट करते हैं। सी पॉइंटर्स का
उपयोग करके , आप मेमोरी, एरेज़, फ़ंक्शंस और स्ट्रक्चर के साथ काम कर सकते हैं।
10. प्रत्यावर्तन (Repatriation)
सी भाषा रिकर्सन की सुविधा प्रदान करती है। रिकर्सन का अर्थ है कि आप एक ऐसा फ़ंक्शन बना
सकते हैं जो लूप की तरह ही दी गई स्थिति के सत्य होने तक कई बार स्वयं को कॉल कर
सकता है। सी प्रोग्रामिंग में रिकर्सन कोड पुन: प्रयोज्य
और बैकट्रैकिंग की कार्यक्षमता प्रदान करता है।
Use of JavaScript and difference between Java and JavaScript in Hindi – New!
Difference between Core Java and Advance Java in Hindi – New!
सी लैंग्वेज के फायदे और नुकसान
सी लैंग्वेज के क्या फायदे हैं? (Benifits of C Languge)
सी दुनिया भर में एक बहुत लोकप्रिय भाषा है और एक प्रोग्रामर के लिए
अपने करियर की शुरुआत में सीखने के लिए आदर्श है। सीखने
के लिए बहुत कम शब्दावली है, वाक्य रचना सरल है, और भाषा की मॉड्यूलर संरचना सीखना आसान है। C लैंग्वेज के फायदे निम्नलिखित है :-
1. C लैंग्वेज को समझना आसान है (Easy to Understand)
लोगों द्वारा अन्य प्रोग्रामिंग भाषाओं
की तुलना में C को चुनने का एक
मुख्य कारण इसकी सादगी है। सी एक
अत्यधिक पोर्टेबल भाषा है क्योंकि इसमें कोड किए गए प्रोग्राम कहीं अधिक तेज़ और
कुशल हैं। यह किसी भी अन्य प्रोग्रामिंग भाषा की तुलना में C को सीखना आसान बनाता है।
आप सी के पीछे की अवधारणाओं को आसानी से समझ सकते
हैं क्योंकि इसमें कई कीवर्ड या प्रतीक शामिल नहीं हैं। इसके अलावा, सी प्रोग्रामिंग के
साथ आरंभ करने के लिए आपको कंप्यूटर विज्ञान में विशेषज्ञ होने की आवश्यकता नहीं
है।
आपको बस कुछ ट्यूटोरियल्स को ऑनलाइन पढ़ना है और
अपने कोड लिखना शुरू करना है। इसके अलावा, सी लैंग्वेज में सिस्टम-जनरेटेड फंक्शन और
यूजर-डिफाइंड फंक्शन हैं।
2. कई Library Function की उपस्थिति
सी लैंग्वेज बहुत सारे बिल्ट-इन फंक्शन प्रदान करती है जिसमें
सिस्टम-जनरेटेड फंक्शन और यूजर-डिफ़ाइंड फंक्शन शामिल होते हैं। प्रोग्राम को विकसित करने के लिए कई सामान्य
कार्यों का उपयोग किया जा सकता है, जबकि प्रोग्रामर
अपनी आवश्यकताओं के अनुसार एक फ़ंक्शन भी बना सकता है, जिसे सी कंपाइलर में उपयोगकर्ता द्वारा
उत्पन्न/परिभाषित फ़ंक्शन कहा जाता है।
3. लिखने में आसान (Easy to Write)
यदि आप कोडिंग से परिचित नहीं हैं, तो संरचित भाषा C का उपयोग करने से आपको बेहतर कौशल विकसित करने
में मदद मिलेगी। C के साथ, आप स्वयं को अन्य
प्रोग्रामिंग भाषाओं द्वारा बनाए गए समाधानों की तुलना में अधिक कुशल और प्रभावी
समाधान तैयार करते हुए पाएंगे।
4. कम लागत (Less cost)
इसकी सरल संरचना के कारण, आप यह पता लगाने में
बहुत अधिक समय नहीं लगाएंगे कि आपने अपना प्रोग्राम विकसित करते समय कोई गलती की
है या नहीं। और यदि आप कार्य को पूरा करने के लिए किसी और को
काम पर रखने का निर्णय लेते हैं, तो वे आपसे कम पैसे लेगा
।
5. पोर्टेबल (Portable)
चूंकि C
ASCII वर्णों पर आधारित है, यह विंडोज, लिनक्स, मैक ओएस एक्स, एंड्रॉइड, आईओएस आदि सहित विभिन्न प्लेटफार्मों पर अच्छी
तरह से काम करता है। इसलिए,
आप अपने सी प्रोग्राम को कहीं भी चला सकते हैं, चाहे आप कहीं भी रहते हों।
7. आसान डिबगिंग (Easy Debugging)
चूँकि C को लूप, कंडीशनल, वेरिएबल, फ़ंक्शंस, एरेज़, पॉइंटर्स आदि जैसे
जटिल स्टेटमेंट की आवश्यकता नहीं होती है, आप अपने कोड को
आसानी से डिबग कर सकते हैं।
8. संकलन की गति (Compilation Speed)
सी कंपाइलर मशीन कोड बहुत तेजी से तैयार करता है। कुछ ही सेकंड में कोड की एक हजार पंक्तियों को एक
साथ रखा जा सकता है। सी कंपाइलर तेजी से निष्पादन के लिए कोड को और
अधिक कुशल बनाता है।
9. एल्गोरिदम और डेटा
संरचनाओं का निष्पादन
सी में एल्गोरिदम और डेटा संरचनाओं के उपयोग ने कार्यक्रम की गणना को
बहुत तेज और सुचारू बना दिया है। इसके बाद, C भाषा को MATLAB जैसे
जटिल अनुमानों और कार्यों में नियोजित किया जा सकता है।
सी लैंग्वेज के नुकसान(Disadvantage of C Language)
1. वस्तु अभिविन्यास की कमी (Lack of Object Orientation)
सी एक बहुत विशाल और शक्तिशाली भाषा है और बस प्रक्रियात्मक प्रोग्रामिंग
दृष्टिकोण का पालन करती है। यह OOPs (inheritance, polymorphism,
encapsulation, abstraction, data hiding) की अवधारणा को अपना समर्थन नहीं देता है।
2. अक्षम स्मृति
प्रबंधन (Inefficient Memory Management)
सी लैंग्वेज में आपको किसी मेमोरी मैनेजमेंट तकनीक की आवश्यकता नहीं
होती है क्योंकि यह आपके लिए सभी आवंटित संसाधनों को स्वचालित रूप से प्रबंधित
करती है। लेकिन अगर आप गतिशील आवंटन का उपयोग करना चाहते
हैं तो आपको मॉलोक फ़ंक्शन द्वारा गतिशील रूप से आवंटित करना चाहिए। यदि आप इसे मैन्युअल रूप से करते हैं तो आपको
सेगमेंटेशन फॉल्ट एरर मिलेगा। इसलिए हमें स्मृति
प्रबंधन (Memory Management) तकनीकों के बारे में हमेशा
याद रखना चाहिए।
3. रन-टाइम चेकिंग (Run-Time Checking)
सी प्रोग्रामिंग भाषा में, कोड की प्रत्येक
पंक्ति के बाद त्रुटियों का पता नहीं लगाया जाता है। कंपाइलर केवल रन-टाइम के दौरान कोड में सभी
त्रुटियों को दिखाता है जो विशाल परियोजनाओं में कोड (डिबगिंग) की जांच को असाधारण
रूप से जटिल बनाता है।
साथ ही, कंपाइलर यह जांच नहीं करता है कि इसके उपयोग से
पहले एक चर घोषित किया गया था या नहीं। प्रोग्राम
लिखते समय प्रोग्रामर को इस नियम को याद रखना चाहिए।
4. नाम स्थान की
अवधारणा C में मौजूद नहीं है (The concept of namespace c. does not
exist in)
C namespace के विचार को पूरा नहीं करता है। विभिन्न सेटिंग्स में नामों के पुन: उपयोग की
अनुमति देने के लिए एक नेमस्पेस को कमांड की एक श्रृंखला के रूप में व्यवस्थित
किया जाता है। नेमस्पेस के बिना, हम समान
नाम के दो कारकों का उच्चारण नहीं कर सकते।
हालांकि, सी प्रोग्रामिंग इस सुविधा से रहित है, और इसके परिणामस्वरूप, आप सी में एक ही नाम के साथ एक चर को चिह्नित
नहीं कर सकते हैं।
5. एक्सेप्शन हैंडलिंग
का अभाव (Lack of Exception Handling)
कोड को संकलित करते समय, विभिन्न त्रुटियां
और बग हो सकते हैं।एक्सेप्शन हैंडलिंग आपको बग्स की पहचान करने और
उन्हें सुधारने की अनुमति देती है। हालाँकि, C इस महत्वपूर्ण विशेषता को नहीं दिखाता है।
6. कंस्ट्रक्टर और
डिस्ट्रक्टर की कमी (Constructor
and Destructor is Lacking)
C में कोई
ऑब्जेक्ट-ओरिएंटेड फंक्शनलिटी नहीं है, और इसलिए, इसमें कंस्ट्रक्टर और डिस्ट्रक्टर फीचर नहीं हैं।
C Language का उपयोग कहाँ
होता है? (Use of C Language)
सी भाषा का उपयोग सिस्टम अनुप्रयोगों को विकसित करने के लिए किया जाता
है जो विंडोज, यूनिक्स और लिनक्स जैसे ऑपरेटिंग सिस्टम के
प्रमुख हिस्से का निर्माण करते हैं। ऑपरेटिंग
सिस्टम, C कंपाइलर और सभी UNIX एप्लिकेशन
प्रोग्राम C भाषा में लिखे गए हैं। सी भाषा के उपयोग के कुछ उदाहरण नीचे दिए गए हैं।
- डेटाबेस सिस्टम
- ग्राफिक्स पैकेज
- वर्ड प्रोसेसर
- स्प्रेड शीट
- ऑपरेटिंग सिस्टम विकास
- कंपाइलर और असेंबलर
- नेटवर्क ड्राइवर
Use of JavaScript and difference between Java and JavaScript in Hindi – New!
Difference between Core Java and Advance Java in Hindi – New!
C और C++ के बीच समानताएं क्या हैं?
1. दोनों भाषाओं में समान वाक्य रचना है।
2. दोनों भाषाओं की कोड संरचना समान है।
3. दोनों भाषाओं का संकलन समान है।
वे एक ही मूल वाक्य रचना साझा करते हैं। C के लगभग सभी ऑपरेटर और कीवर्ड भी C++ में मौजूद हैं और वही काम करते हैं।
4. दोनों का बेसिक मेमोरी मॉडल हार्डवेयर के काफी करीब है।
5. स्टैक, हीप, फाइल-स्कोप और
स्टैटिक वेरिएबल्स की समान धारणाएं दोनों भाषाओं में मौजूद हैं।
C और C++ के बीच अंतर क्या हैं?( Differences Between C and C++)
1. C को डेनिस रिची
द्वारा 1969 और 1973 के बीच AT&T Bell Labs में
विकसित किया गया था। जबकि C++ को 1979 में Bjarne Stroustrup द्वारा विकसित किया गया था।
2. C बहुरूपता, एनकैप्सुलेशन और वंशानुक्रम का समर्थन नहीं करता
है जिसका अर्थ है कि C ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग का समर्थन नहीं
करता है। जबकि C++ बहुरूपता, एनकैप्सुलेशन और वंशानुक्रम का समर्थन करता है
क्योंकि यह एक वस्तु उन्मुख प्रोग्रामिंग भाषा है।
3. सी सी ++ का सबसेट
है जबकि C++, C का सुपरसेट है
4. सी में 32 कीवर्ड
हैं। C++ में 63 कीवर्ड हैं।
5. कोड के विकास के लिए, C प्रक्रियात्मक प्रोग्रामिंग का समर्थन करता है। C++ को हाइब्रिड भाषा के रूप में जाना जाता है
क्योंकि C++ प्रक्रियात्मक और वस्तु उन्मुख प्रोग्रामिंग
प्रतिमानों दोनों का समर्थन करता है।
7. सी एक फ़ंक्शन
संचालित भाषा है क्योंकि सी एक प्रक्रियात्मक प्रोग्रामिंग भाषा है, जबकि C++ एक ऑब्जेक्ट संचालित भाषा है क्योंकि यह एक
ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग है।
8. सी में फंक्शन और
ऑपरेटर ओवरलोडिंग समर्थित नहीं है, जबकि फ़ंक्शन और ऑपरेटर ओवरलोडिंग सी ++ द्वारा
समर्थित है।
9. सी एक फ़ंक्शन-संचालित
भाषा है, जबकि C++ एक वस्तु-संचालित भाषा है
10. सी के अंदर नेमस्पेस
सुविधाएं मौजूद नहीं हैं, जबकि नेमस्पेस का उपयोग सी ++ द्वारा किया जाता हैं।
11. C द्वारा
उपयोग की जाने वाली हैडर फ़ाइल stdio.h है, जबकि C++ द्वारा उपयोग की जाने वाली हैडर फ़ाइल iostream.h है।
12. संदर्भ चर (Reference Variable) C द्वारा समर्थित नहीं हैं, जबकि संदर्भ चर C++ द्वारा समर्थित हैं।
13. वर्चुअल और फ्रेंड
फंक्शन C द्वारा समर्थित नहीं हैं, जबकि वर्चुअल और फ्रेंड
फंक्शन C++ द्वारा समर्थित हैं।
14. सी inheritance का समर्थन
नहीं करता है, जबकि सी ++ inheritance का समर्थन करता है।
15. सी में इनपुट/आउटपुट
के लिए Scanf( ) और Printf () फ़ंक्शन का उपयोग किया जाता है। जबकि Cin और cout का उपयोग सी ++ में इनपुट / आउटपुट के लिए किया
जाता है।
16. C संरचनाओं में access modifiers नहीं हैं, जबकि C++ स्ट्रक्चर्स में access modifiers होते हैं।
Use of JavaScript and difference between Java and JavaScript in Hindi – New!
Difference between Core Java and Advance Java in Hindi – New!
Use of JAVA Language and Difference between JAVA and CORE JAVA in Hindi
अंत में
आशा है की पूरी पोस्ट पढने के बाद आपको C Language क्या है? कैसे काम करती है और C का Use क्या है? आदि के बारे में जानकारी
मिल गई होगी.
Also Read
What is HTML Language and its uses in Hindi – New!
What is Python and Who Developed Python Language in Hindi – New!
कंप्यूटर का परिचय और विकास (Introduction and Development of Computers)
Download Computer Fundamentals Notes in Hindi Pdf
How to Create Facebook Page for Business Step by Step in Hindi