विज्ञापन

कार्यक्रम सीखना एक संचयी अनुभव है। अपनी चुनी हुई भाषा के वाक्य-विन्यास को सीखने के साथ-साथ, आपको उन सामान्य सिद्धांतों को भी सीखना चाहिए जिनका उपयोग सभी प्रोग्रामिंग भाषाएं करती हैं।

सी प्रोग्रामिंग को समझना और सीखना कठिन हो सकता है, लेकिन कुछ बुनियादी विचार हैं जो शुरू करते समय खुद को परिचित कराने के लायक हैं। सी के मूल सिद्धांतों को सीखने के लिए एक साधारण परियोजना एक शानदार तरीका है।

तो आपको कहां से शुरू करना चाहिए? नमस्ते कहकर!

1. नमस्ते दुनिया!

लगभग हर कोडिंग कोर्स का पहला भाग होता है नमस्ते दुनिया कार्यक्रम। इस पर विस्तार से जाने से कुछ ऐसे तरीकों पर प्रकाश डाला गया है जिनमें C अन्य भाषाओं से भिन्न है। आरंभ करने के लिए, खोलें a टेक्स्ट एडिटर या आईडीई पाठ संपादक बनाम। आईडीई: प्रोग्रामर के लिए कौन सा बेहतर है?एक उन्नत आईडीई और एक सरल टेक्स्ट एडिटर के बीच चयन करना कठिन हो सकता है। हम आपको यह निर्णय लेने में मदद करने के लिए कुछ अंतर्दृष्टि प्रदान करते हैं। अधिक पढ़ें अपनी पसंद का, और यह कोड दर्ज करें:

#शामिल /* यह सी में हैलो वर्ल्ड स्क्रिप्ट है */ मुख्य अंतर (शून्य) { प्रिंटफ ("हैलो, वर्ल्ड! \एन"); वापसी 0; }
instagram viewer

कोड का यह छोटा टुकड़ा प्रोग्राम को समाप्त करने से पहले कंसोल पर प्रिंट करता है। इसे कहीं याद रखने के लिए आसान के रूप में सहेजें नमस्ते सी. अब आपको अपनी फाइल को कंपाइल करने और बनाने की जरूरत है।

इसे चलाना

आमतौर पर, आपको C स्क्रिप्ट चलाने के लिए अपने कंप्यूटर पर कोई अतिरिक्त सॉफ़्टवेयर स्थापित करने की आवश्यकता नहीं होगी। एक टर्मिनल विंडो खोलें (या यदि आप विंडोज चला रहे हैं तो कमांड प्रॉम्प्ट) और उस निर्देशिका पर नेविगेट करें जिसमें आपने अपनी स्क्रिप्ट को सहेजा है।

जिस तरह से आप अपनी फ़ाइल को संकलित और चलाते हैं वह सिस्टम से सिस्टम में भिन्न होता है:

  • विंडोज उपयोगकर्ता: टाइप करके अपनी फ़ाइल को निष्पादन योग्य बनाएं सीएल hello.c और एंटर दबा रहा है। यह उसी फ़ोल्डर में hello.exe बनाएगा, जिसे आप टाइप करके चला सकते हैं नमस्ते.
  • Linux और macOS उपयोगकर्ता: प्रकार gcc -o hello.c और इसे निष्पादन योग्य बनाने के लिए एंटर दबाएं, और इसे टाइप करके चलाएं ।/नमस्ते.

आप जिस भी विधि का उपयोग करते हैं, अपनी स्क्रिप्ट चलाना आपको यह दिखाना चाहिए:

हैलो वर्ल्ड के परिणाम दिखाने वाला आउटपुट! सी. में स्केच

अगर यह विंडोज़ पर काम नहीं करता है, तो सुनिश्चित करें कि आप इसे चलाते हैं व्यवस्थापक मोड में कमांड प्रॉम्प्ट. MacOS के लिए, आपको ऐप स्टोर से Xcode इंस्टॉल करना पड़ सकता है और StackOverflow से इन चरणों का पालन करें.

अब, यह देखने के लिए कि यह कैसे काम करता है, प्रोग्राम लाइन दर लाइन देखें, और इसे सुधारें!

हुड के तहत: सी भाषा को समझना

प्रीप्रोसेसर

आपके द्वारा अभी बनाई गई स्क्रिप्ट लाइब्रेरी को शामिल करने के साथ शुरू होती है।

#शामिल 

लिपि की पहली पंक्ति को कहा जाता है a पूर्वप्रक्रमक. यह बाकी स्क्रिप्ट के संकलित होने से पहले किया जाता है। इस मामले में, यह स्क्रिप्ट का उपयोग करने के लिए कहता है stdio.h पुस्तकालय। विभिन्न कार्यों के लिए बड़ी संख्या में प्रीप्रोसेसर उपलब्ध हैं।

Stdio.h प्रोग्राम के उपयोगकर्ता से इनपुट प्राप्त करने और उन्हें वापस जानकारी आउटपुट करने का ध्यान रखता है।

/* यह सी में हैलो वर्ल्ड स्क्रिप्ट है */

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

मुख्य कार्य

मुख्य अंतर (शून्य)

प्रत्येक सी कार्यक्रम में एक होना चाहिए मुख्य समारोह। मुख्य एक फ़ंक्शन है जो एक पूर्णांक देता है, जिसे द्वारा दर्शाया जाता है NS. मुख्य के बाद कोष्ठक इसके तर्कों के लिए हैं, हालांकि इस मामले में, यह कोई नहीं लेता है, इसलिए आप इसका उपयोग करते हैं शून्य खोजशब्द।

आप दो घुंघराले ब्रेसिज़ के बीच किए जाने वाले कोड को लिखते हैं।

{ प्रिंटफ ("हैलो, वर्ल्ड! \एन"); वापसी 0; }

फ़ंक्शन के अंदर, आप कॉल करते हैं प्रिंटफ () समारोह। बिलकुल इसके जैसा मुख्य(), प्रिंटफ एक फ़ंक्शन है। अंतर यह है कि, प्रिंटफ में एक फ़ंक्शन है स्टूडियो पुस्तकालय जिसे आपने शुरुआत में शामिल किया था।

Printf कोष्ठक में, उद्धरण चिह्नों के बीच, कंसोल पर कुछ भी प्रिंट करता है। NS \एन एक एस्केप सीक्वेंस है जिसे न्यूलाइन कहा जाता है, जो कंपाइलर को जारी रखने से पहले कंसोल में अगली लाइन पर जाने के लिए कहता है।

ध्यान दें कि ये पंक्तियाँ समाप्त होती हैं अर्धविराम, जो संकलक एक कार्य को अगले से विभाजित करने के लिए उपयोग करता है। इन अर्धविरामों पर पूरा ध्यान दें—उनका गायब होना चीजों के ठीक न होने का नंबर एक कारण है!

अंत में, फ़ंक्शन प्रोग्राम को समाप्त करते हुए, संख्या 0 के साथ वापस आता है। NS मुख्य() फ़ंक्शन को हमेशा एक पूर्णांक लौटाना चाहिए, और वापसी = 0; कंप्यूटर को संकेत देता है कि प्रक्रिया सफल रही।

इस स्क्रिप्ट के प्रत्येक चरण को समझना सी सिंटैक्स और भाषा कैसे काम करती है, दोनों को सीखने में एक अच्छी शुरुआत है।

2. अपना खुद का सी फंक्शन बनाना

आप सी में अपने स्वयं के कस्टम फ़ंक्शन बना सकते हैं। हैलो वर्ल्ड को मुख्य फ़ंक्शन में प्रिंट करने के बजाय, इसे आपके लिए करने के लिए एक नया फ़ंक्शन बनाएं।

शून्य Print_for_me () { प्रिंटफ ("हैलो, वर्ल्ड! \एन"); }

आइए इसे तोड़ दें।

शून्य एक कीवर्ड है जिसका अर्थ है कि निम्नलिखित फ़ंक्शन कुछ भी वापस नहीं करेगा।

Print_for_me () फ़ंक्शन का नाम है, और खाली कोष्ठक दिखाते हैं कि इसे काम करने के लिए तर्कों की आवश्यकता नहीं है। किसी फ़ंक्शन को काम करने के लिए पास करने के लिए एक तर्क जानकारी का कोई भी टुकड़ा है - बाद में आप आउटपुट को बदलने के लिए अपना खुद का तर्क जोड़ देंगे! ध्यान दें: यह मुख्य () फ़ंक्शन के समान नहीं है जिसके ऊपर शून्य का उपयोग किया गया था। वह फ़ंक्शन तर्क नहीं ले सकता, जबकि यह कर सकता है (लेकिन इस मामले में, ऐसा नहीं करना है)।

कोड ब्लॉक आपको परिचित होना चाहिए - यह मूल मुख्य फ़ंक्शन से सिर्फ प्रिंट स्टेटमेंट है।

अब, आप इस फ़ंक्शन को अपने मुख्य फ़ंक्शन से कॉल कर सकते हैं।

मुख्य अंतर (शून्य) {प्रिंट_फॉर_मी (); Print_for_me (); वापसी 0; }

आप यहां अपने स्वयं के फ़ंक्शन का उपयोग करने का लाभ देख सकते हैं। टाइप करने के बजाय प्रिंटफ ("हैलो, वर्ल्ड! \एन") हर बार, आप फ़ंक्शन को दो बार कॉल कर सकते हैं।

अभी यह इतना महत्वपूर्ण नहीं लग सकता है, लेकिन अगर आपके print_for_me फ़ंक्शन में कोड की बहुत सारी लाइनें हैं, तो इसे इतनी आसानी से कॉल करने में सक्षम होना एक अच्छा समय बचाने वाला है!

हैलो वर्ल्ड कई फ़ंक्शन कॉल के माध्यम से दो बार आउटपुट करता है

यह प्रोग्रामिंग का एक मौलिक विचार है जो आपको अपनी पूरी शिक्षा के दौरान मिलेगा। कोड के एक ही बड़े हिस्से को बार-बार लिखने के बजाय, अपना खुद का फ़ंक्शन एक बार लिखें।

3. C. में फंक्शन प्रोटोटाइप का उपयोग करना

प्रोटोटाइप उन प्रमुख तरीकों में से एक है जो शुरुआती सी अन्य भाषाओं से अलग है। संक्षेप में, एक प्रोटोटाइप बाद में परिभाषित किसी फ़ंक्शन के पूर्वावलोकन जैसा होता है। यदि आप मुख्य फ़ंक्शन के बाद print_for_me () फ़ंक्शन लिखते हैं, तो संकलन करते समय आपको एक चेतावनी मिल सकती है:

बिना किसी प्रोटोटाइप के कोड दिखाने वाली समग्र छवि और सी कंपाइलर द्वारा दी गई चेतावनी

चेतावनी संदेश आपको बता रहा है कि संकलक घोषित होने से पहले print_for_me फ़ंक्शन में चला गया था, इसलिए यह सुनिश्चित नहीं हो सका कि प्रोग्राम चलने पर यह सही तरीके से काम करेगा।

कोड अभी भी काम करेगा, लेकिन एक प्रोटोटाइप का उपयोग करके चेतावनी को पूरी तरह से टाला जा सकता है।

#शामिल शून्य print_for_me (); मुख्य अंतर (शून्य) {प्रिंट_फॉर_मी (); Print_for_me (); वापसी 0; } शून्य print_for_me () { प्रिंटफ ("हैलो, वर्ल्ड! \एन"); }

पूरे प्रोग्राम को देखकर आप देख सकते हैं कि प्रोग्राम की शुरुआत में Print_for_me () का प्रोटोटाइप मौजूद है, लेकिन इसमें कुछ भी नहीं है। प्रोटोटाइप फ़ंक्शन कंपाइलर को दिखाता है कि फ़ंक्शन को कैसा दिखना चाहिए, और इसके लिए तर्कों की आवश्यकता है या नहीं।

इसका मतलब यह है कि जब आप इसे मुख्य फ़ंक्शन में कॉल करते हैं, तो कंपाइलर जानता है कि इसे सही तरीके से बुलाया जा रहा है और यदि आवश्यक हो तो चेतावनी या त्रुटि फेंक सकता है। यह कुछ ऐसा हो सकता है जो अब अजीब लगता है, लेकिन अभी उनके बारे में जानने से भविष्य में मदद मिलेगी।

हैलो वर्ल्ड कई फ़ंक्शन कॉल के माध्यम से दो बार आउटपुट करता है

यह कार्यक्रम अभी भी एक प्रोटोटाइप के बिना काम करता है, लेकिन वे उपयोग करने के लिए अच्छे अभ्यास हैं। आउटपुट अभी भी वही दिखता है, इसे और अधिक व्यक्तिगत बनाने के लिए इसे बदलने देता है!

4. सी कार्यों के लिए तर्क पारित करना

स्क्रिप्ट बदलना

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

इसके बजाय, वे एकल वर्णों की एक सरणी हैं। एक सरणी के लिए प्रतीक है [] और कीवर्ड है चारो. अपनी स्क्रिप्ट की शुरुआत में अपने प्रोटोटाइप फ़ंक्शन को अपडेट करके प्रारंभ करें:

#शामिल  शून्य print_for_me (चार नाम []); 

अब, संकलक को पता चल जाएगा कि बाद में स्क्रिप्ट में फ़ंक्शन वर्णों की एक सरणी लेता है जिसे कहा जाता है नाम. अब तक, यह चरित्र मौजूद नहीं है। इसे बनाने के लिए अपने मुख्य फ़ंक्शन को अपडेट करें, और उपयोगकर्ता इनपुट को संग्रहीत करने के लिए इसका उपयोग करें:

मुख्य अंतर (शून्य) {चार नाम [20]; प्रिंटफ ("नाम दर्ज करें:"); स्कैनफ ("% s", नाम); Print_for_me (नाम); print_for_me ("हर कोई!"); वापसी 0; }

मुख्य में पहली पंक्ति नाम नामक 20 संभावित रिक्त स्थान के साथ एक वर्ण सरणी बनाती है। इसके बाद, उपयोगकर्ता को प्रिंटफ का उपयोग करके अपना नाम दर्ज करने के लिए कहा जाता है। अगली पंक्ति एक नए फ़ंक्शन का उपयोग करती है जिसे कहा जाता है स्कैनफ जो अगला शब्द उपयोगकर्ता प्रकार लेता है।

NS "%एस" फ़ंक्शन को बताता है कि उसे डेटा को एक स्ट्रिंग के रूप में संग्रहीत करना चाहिए, और इसे कॉल करना चाहिए नाम.

फ़ंक्शन को संशोधित करना

अब जब आप print_for_me को कॉल करते हैं, तो आप शामिल कर सकते हैं नाम कोष्ठकों में। अगली पंक्ति में, आप देखेंगे कि जब तक वे उद्धरण चिह्नों के बीच हैं, तब तक आप अन्य वर्णों को भी पास कर सकते हैं। दोनों बार, जो कोष्ठक में है वह print_for_me फ़ंक्शन में पास हो जाता है।

संशोधित करें कि अब आप जो नई जानकारी दे रहे हैं उसका उपयोग करने के लिए:

शून्य print_for_me (चार नाम []) {प्रिंटफ ("हैलो,"); डालता है (नाम); }

यहां आप देख सकते हैं कि कोष्ठकों को स्क्रिप्ट की शुरुआत में प्रोटोटाइप की तरह ही अपडेट किया गया है। अंदर, आप अभी भी प्रिंटफ का उपयोग करके हैलो प्रिंट करते हैं। यहाँ एक नया कार्य है डालता है. यह प्रिंटफ का अधिक उन्नत संस्करण है।

ब्रैकेट में रखी गई कोई भी चीज़ कंसोल पर प्रिंट हो जाएगी, और एक नई लाइन (the .) \एन आपने पहले इस्तेमाल किया था) अपने आप जुड़ जाता है।

अपने कोड को उसी तरह सेव और कंपाइल करें जैसे आपने पहले किया था—ध्यान दें कि अगर आप अपने पुराने प्रोग्राम को ओवरराइट नहीं करना चाहते हैं तो आप प्रोग्राम को कुछ अलग नाम दे सकते हैं। मैंने अपना नाम हेलो 2:

C. में समाप्त कार्यक्रम

जैसा कि आपको देखना चाहिए, प्रोग्राम इनपुट लेता है और फ़ंक्शन में इसका उपयोग करता है, "हर कोई!" का प्रीसेट ग्रीटिंग भेजने से पहले। फिर से एक ही फंक्शन में दो अलग-अलग आउटपुट दे रहे हैं।

सी प्रोग्रामिंग के एबीसी

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

दूसरों को लगता है कि सी ++ सीखना एक बेहतर विचार है, क्योंकि यह अपने निचले सिस्टम नियंत्रण को बनाए रखते हुए सी पर बनाता है। (विचार करने के लिए जंग भी है-यह एक है रोमांचक प्रोग्रामिंग भाषा यह वाक्य रचनात्मक रूप से सी ++ के समान है।)

एक बात पक्की है: पायथन जैसी भाषाएँ बहुत अधिक शुरुआती अनुकूल हैं। एक पुरानी भाषा के लिए, C अभी भी हर जगह प्रयोग किया जाता है, लेकिन पायथन भविष्य की भाषा हो सकती है 6 कारण क्यों पायथन भविष्य की प्रोग्रामिंग भाषा हैअपने प्रोग्रामिंग कौशल सीखना या विस्तार करना चाहते हैं? यही कारण है कि इस वर्ष सीखने के लिए पायथन सबसे अच्छी प्रोग्रामिंग भाषा है। अधिक पढ़ें !

इयान बकले बर्लिन, जर्मनी में रहने वाले एक स्वतंत्र पत्रकार, संगीतकार, कलाकार और वीडियो निर्माता हैं। जब वह लिख नहीं रहा होता है या मंच पर नहीं होता है, तो वह पागल वैज्ञानिक बनने की उम्मीद में DIY इलेक्ट्रॉनिक्स या कोड के साथ छेड़छाड़ कर रहा होता है।