स्पीकर 1: मैं करने के लिए करते हैं तो मुझे लगता है दुनिया या printf नमस्कार printf लिखना हैलो प्रतिशत काफी अक्सर संदर्भों में मैं एक बाहर प्रिंट करना चाहते हैं, जहां स्ट्रिंग, कभी कभी पूछ कि स्ट्रिंग के उपयोगकर्ता हिस्सा. हम बनाया वैसे, अगर यह अच्छा नहीं होगा कहा जाता है कि हमारे खुद के एक समारोह में, , जिसका उद्देश्य जीवन में छापा नाम का कहना है, हैलो अल्पविराम मुद्रित करने के लिए बस है इतना और इतनी स्वीकार करके तो और इतनी उस समारोह के लिए एक तर्क के रूप में? हम अपने स्वयं के एक समारोह में घोषणा कर सकते हैं अभी हम इस प्रकार के रूप में खरोंच में कर सकते हैं. दूसरे शब्दों में, मैं चाहता हूँ लगता है आपका नाम printf और तब उपयोगकर्ता पूछने तार के साथ अपने या अपने नाम के लिए एस GetString के बराबर होती है. और फिर मैं एक समारोह कॉल करना चाहते हैं कहा जाता छापा नाम अपने निवेश के रूप में एक एस गुजर रहा है. अब दुर्भाग्य से, कोई समारोह नहीं है छापा नाम सी में या में बुलाया CS50 पुस्तकालय. लेकिन कोई बात नहीं, क्योंकि हम यह अपने आप कर सकते हैं. हमारी खुद की एक समारोह की घोषणा करने के लिए और तब इसे लागू, हम बस कर सकते हैं इस फाइल में और घोषित कुछ कमरा इस प्रकार इस समारोह, शून्य - समारोह नहीं है कि वाचक वास्तव में कुछ वापस करने के लिए जा रहे हैं, यह होगा, भले ही एक पक्ष प्रभाव - नाम मुद्रित, और उसके बाद में निर्दिष्ट करते हैं छापा नाम उम्मीद है कि कोष्ठक एक प्रकार स्ट्रिंग का तर्क. और सामान्य में, हम में सोचता हूँ एक नाम के रूप में है कि के. और हमारे गले खुला और हमारे गले को बंद करें. और फिर printf अंदर नमस्कार अल्पविराम प्रतिशत की नई लाइन अल्पविराम नाम. दूसरे शब्दों में, भले ही इस समारोह कोड का केवल एक ही पंक्ति है, यह अब कुछ अधिक है प्रिंट करने के स्तर उद्देश्य एक ग्रीटिंग के साथ किसी का नाम. अब के अंदर मुख्य, मैं कर रहा हूँ कि नोटिस एक एस पारित करके प्रिंट नाम बुला. और इसलिए मैं करने के लिए अब लग रहे हैं एक पूरा कार्यक्रम. दूसरों से किया जा रहा है फर्क सिर्फ इतना है हम लिखा है कि न केवल करता है इस कार्यक्रम, यह भी एक मुख्य है है घोषणा और के कार्यान्वयन छापा नाम, अपना खुद का एक समारोह. चलो अब बनाने के साथ मेरे प्रोग्राम संकलन करते हैं समारोह शून्य, और डॉट के साथ इसे चलाने समारोह शून्य स्लेश. मेरे नाम के लिए संकेत मैं डेविड में टाइप करेंगे. और मैं वास्तव में बधाई दी हूँ "हैलो, डेविड." के साथ अब, यह मुझे बहुत जानबूझ पता चला है मुख्य ऊपर घोषित छापा नाम, जिससे अग्रिम में सी कह रही है कि वहाँ मौजूद प्रिंट नामक एक समारोह मैं इस्तेमाल कर सकते हैं कि इतना नाम है यह बाद में मुख्य में. अब, मैं बजाय पर छापा नाम रखा था मेरी फाइल के नीचे, के रूप में स्पष्ट रूप से मैं शायद इसलिए कि मुख्य अवशेष करना चाहिए कि मैं या पहली बात एक अन्य उपयोगकर्ता, मेरे कोड में देखता है यह मेरे कोड है कि पता चला है संकलन करने के लिए नहीं जा रहा. विशेष रूप से, मैं वापस करने के लिए जाना अगर मेरे टर्मिनल विंडो और रन समारोह शून्य अब, मैं पर चिल्लाया हूँ कि नोटिस. मैं अपने टर्मिनल विंडो में स्क्रॉल करें, मैं लाल रंग में यह पहली त्रुटि देखेंगे के निहित घोषणा समारोह छापा नाम. अब, इसका क्या मतलब है? खैर, मैं क्रियान्वित किया है, भले ही इस फाइल में नाम मुद्रित, मैं नहीं किया है मैं पहले इसे लागू मुख्य में इसका इस्तेमाल किया. अब, हम पुराने करने के लिए वापस जा सकते हैं संस्करण और डाल छापा नाम कार्यान्वयन ऊपर. लेकिन मैं बजाय सिर्फ सी एक संकेत दे सकते हैं आने के लिए एक समारोह है कि वहाँ. विशेष रूप से, मुख्य ऊपर मैं घोषणा कर सकते हैं जैसा कि मैंने पहले किया था बस के रूप में नाम मुद्रित, लेकिन इस प्रकार, एक अर्धविराम पर लाइन खत्म लागू करने का वादा किया, लेकिन अब तक नहीं वास्तव में समारोह को लागू छापा नाम कहा जाता है. मैं फिर से शीर्ष पर मुख्य हो सकता है मेरा मैं आशा व्यक्त की, और मैं वास्तव में यह कर सकते हैं फ़ाइल तल पर छापा नाम को लागू करने. अब मैं अपने टर्मिनल विंडो पर लौटने हैं और मेकअप के साथ समारोह शून्य recompile, यह compiles इस समय. और मैं डॉट स्लेश समारोह के साथ इसे चलाने अगर शून्य मेरा नाम प्रदान करने, मैं हूँ "डेविड, नमस्कार." के रूप में बधाई दी