डौग लॉयड: तुम हो तो अगर संरचनाओं पर हमारे वीडियो देखा,
आप पहले से ही हम जानते हैं कि हमारे अपने डेटा प्रकार परिभाषित करने की क्षमता।
आप इस्तेमाल संरचनाओं है लेकिन, अगर आप जानते हैं कि कभी कभी उन डेटा प्रकार का उपयोग
वास्तव में एक छोटे हो सकता है बोझिल क्योंकि हम
संरचना कीवर्ड का उपयोग करने के लिए है हम them-- के साथ काम कर रहे हैं
संरचना कार या संरचना छात्र।
यही कारण है कि टाइप करने के लिए एक बहुत कुछ है हम तो बस करना चाहते हैं
एक संरचना की तरह कुछ सरल,।
हम हम चाहते हैं have-- करना चाहते हैं चीजों के साथ काम करने में सक्षम हो
एक छोटे से अधिक आशुलिपि तरह से, पूर्णांक या चार, कुछ एक बहुत पसंद है
टाइप करने के लिए और अधिक सुविधाजनक।
>> सौभाग्य से, वहाँ है एक तरह से, सी में यह करने के लिए
है जो typedef बुलाया कुछ के साथ एक तरह से आशुलिपि बनाने या फिर लिखा करने के लिए
डेटा प्रकार के लिए नाम।
आप डेटा को फिर से लिखना कर सकते हैं पहले से ही मौजूद है कि प्रकार के,
या आप अपने स्वयं के डेटा प्रकार लिख सकते हैं।
>> पहली बात तुम क्या आप है सामान्य तरीके से एक प्रकार परिभाषित करते हैं,
और फिर आप बस कुछ करने के लिए यह उर्फ typedef पुराने नाम नया नाम else--।
बहुत सीधा है, है ना?
इसलिए हम उदाहरण के लिए typedef सकता है, पहले से ही मौजूदा डेटा
बाइट के रूप में अहस्ताक्षरित चार के प्रकार।
और फिर, पर अब से हम है के बाद इस प्रकार फिर definition-- बनाया है,
आमतौर पर शीर्ष पर होने जा रहा है जो हमारे डॉट सी फाइलों की है, या एक डॉट एच फ़ाइल में
उधर, हम कर सकते हैं, बस हर जगह काटने का उपयोग
हम अहस्ताक्षरित चार का इस्तेमाल किया जाएगा।
यही कारण है कि टाइप करने के लिए एक बहुत कम है।
>> CS50 के पुस्तकालय में, हम है- करना हम स्ट्रिंग के रूप में चार स्टार typedef।
हम अनमना क्योंकि संकेत के दूर विचार।
और सच तो यह एक स्ट्रिंग सच है कि पहले character-- के लिए एक सूचक
पात्रों में से एक सरणी, यह सिर्फ इसलिए है क्योंकि
चारों ओर अपने सिर को पाने के लिए इतना भ्रमित that-- लेकिन हम क्या करते हैं कि वास्तव में।
और कोड की इस पंक्ति वास्तव में मौजूद CS50 डॉट एच typedef चार स्टार स्ट्रिंग में,
सिर्फ इतना है कि एक छोटे से कम करने के लिए बोझिल साथ सौदा करने के लिए।
पहले से ही आप शायद एक देखा है यहां मूल्य का एक छोटा सा,
लेकिन महान typedef हो जाता है संरचनाओं के साथ संयुक्त,
जैसा कि मैंने पहले के लिए alluded के रूप में।
संरचनाएं एक दो शब्द प्रकार का नाम है।
और इसलिए वे वास्तव में कष्टप्रद हो सकता है उस प्रकार के चर बनाने के लिए,
या [सुनाई] संरचना कुछ की, अपने लाइनों सिर्फ सच में लंबे, वास्तव में प्राप्त कर सकते हैं।
और तो आप आने के लिए typedef उपयोग कर सकते हैं एक बहुत छोटे से कुछ के साथ।
>> मैं के रूप में एक कार को परिभाषित तो, अगर मेरे पास है एक car-- संरचना कार की मेरी परिभाषा
और फिर सब, घुंघराले ब्रेस खोलने मेरी संरचना के क्षेत्र,
करीब घुंघराले गले लगा, अर्द्ध colon-- मैं अपने डेटा प्रकार परिभाषित करने के बाद,
मैं संरचना typedef कर सकते हैं कार अंडरस्कोर टी के रूप में कार।
और फिर मैं अब हर किया है कि, जब समय मैं अन्यथा का इस्तेमाल किया जाएगा संरचना
कार, ​​मैं सिर्फ कार अंडरस्कोर टी का उपयोग कर सकते हैं।
यही कारण है कि एक तरह से एक बहुत कम है इस संरचना के इस विचार को व्यक्त
मैं अभी बनाया।
>> वैकल्पिक रूप से, संरचनाओं की वजह तो आमतौर पर typedef में उपयोग किया जाता है,
आप वास्तव में परिभाषित कर सकते हैं एक-- वहाँ शुरू और अंत के बीच में टाइप करें।
तो typedef संरचना फिर से है आमतौर पर typedef, पुराने नाम, नया नाम,
नाम पहले से ही कर रहे हैं, जहां आपके द्वारा बनाया गया है कि प्रकार के।
लेकिन अगर आप वास्तव में एक संरचना को परिभाषित कर सकते हैं सही typedef के बीच में
बजाय परिभाषित करने के लिए होने की यह अलग है, और फिर
इसके बारे में एक typedef करते हैं।
और कहा कि अभी की तरह लग रही होगी है- typedef struct कार,
खुले घुंघराले गले लगा, अपने क्षेत्र के सभी परिभाषाएँ करीब घुंघराले गले लगा, कार टी।
तो पुराने नाम सब सामान में है लाल, तो आप सिर्फ संरचना को परिभाषित कर रहे हैं
और एक ही समय में यह नामकरण।
और फिर नए नाम कार अंडरस्कोर टी है।
और इसलिए हम उपयोग करना शुरू करता है, तो कोड में यह है, पहले मैं
कहा कि हो सकता, संरचना कार mycar सेमी कॉलन।
वैसे मुझे लगता है कि अब क्या करना नहीं है।
अब मैं typedef का उपयोग किया है कि, मैं बस कार अंडरस्कोर टी, mycar कह सकते हैं।
यही कारण है कि एक तरह से एक बहुत कम है इसे करते हैं, और वास्तव में, यह करने के लिए
एक बहुत अधिक होने जा रहा सुविधाजनक, विशेष रूप से
आप संरचनाओं का उपयोग करने के लिए शुरू के रूप में अपने कोड में एक बहुत अधिक।
>> मैं डौग लॉयड हूँ।
इस CS50 है।