1 00:00:00,000 --> 00:00:00,980 2 00:00:00,980 --> 00:00:04,410 >> [संगीत खेल] 3 00:00:04,410 --> 00:00:11,147 4 00:00:11,147 --> 00:00:12,230 डेविड जे Malan: सब ठीक है. 5 00:00:12,230 --> 00:00:16,440 इस CS50 है, और इस 2 सप्ताह के अंत है. 6 00:00:16,440 --> 00:00:18,480 तो आज, हम जा रहे हैं हमारी नज़र जारी रखने के लिए 7 00:00:18,480 --> 00:00:21,150 हम चीजों का प्रतिनिधित्व कैसे hood-- दूर जाने के नीचे 8 00:00:21,150 --> 00:00:23,520 पूर्णांकों तरह की संख्या से और बिंदु मूल्यों चल 9 00:00:23,520 --> 00:00:26,810 और तार पर ध्यान केंद्रित है और अंत में अधिक दिलचस्प कार्यक्रम. 10 00:00:26,810 --> 00:00:30,140 लेकिन हम भी एक पर एक नज़र रखेंगे डोमेन विशिष्ट problems-- की जोड़ी 11 00:00:30,140 --> 00:00:33,620 पहले जो होगा की क्रिप्टोग्राफी शामिल हो, 12 00:00:33,620 --> 00:00:36,570 जानकारी पांव मार करने की कला, जिसमें आप यहाँ ऊपर देखें 13 00:00:36,570 --> 00:00:41,480 रेडियो अनाथ एनी की एक तस्वीर है पुराने से रहस्य कूटवाचक अंगूठी. 14 00:00:41,480 --> 00:00:46,490 >> यह वास्तव में बहुत आदिम रूप है और cryptopgraphy के बच्चों के अनुकूल फार्म 15 00:00:46,490 --> 00:00:50,590 इस अंगूठी को दो disks-- है जिससे एक अंदर और एक बाहर. 16 00:00:50,590 --> 00:00:54,740 और से, उन में से एक आप कर सकते हैं घूर्णन अनिवार्य रूप से एक तरह पत्र अप लाइन 17 00:00:54,740 --> 00:00:59,520 अन्य पत्र के साथ जेड के माध्यम से दूसरे शब्दों में ए के माध्यम से बी जैसे, 18 00:00:59,520 --> 00:01:03,730 आप सचमुच वर्णमाला घुमा सकते हैं, जिससे एक मानचित्रण से साथ आ रहा है 19 00:01:03,730 --> 00:01:07,820 पत्र को पत्र कि, यदि ऐसा है तो आप एक गुप्त संदेश भेजना चाहते थे 20 00:01:07,820 --> 00:01:11,820 एनी की तरह किसी के लिए, आप लिख सकते हैं फिर बारी बारी से और अपने संदेश नीचे 21 00:01:11,820 --> 00:01:15,370 पत्र, जिससे आप मतलब अगर आप के बजाय कहते हैं, "एक" कहने के लिए "बी" 22 00:01:15,370 --> 00:01:17,280 आपके कहने का मतलब "बी" आप के बजाय 'सी' का कहना है कि - 23 00:01:17,280 --> 00:01:20,240 या कुछ एक छोटे से अधिक चतुर that-- से और फिर, अंत में, 24 00:01:20,240 --> 00:01:24,630 इतने लंबे समय एनी इस विकोडक के रूप में अंगूठी, वह संदेश को डिकोड कर सकते हैं. 25 00:01:24,630 --> 00:01:28,540 अब, आप, वास्तव में, याद यह है कि हो सकता है एक बहुत प्रसिद्ध फिल्म में इस्तेमाल किया गया था कि 26 00:01:28,540 --> 00:01:31,140 दौरान विज्ञापन nauseum नाटकों क्रिसमस के मौसम. 27 00:01:31,140 --> 00:01:32,650 यहाँ एक नज़र रखना. 28 00:01:32,650 --> 00:01:35,294 29 00:01:35,294 --> 00:01:37,210 Ralphie पार्कर: "यह रहो सारांश में सभी को ज्ञात 30 00:01:37,210 --> 00:01:41,000 राल्फ पार्कर इसके द्वारा नियुक्त किया जाता है कि लिटिल अनाथ एनी गुप्त का सदस्य 31 00:01:41,000 --> 00:01:44,860 सर्किल और सभी के लिए हकदार है सम्मान और लाभ बहां होने वाली. " 32 00:01:44,860 --> 00:01:47,410 >> Ralphie पार्कर (narrating): लिटिल अनाथ एनी हस्ताक्षर किए. 33 00:01:47,410 --> 00:01:50,070 प्रतिहस्ताक्षरित, पियरे आंद्रे! 34 00:01:50,070 --> 00:01:51,490 स्याही में. 35 00:01:51,490 --> 00:01:55,494 सम्मान और लाभ, पहले से ही नौ वर्ष की आयु में. 36 00:01:55,494 --> 00:01:57,402 >> [संगीत खेल] 37 00:01:57,402 --> 00:02:00,470 >> [रेडियो बकवास] 38 00:02:00,470 --> 00:02:01,470 Ralphie पार्कर: आओ. 39 00:02:01,470 --> 00:02:02,344 इसके साथ पर मिलता है. 40 00:02:02,344 --> 00:02:06,029 मैं सभी कि जाज की जरूरत नहीं है तस्करों और समुद्री डाकुओं के बारे में. 41 00:02:06,029 --> 00:02:08,820 रेडियो उद्घोषक: कल सुनो समापन साहसिक कार्य के लिए रात 42 00:02:08,820 --> 00:02:11,060 काले समुद्री डाकू जहाज के. 43 00:02:11,060 --> 00:02:14,740 अब, यह समय एनी के लिए है आप सदस्यों के लिए गुप्त संदेश 44 00:02:14,740 --> 00:02:17,110 गुप्त सर्किल की. 45 00:02:17,110 --> 00:02:20,700 बच्चों, केवल सदस्यों याद रखें एनी की सीक्रेट सर्किल की 46 00:02:20,700 --> 00:02:23,270 एनी के गुप्त संदेश को डिकोड कर सकते हैं. 47 00:02:23,270 --> 00:02:27,270 >> याद रखें, एनी आप पर निर्भर करता है. 48 00:02:27,270 --> 00:02:30,060 बी -2 के लिए अपना पिन सेट. 49 00:02:30,060 --> 00:02:34,004 यहाँ है message-- 12, 11, 2-- 50 00:02:34,004 --> 00:02:36,503 Ralphie पार्कर (narrating): मैं मेरा पहला गुप्त बैठक में हूँ. 51 00:02:36,503 --> 00:02:40,041 रेडियो उद्घोषक: --25, 14, 11, 18, 16-- 52 00:02:40,041 --> 00:02:42,790 Ralphie पार्कर (narrating): ओह, पियरे महान आवाज आज रात में था. 53 00:02:42,790 --> 00:02:46,110 मुझे लगता है कि आज रात की बता सकता है संदेश वास्तव में महत्वपूर्ण था. 54 00:02:46,110 --> 00:02:47,930 >> रेडियो उद्घोषक: --3, 25. 55 00:02:47,930 --> 00:02:49,940 यही एनी खुद से एक संदेश है. 56 00:02:49,940 --> 00:02:52,182 किसी को बताना नहीं है, याद रखें. 57 00:02:52,182 --> 00:02:55,077 >> [पुताई] 58 00:02:55,077 --> 00:02:57,285 Ralphie पार्कर (narrating): नब्बे सेकंड बाद में, मैं हूँ 59 00:02:57,285 --> 00:03:00,090 में ही कमरे में घर जहां नौ की एक लड़का 60 00:03:00,090 --> 00:03:04,380 गोपनीयता और व्याख्या में बैठ सकता है. 61 00:03:04,380 --> 00:03:04,990 आह. 62 00:03:04,990 --> 00:03:05,680 "बी" 63 00:03:05,680 --> 00:03:06,524 >> [हंसते] 64 00:03:06,524 --> 00:03:08,684 >> Ralphie पार्कर (narrating): मैं अगले करने के लिए चला गया. 65 00:03:08,684 --> 00:03:09,610 "ई" 66 00:03:09,610 --> 00:03:11,641 पहला शब्द "हो." है 67 00:03:11,641 --> 00:03:12,140 हाँ! 68 00:03:12,140 --> 00:03:14,293 अब यह आसान आ रहा था. 69 00:03:14,293 --> 00:03:15,259 "यू" 70 00:03:15,259 --> 00:03:16,225 >> [हंसते] 71 00:03:16,225 --> 00:03:18,157 >> रैंडी पार्कर: अरे, Ralphie पर आ गए. 72 00:03:18,157 --> 00:03:19,606 मुझे जाना होगा! 73 00:03:19,606 --> 00:03:21,538 >> Ralphie पार्कर: मैं सही नीचे मा हो जाएगा. 74 00:03:21,538 --> 00:03:22,504 जी विशेषज्ञ. 75 00:03:22,504 --> 00:03:25,402 76 00:03:25,402 --> 00:03:31,220 "टी" "ओ" "भूलें करने के लिए. "क्या" के लिए सुनिश्चित हो "? 77 00:03:31,220 --> 00:03:33,981 लिटिल अनाथ एनी क्या था कहने की कोशिश? क्या "के लिए सुनिश्चित हो"? 78 00:03:33,981 --> 00:03:35,522 माँ: Ralphie, रैंडी जाने के लिए मिल गया है. 79 00:03:35,522 --> 00:03:36,735 आप बाहर आ करेंगे? 80 00:03:36,735 --> 00:03:38,190 >> Ralphie पार्कर: सब ठीक है, माँ! 81 00:03:38,190 --> 00:03:39,787 मैं सही बाहर हो जाएगा! 82 00:03:39,787 --> 00:03:41,995 Ralphie पार्कर (narrating): मैं करीब अब हो रही थी. 83 00:03:41,995 --> 00:03:43,370 तनाव भयानक था. 84 00:03:43,370 --> 00:03:44,794 यह क्या था? 85 00:03:44,794 --> 00:03:47,656 ग्रह के भाग्य अधर में लटका सकता है. 86 00:03:47,656 --> 00:03:50,518 >> माँ: Ralphie, रेंडी जाना है! 87 00:03:50,518 --> 00:03:53,635 >> Ralphie पार्कर: मैं ठीक हो जाएगा बाहर, जोर से रोने के लिए! 88 00:03:53,635 --> 00:03:55,343 Ralphie पार्कर (Narrating): लगभग वहाँ! 89 00:03:55,343 --> 00:03:56,520 मेरी उंगलियों उड़ गया! 90 00:03:56,520 --> 00:03:58,500 मेरा मन एक इस्पात जाल था. 91 00:03:58,500 --> 00:03:59,850 हर रोमकूप स्फूर्त. 92 00:03:59,850 --> 00:04:01,806 यह लगभग स्पष्ट हो गया था! 93 00:04:01,806 --> 00:04:02,773 हाँ! 94 00:04:02,773 --> 00:04:03,273 हाँ! 95 00:04:03,273 --> 00:04:03,773 हाँ! 96 00:04:03,773 --> 00:04:04,740 हाँ! 97 00:04:04,740 --> 00:04:10,250 >> Ralphie पार्कर: "भूलें अपने Ovaltine पीने के लिए. " 98 00:04:10,250 --> 00:04:10,750 Ovaltine? 99 00:04:10,750 --> 00:04:14,864 100 00:04:14,864 --> 00:04:17,539 एक फालतू वाणिज्यिक? 101 00:04:17,539 --> 00:04:19,439 >> [संगीत खेल] 102 00:04:19,439 --> 00:04:21,724 >> Ralphie पार्कर: एक कुतिया का बेटा. 103 00:04:21,724 --> 00:04:23,460 >> [हंसते हुए] 104 00:04:23,460 --> 00:04:27,070 >> डेविड जे Malan: तो है कि तो क्या क्रिप्टोग्राफी में एक झलक 105 00:04:27,070 --> 00:04:29,880 this-- एक के लिए हो सकता है पुराने से पीते हैं. 106 00:04:29,880 --> 00:04:30,900 तो एक त्वरित घोषणा. 107 00:04:30,900 --> 00:04:33,410 आप इस के लिए स्वतंत्र हैं, तो शुक्रवार 1:15 पर और होता 108 00:04:33,410 --> 00:04:36,610 CS50 के लिए हमें शामिल करना दोपहर का भोजन, यहाँ इस यूआरएल के लिए सिर. 109 00:04:36,610 --> 00:04:38,080 पहले पहले सामान्य रूप में सेवा, आ. 110 00:04:38,080 --> 00:04:41,840 लेकिन समय के साथ, हम यह सुनिश्चित करें कि बनाती हूँ भाग लेने के लिए चाहते हैं, जो सबसे अधिक किसी को भी 111 00:04:41,840 --> 00:04:43,640 शेड्यूल के लिहाज से हो सकता है. 112 00:04:43,640 --> 00:04:45,170 >> तो तार. 113 00:04:45,170 --> 00:04:47,940 हम Zamyla-- जिसे है आप अब सबसे अधिक संभावना मिले हैं 114 00:04:47,940 --> 00:04:50,750 समस्या सेट में 1-- जिसका नाम इस प्रकार लिखा जाता है. 115 00:04:50,750 --> 00:04:53,570 और तुम उसके नाम टाइप लगता है है कि एक कंप्यूटर प्रोग्राम में 116 00:04:53,570 --> 00:04:55,710 getString तरह कुछ का उपयोग. 117 00:04:55,710 --> 00:04:57,890 पुनः प्राप्त करने के क्रम में उन कीस्ट्रोक्स, कैसे 118 00:04:57,890 --> 00:05:01,620 हम एक का प्रतिनिधित्व करने के बारे में जाना है स्ट्रिंग, एक शब्द, एक पैरा, 119 00:05:01,620 --> 00:05:03,960 या ये यहाँ की तरह कई पत्र? 120 00:05:03,960 --> 00:05:06,790 >> हम इस बारे में आखिरी बार बात की थी पूर्णांकों और समस्याओं 121 00:05:06,790 --> 00:05:09,960 कि पूर्णांक अतिप्रवाह के साथ उत्पन्न होती और बिंदु मूल्यों चल 122 00:05:09,960 --> 00:05:12,190 और समस्याओं कि परिशुद्धता के भीतर उत्पन्न होती हैं. 123 00:05:12,190 --> 00:05:16,080 तार के साथ, हम कम से कम थोड़ा और अधिक लचीलापन है 124 00:05:16,080 --> 00:05:17,970 strings-- क्योंकि बस असली world-- में 125 00:05:17,970 --> 00:05:19,790 एक सुंदर मनमाना लंबाई हो सकता है. 126 00:05:19,790 --> 00:05:21,055 बहुत कम, बहुत लंबा है. 127 00:05:21,055 --> 00:05:23,680 लेकिन फिर भी, हम करने जा रहे हैं लगता है कंप्यूटर कभी कभी यह कर सकते हैं कि 128 00:05:23,680 --> 00:05:27,200 स्मृति के बाहर और नहीं भी चलाते हैं एक बहुत बड़ा स्ट्रिंग की दुकान. 129 00:05:27,200 --> 00:05:30,840 >> लेकिन अब के लिए, की कल्पना करने के लिए शुरू करते हैं इन बक्सों में कुछ के रूप में एक स्ट्रिंग 130 00:05:30,840 --> 00:05:31,340 यहां. 131 00:05:31,340 --> 00:05:36,410 तो छह ऐसे बक्से, जिनमें से प्रत्येक एक चरित्र या प्रतिनिधित्व करता है "चार." 132 00:05:36,410 --> 00:05:40,646 C-H-A-r-- है - तो "चार" याद है कि सी में निर्मित में डेटा प्रकारों में से एक 133 00:05:40,646 --> 00:05:43,520 और क्या अच्छा है कि आप उपयोग कर सकते हैं उस तरह का एक बिल्डिंग ब्लॉक के रूप में, 134 00:05:43,520 --> 00:05:47,880 एक पहेली टुकड़ा, अगर तुम जाएगा, एक के लिए फार्म हम जारी रखेंगे कि डेटा की बड़ी प्रकार 135 00:05:47,880 --> 00:05:49,410 एक "स्ट्रिंग." कॉल करने के लिए 136 00:05:49,410 --> 00:05:53,650 >> अब, क्या सोच के बारे में उपयोगी है इस तरह से तार की तरह चीजों के बारे में? 137 00:05:53,650 --> 00:05:57,720 खैर, यह हम कर सकते हैं कि पता चला है वास्तव में इस संरचना का लाभ उठाने 138 00:05:57,720 --> 00:06:01,420 वास्तव में व्यक्तिगत अक्षर का उपयोग करने के लिए एक बहुत स्पष्ट तरीके से. 139 00:06:01,420 --> 00:06:04,099 मुझे आगे जाना है और बनाने के लिए जा रहा हूँ कहा जाता है एक फ़ाइल "stringzero.c," 140 00:06:04,099 --> 00:06:05,765 आप चाहें जो कुछ भी है, लेकिन आप यह कह सकते हैं. 141 00:06:05,765 --> 00:06:08,500 और हां की वेबसाइट पर है पहले से ही अग्रिम में इस उदाहरण, 142 00:06:08,500 --> 00:06:10,430 तो आप की जरूरत नहीं है सब कुछ बाहर लिखें. 143 00:06:10,430 --> 00:06:13,820 >> और मैं आगे जाने के लिए जा रहा हूँ और पहली int मुख्य शून्य करना. 144 00:06:13,820 --> 00:06:15,980 और कुछ ही दिनों के भीतर, हम अलग चिढ़ाने के लिए शुरू करेंगे 145 00:06:15,980 --> 00:06:19,070 यह कारण है कि क्या शून्य, यहाँ है मुख्य करने के लिए अगले है, और इसके आगे इंट. 146 00:06:19,070 --> 00:06:21,180 लेकिन अब के लिए, चलो जारी रखते हैं कॉपी करने के लिए कि पेस्ट. 147 00:06:21,180 --> 00:06:23,455 >> मैं नामक एक स्ट्रिंग की घोषणा करने जा रहा हूँ. 148 00:06:23,455 --> 00:06:26,920 और मैं से वापस जाने के लिए जा रहा हूँ में जो कुछ उपयोगकर्ता प्रकार GetString. 149 00:06:26,920 --> 00:06:29,170 यह एक सरल होने जा रहा है कार्यक्रम, कोई निर्देश, 150 00:06:29,170 --> 00:06:31,336 मैं बस आँख बंद करके जा रहा हूँ उपयोगकर्ता जानता है कि उम्मीद 151 00:06:31,336 --> 00:06:32,600 क्या इसे सरल रखने के लिए क्या करना है. 152 00:06:32,600 --> 00:06:34,220 >> और अब मैं पाश के लिए एक के लिए जा रहा हूँ. 153 00:06:34,220 --> 00:06:37,450 और मेरे लिए लूप के अंदर मैं हूँ मैं शून्य हो जाता है पूर्णांक के लिए जा रहा. 154 00:06:37,450 --> 00:06:40,660 और मैं, फिर से, बस एक परंपरा है गिनती के लिए एक सूचकांक चर, 155 00:06:40,660 --> 00:06:42,350 लेकिन मैं जो मैं चाहता हूँ यह कह सकते हैं. 156 00:06:42,350 --> 00:06:46,275 मैं मैं अच्छी तरह than-- कम है क्या करने जा रहा हूँ Zamyla के नाम छह पत्र लंबा है. 157 00:06:46,275 --> 00:06:48,150 तो मैं कड़ी मेहनत करने के लिए जा रहा हूँ अब वहाँ के लिए कोड है. 158 00:06:48,150 --> 00:06:49,730 >> और फिर मैं ++. 159 00:06:49,730 --> 00:06:53,190 और अब इन घुंघराले के अंदर ब्रेसिज़ मैं printf क्या करने जा रहा हूँ 160 00:06:53,190 --> 00:06:55,460 और मैं एक मुद्रित करना चाहते हैं एक समय में चरित्र. 161 00:06:55,460 --> 00:06:58,227 तो मैं के लिए% C उपयोग करने के लिए जा रहा हूँ शायद पहली बार. 162 00:06:58,227 --> 00:07:00,560 और फिर मैं प्रत्येक मुद्रित करना चाहते हैं अपनी पंक्ति में चरित्र. 163 00:07:00,560 --> 00:07:02,550 तो मैं एक डाल करने के लिए जा रहा हूँ थोड़ा बैकस्लैश n वहाँ. 164 00:07:02,550 --> 00:07:03,640 बंद भाव. 165 00:07:03,640 --> 00:07:06,250 >> और अब मैं यहाँ कुछ करना चाहते हैं. 166 00:07:06,250 --> 00:07:10,610 मैं बाहर मुद्रित करना चाहते हैं स्ट्रिंग में विशिष्ट पत्र, 167 00:07:10,610 --> 00:07:13,670 एस, मैं पुनरावृति रहा हूँ छह पर शून्य से. 168 00:07:13,670 --> 00:07:17,150 दूसरे शब्दों में, मैं चाहता हूँ एस के i'th चरित्र मुद्रित. 169 00:07:17,150 --> 00:07:18,420 अब मैं यह कैसे कर सकते हैं? 170 00:07:18,420 --> 00:07:21,550 >> खैर बहुत बक्से में तरह यहाँ इस प्रतिनिधित्व, 171 00:07:21,550 --> 00:07:25,560 एक तरह से, मुक्केबाजी की धारणा को आच्छादित में पत्र, इसी प्रकार आप ऐसा कर सकते हैं 172 00:07:25,560 --> 00:07:32,630 वाक्य रचना से बस द्वारा निर्दिष्ट सी में, मैं चरित्र i'th एस के बाहर मुद्रित करना चाहते हैं. 173 00:07:32,630 --> 00:07:35,640 वर्ग कोष्ठक का उपयोग आपके कंप्यूटर के कीबोर्ड पर 174 00:07:35,640 --> 00:07:38,910 एक अमेरिका कीबोर्ड पर हैं आम तौर पर अपनी वापसी कुंजी ऊपर. 175 00:07:38,910 --> 00:07:42,630 >> तो यह बिल्कुल सही नहीं है अभी तक, आप देखा हो. 176 00:07:42,630 --> 00:07:44,780 लेकिन मैं की तरह करने के लिए जा रहा हूँ आँख बंद करके यहां आगे बना. 177 00:07:44,780 --> 00:07:47,020 और मैं स्ट्रिंग 0 बनाने में क्या करने जा रहा हूँ. 178 00:07:47,020 --> 00:07:50,860 मैं यह नहीं लेकिन, इससे पहले की तो देखते हैं हम कुछ आम गलतियों की आशा नहीं कर सकते. 179 00:07:50,860 --> 00:07:52,844 इस संकलन करने के लिए जा रहा है? 180 00:07:52,844 --> 00:07:54,510 नहीं, मैं चीजों की एक पूरी गुच्छा याद आ रही है. 181 00:07:54,510 --> 00:07:55,280 पुस्तकालय मैंने सुना. 182 00:07:55,280 --> 00:07:58,480 >> तो फाइलें हेडर जो मैं यहाँ जोड़ने के लिए चाहते हो सकता है? 183 00:07:58,480 --> 00:07:59,205 हाँ. 184 00:07:59,205 --> 00:08:01,580 >> दर्शक: आप की जरूरत मानक मैं / हे [अश्राव्य] 185 00:08:01,580 --> 00:08:02,663 >> डेविड जे Malan: बहुत बढ़िया. 186 00:08:02,663 --> 00:08:06,060 इसलिए मैं मानक आई / ओ की जरूरत है. किस लिए उद्देश्य मैं मानक आई / ओ चाहते हैं? 187 00:08:06,060 --> 00:08:06,670 Printf लिए. 188 00:08:06,670 --> 00:08:09,220 तो stdio.h शामिल हैं. 189 00:08:09,220 --> 00:08:13,490 और तुम भी मैं शामिल प्रस्ताव है कि क्या कारण के लिए CS50 पुस्तकालय? 190 00:08:13,490 --> 00:08:14,650 तार किया है. 191 00:08:14,650 --> 00:08:17,780 तो हम क्या देखेंगे CS50 पुस्तकालय कर रही है 192 00:08:17,780 --> 00:08:19,260 एक स्ट्रिंग की इस धारणा बनाने के लिए. 193 00:08:19,260 --> 00:08:21,930 लेकिन अब के लिए, तुम सिर्फ सोच सकते हैं यह एक वास्तविक डेटा प्रकार के रूप में. 194 00:08:21,930 --> 00:08:23,596 >> तो यह है कि एक छोटे से साफ किया जा रहा है. 195 00:08:23,596 --> 00:08:27,060 और अब मैं आगे जाने के लिए जा रहा हूँ और वास्तव में स्ट्रिंग 0 करते हैं. 196 00:08:27,060 --> 00:08:27,700 संकलित. 197 00:08:27,700 --> 00:08:28,370 तो यह अच्छी बात है. 198 00:08:28,370 --> 00:08:32,799 तो इसलिए हम कर सकते हैं ज़ूम में मुझे अवगत ./string0 और अधिक बारीकी से क्या हो रहा है देखते हैं. 199 00:08:32,799 --> 00:08:33,850 लिखें. 200 00:08:33,850 --> 00:08:37,789 Z-ए एम वाई एल ए दर्ज करें. 201 00:08:37,789 --> 00:08:39,440 और हम Zamyla के नाम करने के लिए बाहर मुद्रित किया है. 202 00:08:39,440 --> 00:08:40,409 >> तो वो काफ़ी अच्छा है. 203 00:08:40,409 --> 00:08:43,220 तो अब आगे चलते हैं और फिर इस कार्यक्रम चलाने, 204 00:08:43,220 --> 00:08:45,659 और Daven का पूरा नाम बाहर लिखें. 205 00:08:45,659 --> 00:08:46,450 आश्चर्य, आश्चर्य. 206 00:08:46,450 --> 00:08:48,021 लिखें. 207 00:08:48,021 --> 00:08:48,520 हम्म. 208 00:08:48,520 --> 00:08:51,750 हम Daven के मुद्रित नहीं किया है सही ढंग से भरा पहला नाम. 209 00:08:51,750 --> 00:08:54,250 अब इस में स्पष्ट किया जाना चाहिए क्योंकि क्या का पुनरावलोकन, 210 00:08:54,250 --> 00:08:57,010 एक तरह से, बेवकूफ डिजाइन निर्णय? 211 00:08:57,010 --> 00:08:59,590 >> हाँ, मैं हार्ड कोडित मेरे पाश के लिए की छह अंदर. 212 00:08:59,590 --> 00:09:01,610 अब मैंने किया था कि केवल क्योंकि मैं Zamyla का नाम पता था 213 00:09:01,610 --> 00:09:02,776 छह पत्र होने जा रहा था. 214 00:09:02,776 --> 00:09:04,720 लेकिन निश्चित रूप से यह नहीं है एक सामान्य समाधान. 215 00:09:04,720 --> 00:09:07,720 यह पता चला है तो हम गतिशील कर सकते हैं एक स्ट्रिंग की लंबाई समझ से बाहर 216 00:09:07,720 --> 00:09:10,440 strlen नामक एक समारोह को फोन करके. 217 00:09:10,440 --> 00:09:12,840 >> फिर, जानबूझकर संक्षेप बस नामित 218 00:09:12,840 --> 00:09:14,450 टाइप करने के लिए इसे और अधिक सुविधाजनक बनाने के लिए. 219 00:09:14,450 --> 00:09:17,170 लेकिन उस का पर्याय बन गया है एक स्ट्रिंग की लंबाई हो रही है. 220 00:09:17,170 --> 00:09:23,190 मैं अपने टर्मिनल में वापस जाने के लिए जा रहा हूँ खिड़की और संकलक फिर से चलाते हैं. 221 00:09:23,190 --> 00:09:24,170 लेकिन यह मुझ पर चिल्ला रहा है. 222 00:09:24,170 --> 00:09:29,130 उलझाव पुस्तकालय समारोह की घोषणा const-- पूर्णांक अहस्ताक्षरित प्रकार के साथ strlen 223 00:09:29,130 --> 00:09:29,780 मैं हार गया हूं. 224 00:09:29,780 --> 00:09:30,590 पूरी तरह से. 225 00:09:30,590 --> 00:09:32,940 >> तो, खासकर के रूप में अपनी आँखों में चमक के लिए शुरू 226 00:09:32,940 --> 00:09:36,000 इस तरह त्रुटि संदेश, ध्यान के साथ ईमानदारी से पहले कुछ शब्दों पर. 227 00:09:36,000 --> 00:09:38,590 हम समस्या में है पता लाइन 8, यहाँ संकेत के रूप में. 228 00:09:38,590 --> 00:09:40,500 और यह स्ट्रिंग 0.c में है. 229 00:09:40,500 --> 00:09:43,580 उलझाव की घोषणा पुस्तकालय समारोह strlen. 230 00:09:43,580 --> 00:09:47,000 तो यह है कि आम तौर पर करने जा रहा है त्रुटि संदेशों में से एक पैटर्न होना. 231 00:09:47,000 --> 00:09:49,190 उलझाव से कुछ की घोषणा. 232 00:09:49,190 --> 00:09:53,250 >> तो संक्षेप में, मैं करने के लिए लग रहा था क्या है यहाँ, 8 लाइन के लिए सम्मान के साथ किया है. 233 00:09:53,250 --> 00:09:56,880 हो सकता है क्या समाधान भी हो आप अपने आप को strlen इस्तेमाल नहीं किया है तो क्या होगा? 234 00:09:56,880 --> 00:09:58,907 >> दर्शक: एक अलग पुस्तकालय का हिस्सा? 235 00:09:58,907 --> 00:10:00,740 डेविड जे Malan: भाग एक अलग पुस्तकालय की. 236 00:10:00,740 --> 00:10:02,400 यह घोषित किया जाता है तो, तो बात करने के लिए. 237 00:10:02,400 --> 00:10:07,510 यह कुछ फ़ाइल में बताया गया है stdio.h और CS50.h. अलावा अन्य 238 00:10:07,510 --> 00:10:09,179 अब जहां यह परिभाषित किया गया है? 239 00:10:09,179 --> 00:10:12,220 ईमानदार हो, आप या तो बस करना है अपने सिर के ऊपर से यह पता है, 240 00:10:12,220 --> 00:10:13,640 या आप यह गूगल और पता. 241 00:10:13,640 --> 00:10:18,150 या यह पता है, मैं CS50 में खोल दिया है टर्मिनल प्रोग्राम, उपकरण, जो 242 00:10:18,150 --> 00:10:22,200 के सिर्फ बड़े, पूर्ण स्क्रीन संस्करण है क्या एडिट की खिड़की के नीचे में है. 243 00:10:22,200 --> 00:10:24,970 >> और यह एक है कि वहाँ पता चला है कहा जाता है इसी प्रकार संक्षिप्त आदेश, 244 00:10:24,970 --> 00:10:29,280 आप में टाइप करें जहां अगर पुस्तिका, के लिए आदमी और एक समारोह के नाम, हिट दर्ज 245 00:10:29,280 --> 00:10:32,240 आप काफी वापस मिल जाएगा रहस्यमय प्रलेखन. 246 00:10:32,240 --> 00:10:35,299 ऐसा लगता है कि आम तौर पर सिर्फ पाठ है इस तरह एक छोटे से कुछ लग रहा है. 247 00:10:35,299 --> 00:10:37,090 यह थोड़ा भारी है पहली नज़र में. 248 00:10:37,090 --> 00:10:39,048 लेकिन स्पष्ट रूप से मैं जा रहा हूँ मेरी आँखों में चमक चलो 249 00:10:39,048 --> 00:10:41,930 और केवल एक भाग पर ध्यान केंद्रित मैं इस समय के बारे में परवाह है. 250 00:10:41,930 --> 00:10:42,780 >> कौन सा है यह. 251 00:10:42,780 --> 00:10:45,470 कौन सा संरचनात्मक तरह लग रहा है कुछ के साथ मैं परिचित हूँ. 252 00:10:45,470 --> 00:10:48,080 दरअसल आदमी पेज, तो बात करने के लिए, आपको बता देगा 253 00:10:48,080 --> 00:10:51,590 क्या में हैडर एक समारोह फाइल जैसे strlen परिभाषित किया गया है. 254 00:10:51,590 --> 00:10:54,170 इसलिए मैं एडिट करने के लिए अब वापस जाने के लिए जा रहा हूँ. 255 00:10:54,170 --> 00:10:59,070 और मैं आगे जाने के लिए जा रहा हूँ और यहाँ #include में जोड़ 256 00:10:59,070 --> 00:11:00,480 और फ़ाइल सहेजें. 257 00:11:00,480 --> 00:11:04,300 >> मैं साथ स्क्रीन साफ ​​करने के लिए जा रहा हूँ नियंत्रण एल तुम सोच रहा है. 258 00:11:04,300 --> 00:11:08,210 और मैं मेकअप चलाने के लिए फिर से जा रहा हूँ string.0, इस समय compiles. 259 00:11:08,210 --> 00:11:11,790 ./string.0 Zamyla. 260 00:11:11,790 --> 00:11:15,020 यही कारण है कि मुझे जाने दो काम करने लगा आगे और डेवनपोर्ट के साथ यह फिर से दौड़ना. 261 00:11:15,020 --> 00:11:15,860 लिखें. 262 00:11:15,860 --> 00:11:17,730 और भी है कि काम करने के लिए लग रहा था. 263 00:11:17,730 --> 00:11:21,220 >> इसलिए हम इस एक छोटे से बेहतर कर सकते हैं हालांकि, हम साफ बातें करने के लिए शुरू कर सकते हैं 264 00:11:21,220 --> 00:11:23,257 बस थोड़ा सा. 265 00:11:23,257 --> 00:11:25,590 और मैं वास्तव में करने के लिए जा रहा हूँ अब एक दूसरी बात परिचय. 266 00:11:25,590 --> 00:11:28,930 मैं आगे जाने के लिए जा रहा हूँ और एक अलग फाइल में इस बचा. 267 00:11:28,930 --> 00:11:31,770 और मैं फोन करने के लिए जा रहा हूँ इस फ़ाइल string1.c बस 268 00:11:31,770 --> 00:11:34,620 कोड के अनुरूप होना आप ऑनलाइन प्राप्त कर सकेंगे. 269 00:11:34,620 --> 00:11:37,050 >> और हम में पर ध्यान केंद्रित करते हैं वास्तव में एक ही कोड. 270 00:11:37,050 --> 00:11:39,000 यह मैं पता चला है कि लेने के लिए किया गया प्रकार 271 00:11:39,000 --> 00:11:42,600 दी तथ्य के लिए अपने लैपटॉप कि, और बदले में, CS50 उपकरण 272 00:11:42,600 --> 00:11:47,450 स्मृति का एक बहुत की एक बहुत कुछ है राम, अंतरिक्ष की बाइट्स का एक बहुत 273 00:11:47,450 --> 00:11:48,920 जिसमें मैं तार स्टोर कर सकते हैं. 274 00:11:48,920 --> 00:11:53,560 >> लेकिन वास्तविकता यह है कि मैं लंबे समय से टाइप किया तो बहुत हो गया, और काफी कीस्ट्रोक्स, 275 00:11:53,560 --> 00:11:56,170 मैं सिद्धांत प्रकार में कर सकता अधिक पात्रों में 276 00:11:56,170 --> 00:11:58,830 अपने कंप्यूटर से शारीरिक रूप के लिए मेमोरी है. 277 00:11:58,830 --> 00:11:59,830 और यह समस्याग्रस्त है. 278 00:11:59,830 --> 00:12:03,050 ज्यादातर एक पूर्णांक ही कर सकते हैं की तरह सिद्धांत रूप में, तो उच्च गिनती, 279 00:12:03,050 --> 00:12:06,600 आप केवल इतने सारे अक्षर रटना कर सकते हैं अपने कंप्यूटर की रैम या रैंडम में 280 00:12:06,600 --> 00:12:07,920 एक्सेस मेमोरी. 281 00:12:07,920 --> 00:12:11,140 >> तो मैं बेहतर की आशा थी इस समस्या को भी 282 00:12:11,140 --> 00:12:13,660 यह एक दुर्लभ हो सकता है कोने मामला है, तो बात करने के लिए. 283 00:12:13,660 --> 00:12:15,670 अक्सर ऐसा नहीं होता है, हो सकता है. 284 00:12:15,670 --> 00:12:18,815 ऐसा होता है और अगर मैं नहीं करना आशा है और इसके लिए कार्यक्रम, 285 00:12:18,815 --> 00:12:20,300 मेरे कार्यक्रम कौन जानता है कि कर सकता है. 286 00:12:20,300 --> 00:12:22,220 , जो कुछ भी रिबूट, फ्रीज लटका. 287 00:12:22,220 --> 00:12:24,490 कुछ भी हो सकता है प्रत्याशित. 288 00:12:24,490 --> 00:12:27,120 >> तो मैं क्या करने जा रहा हूँ अब, अब वास्तव में, 289 00:12:27,120 --> 00:12:31,630 कभी आँख बंद करके मैं पहले है एस की तरह एक चर का उपयोग करने वाले 290 00:12:31,630 --> 00:12:36,790 की मान सौंपा गया है getstring जैसे कुछ अन्य समारोह, 291 00:12:36,790 --> 00:12:40,200 मैं सुनिश्चित करने के लिए जा रहा हूँ कि अपने मूल्य मान्य है. 292 00:12:40,200 --> 00:12:44,280 तो मैंने पढ़ा होने से ही पता Getstring के लिए CS50 के दस्तावेज, 293 00:12:44,280 --> 00:12:49,020 जो अंततः हम पर आप बात करेंगे, कि getstring एक विशेष प्रतीक रिटर्न 294 00:12:49,020 --> 00:12:53,610 सभी में नल, एन यू एल एल बुलाया कुछ गलत हो जाता है, टोपियां. 295 00:12:53,610 --> 00:12:55,650 >> तो सामान्य रूप से, यह एक स्ट्रिंग देता है. 296 00:12:55,650 --> 00:12:59,700 लेकिन यह एन यू एल L-- रिटर्न अन्यथा अगर हम अंत में वास्तव में क्या देखेंगे कि 297 00:12:59,700 --> 00:13:01,790 कि सिर्फ साधन means-- कुछ बुरा हुआ. 298 00:13:01,790 --> 00:13:05,560 अब यह ज्यादा स्क्रैच में पसंद है, इसका मतलब है, मैं, सी में यहां एक स्थिति की जांच कर सकते हैं 299 00:13:05,560 --> 00:13:08,830 एस बराबर रिक्त नहीं है. 300 00:13:08,830 --> 00:13:11,930 इससे पहले कि आप यह नहीं देखा है तो, अगर बस इसका मतलब यह समान नहीं है. 301 00:13:11,930 --> 00:13:15,290 >> तो यह के विपरीत है याद है, जो बराबर बराबर होती है,, 302 00:13:15,290 --> 00:13:18,940 एकल से अलग है काम है, जो बराबर होती है. 303 00:13:18,940 --> 00:13:23,030 एस बराबर नहीं करता है तो अगर नल, उसके बाद ही कर 304 00:13:23,030 --> 00:13:25,980 मैं कोड की इन पंक्तियों पर अमल करना चाहते हैं. 305 00:13:25,980 --> 00:13:28,080 तो दूसरे शब्दों में, मैं आँख बंद करके में गोता लगाने से पहले 306 00:13:28,080 --> 00:13:30,919 और पुनरावृति शुरू खत्म हो चुका है, और यह इलाज 307 00:13:30,919 --> 00:13:33,710 इसके बारे में एक दृश्य है, हालांकि के रूप में वर्ण, मैं, पहले की जांच करने के लिए जा रहा हूँ 308 00:13:33,710 --> 00:13:37,900 एक मिनट रुको, निश्चित रूप से नहीं की है इस विशेष मूल्य के बराबर, नल? 309 00:13:37,900 --> 00:13:40,030 >> अगर ऐसा है, बुरी बातें हो सकता है. 310 00:13:40,030 --> 00:13:43,080 और अब के लिए, कि बुरी बातें मान अपने कार्यक्रम दुर्घटनाओं का मतलब हो रहा है, 311 00:13:43,080 --> 00:13:45,070 और तुम जरूरी ठीक नहीं कर सकते. 312 00:13:45,070 --> 00:13:46,800 तो स्पष्ट रूप से, यह uglier लग रहा है. 313 00:13:46,800 --> 00:13:48,660 यह एक तरह से पर नज़र अब भ्रामक है. 314 00:13:48,660 --> 00:13:50,780 लेकिन यह अधिक हो जाएगा लंबे समय से पहले परिचित. 315 00:13:50,780 --> 00:13:52,920 >> लेकिन मैं प्रस्ताव करने के लिए जा रहा हूँ अब एक अन्य सुधार. 316 00:13:52,920 --> 00:13:54,660 उस शुद्धता के लिए एक सुधार है. 317 00:13:54,660 --> 00:13:58,800 मेरा कार्यक्रम है, क्योंकि अब ज्यादा सही है दुर्लभ मामले में है कि पर्याप्त नहीं स्मृति 318 00:13:58,800 --> 00:14:01,180 , मैं इसे संभाल लेंगे मौजूद है, और मैं अभी कुछ भी नहीं करूँगा. 319 00:14:01,180 --> 00:14:02,680 मैं कम से कम दुर्घटना नहीं होगा. 320 00:14:02,680 --> 00:14:05,000 >> लेकिन यहाँ एक अंतिम संस्करण करते हैं. 321 00:14:05,000 --> 00:14:07,690 और एक फाइल string2.c बुलाया. 322 00:14:07,690 --> 00:14:10,190 मुझे लगता है कि पेस्ट करने के लिए जा रहा हूँ बस एक पल के लिए एक ही कोड, 323 00:14:10,190 --> 00:14:14,210 और मैं इस पर प्रकाश डाला जा रहा हूँ बस एक पल के लिए यहाँ लाइन, 11,,. 324 00:14:14,210 --> 00:14:18,179 अब वास्तविकता है कि स्मार्ट compilers है बजना हमारे लिए यह तय कर सकता है जैसे 325 00:14:18,179 --> 00:14:19,970 पर्दे के पीछे हमारे कभी जानने के बिना. 326 00:14:19,970 --> 00:14:24,670 लेकिन हम इस बारे में सोचते हैं मौलिक एक समस्याग्रस्त डिजाइन के रूप में. 327 00:14:24,670 --> 00:14:29,010 >> कोड की इस पंक्ति, ज़ाहिर है, कह, कुछ चर मैं 0 करने को प्रारंभ. 328 00:14:29,010 --> 00:14:30,260 यह बहुत स्पष्ट है. 329 00:14:30,260 --> 00:14:34,691 और फिर यह क्या है बयान, यहाँ, मैं क्या कर ++? 330 00:14:34,691 --> 00:14:37,066 हम इसे पहले देखा है, लेकिन हम है वास्तव में इसके बारे में बात नहीं की. 331 00:14:37,066 --> 00:14:37,900 >> दर्शक: मैं incrementing. 332 00:14:37,900 --> 00:14:39,191 >> डेविड जे Malan: incrementing मैं. 333 00:14:39,191 --> 00:14:41,890 के माध्यम से हर यात्रा पर तो इस पाश, हर चक्र, 334 00:14:41,890 --> 00:14:43,570 आप एक एक करके मैं incrementing रहे हैं. 335 00:14:43,570 --> 00:14:45,740 तो यह बड़ा, और बड़ा हो जाता है, और पाश समाप्त हो जाता है जब तक बड़ा. 336 00:14:45,740 --> 00:14:46,810 यह कैसे समाप्त करता है? 337 00:14:46,810 --> 00:14:49,430 वैसे इस बीच वहाँ हम पहले का उपयोग किया है जो हालत. 338 00:14:49,430 --> 00:14:52,500 आप ने देखा है पी सेट में walkthroughs. 339 00:14:52,500 --> 00:14:53,880 >> लेकिन यह क्या कह रही है? 340 00:14:53,880 --> 00:14:58,352 तो निम्नलिखित पाश करो लंबे समय से मैं क्या से कम है? 341 00:14:58,352 --> 00:14:59,810 दर्शक: स्ट्रिंग की लंबाई. 342 00:14:59,810 --> 00:15:01,518 डेविड जे Malan: स्ट्रिंग की लंबाई. 343 00:15:01,518 --> 00:15:04,300 इसलिए यह बहुत सफाई से तब्दील इस अर्थ में कि अंग्रेजी के लिए. 344 00:15:04,300 --> 00:15:08,810 अब समस्या यह है कि हर बार मुझे लगता है कि सिद्धांत रूप में यह पाश के माध्यम से पुनरावृति, 345 00:15:08,810 --> 00:15:10,000 मैं यह सवाल पूछ रहा हूँ. 346 00:15:10,000 --> 00:15:12,250 मैं की स्ट्रिंग की लंबाई की तुलना में कम है? 347 00:15:12,250 --> 00:15:14,500 मैं की स्ट्रिंग की लंबाई की तुलना में कम है? 348 00:15:14,500 --> 00:15:18,380 >> अब मैं प्रत्येक यात्रा पर बदल रहा है? 349 00:15:18,380 --> 00:15:18,880 यह है. 350 00:15:18,880 --> 00:15:19,629 ++ की वजह से. 351 00:15:19,629 --> 00:15:21,700 इसलिए हर यात्रा मैं बड़ा हो रहा है. 352 00:15:21,700 --> 00:15:25,411 लेकिन है बड़ी हो रही, या छोटे, या बिल्कुल बदल रहा है? 353 00:15:25,411 --> 00:15:25,910 सं 354 00:15:25,910 --> 00:15:30,240 डिजाइन के मामले, कुल्हाड़ियों में से एक में तो जो साथ हम कोड का मूल्यांकन करने की कोशिश 355 00:15:30,240 --> 00:15:32,610 वर्ग में, इस तरह के मूर्ख महसूस करता है. 356 00:15:32,610 --> 00:15:34,690 >> आप सचमुच कर रहे हैं, हर यात्रा पर 357 00:15:34,690 --> 00:15:37,110 इस पाश की पूछ फिर एक ही लानत सवाल, 358 00:15:37,110 --> 00:15:40,770 और फिर, और फिर, और सचमुच यह कभी नहीं बदलने जा रहा है. 359 00:15:40,770 --> 00:15:44,220 मैं छू नहीं कर रहा हूँ कम से कम अगर और एस की सामग्री को बदलने की कोशिश कर रहा. 360 00:15:44,220 --> 00:15:46,610 इसलिए मैं इस तुलना में थोड़ा बेहतर कर सकते हैं. 361 00:15:46,610 --> 00:15:49,530 >> और मैं क्या करने जा रहा हूँ नहीं है सिर्फ एक चर मैं घोषणा 362 00:15:49,530 --> 00:15:53,330 लेकिन एक दूसरा चर मैं, मनमाने ढंग से करेंगे लेकिन पारंपरिक, एन कहते हैं. 363 00:15:53,330 --> 00:15:55,940 N करने के लिए बराबर निरुपित एस की स्ट्रिंग लंबाई. 364 00:15:55,940 --> 00:15:59,090 और फिर यहाँ पर, मैं जा रहा हूँ इसलिए, एक चतुर थोड़ा अनुकूलन करना 365 00:15:59,090 --> 00:16:03,460 दिन के अंत में, कि बात करने के लिए कोई और अधिक सही है या नहीं, कम सही है 366 00:16:03,460 --> 00:16:04,260 पहले की तुलना में. 367 00:16:04,260 --> 00:16:05,500 लेकिन यह एक बेहतर डिजाइन है. 368 00:16:05,500 --> 00:16:09,480 वास्तव में मैं उपयोग कर रहा हूँ कि कम समय, कम CPU चक्र, इसलिए 369 00:16:09,480 --> 00:16:14,040 एक ही जवाब देने की बात है, सवाल है, लेकिन सिर्फ एक बार. 370 00:16:14,040 --> 00:16:17,870 >> कि सामान्य पर कोई प्रश्न सुधार के सिद्धांत, 371 00:16:17,870 --> 00:16:21,294 एक कार्यक्रम के दक्षता, का कहना है? 372 00:16:21,294 --> 00:16:21,991 हाँ? 373 00:16:21,991 --> 00:16:23,699 दर्शक: तुम क्यों करते हैं [अश्राव्य] का उपयोग करें? 374 00:16:23,699 --> 00:16:25,760 375 00:16:25,760 --> 00:16:27,010 डेविड जे Malan: अच्छा सवाल है. 376 00:16:27,010 --> 00:16:30,690 तो हम क्यों की समाप्ति पर ++ रखा है मैं बजाय मैं की शुरुआत? 377 00:16:30,690 --> 00:16:33,070 इस मामले में, यह है कोई कार्यात्मक प्रभाव. 378 00:16:33,070 --> 00:16:36,670 और सामान्य में, मैं करने के लिए करते हैं पोस्टफिक्स ऑपरेटर का उपयोग 379 00:16:36,670 --> 00:16:41,750 यह एक छोटे से अधिक स्पष्ट रूप में इतना है कि संचालन हो रहा है जब तक. 380 00:16:41,750 --> 00:16:46,670 >> उन अपरिचित के लिए, एक और भी है आप ++ मैं कर सकता है जिसके तहत बयान. 381 00:16:46,670 --> 00:16:48,747 इन कार्यात्मक हैं इस मामले में बराबर 382 00:16:48,747 --> 00:16:51,080 और कुछ नहीं है क्योंकि कि incrementation के आसपास. 383 00:16:51,080 --> 00:16:54,435 लेकिन आप के साथ आ सकते हैं मामलों और कोड की लाइनों 384 00:16:54,435 --> 00:16:55,810 जिसमें कि एक फर्क पड़ता है. 385 00:16:55,810 --> 00:16:57,810 तो आम तौर पर, हम नहीं यहां तक ​​कि इस बारे में बात करते हैं. 386 00:16:57,810 --> 00:17:00,690 स्पष्ट रूप से, क्योंकि वह आपकी बनाता है कोड sexier, और एक तरह से बरसाती कोट, 387 00:17:00,690 --> 00:17:01,776 और कम वर्ण. 388 00:17:01,776 --> 00:17:04,859 लेकिन वास्तविकता यह है कि यह एक बहुत कठिन है है मैं मुझे मेरे मन लपेटो करने के लिए भी, लगता है 389 00:17:04,859 --> 00:17:07,319 कभी कभी यह चारों ओर, कार्रवाई के आदेश. 390 00:17:07,319 --> 00:17:09,750 एक अलग रूप में, तो अगर आप वास्तव में, यह पसंद नहीं है 391 00:17:09,750 --> 00:17:14,650 यहां तक ​​कि इस तरह की सेक्सी है, हालांकि देख, आप भी कर सकते हैं मैं + = 1, 392 00:17:14,650 --> 00:17:18,880 जिनमें से uglier संस्करण है पोस्टफिक्स incrementation के लिए एक ही विचार है. 393 00:17:18,880 --> 00:17:22,250 >> मैं इस और आप कहते हैं इसे मजाक बनाना चाहिए, 394 00:17:22,250 --> 00:17:25,140 लेकिन आप के रूप में कोड को देखने के लिए आ जाएगा लंबे समय से पहले कुछ सुंदर. 395 00:17:25,140 --> 00:17:27,160 >> [हंसी] 396 00:17:27,160 --> 00:17:28,410 >> डेविड जे Malan: है ना? 397 00:17:28,410 --> 00:17:29,360 हाँ. 398 00:17:29,360 --> 00:17:30,480 बीच में प्रश्न. 399 00:17:30,480 --> 00:17:32,146 >> दर्शक: आप int n कहने की ज़रूरत है? 400 00:17:32,146 --> 00:17:34,020 डेविड जे Malan: यदि आप करते int n कहने की ज़रूरत नहीं. 401 00:17:34,020 --> 00:17:37,670 हम पहले से ही पूर्णांक कहा है क्योंकि तो, आप इसे फिर से कहने की ज़रूरत नहीं है. 402 00:17:37,670 --> 00:17:41,820 पकड़ n करने के लिए है कि मैं उसी के रूप में डेटा प्रकार हो. 403 00:17:41,820 --> 00:17:43,310 तो यह है कि यहां सिर्फ एक सुविधा है. 404 00:17:43,310 --> 00:17:44,058 हाँ. 405 00:17:44,058 --> 00:17:47,806 >> दर्शक: आप पर जा सकते हैं प्रिंट चरित्र है ब्रैकेट मैं फिर से? 406 00:17:47,806 --> 00:17:48,930 डेविड जे Malan: बिल्कुल. 407 00:17:48,930 --> 00:17:52,110 इसलिये% सी, पिछले से याद समय, सिर्फ एक प्लेसहोल्डर है. 408 00:17:52,110 --> 00:17:53,930 यह यहाँ एक चार डाल मतलब है. 409 00:17:53,930 --> 00:17:56,780 बैकस्लैश एन, ज़ाहिर है, बस साधन यहाँ एक लाइन तोड़ डाला. 410 00:17:56,780 --> 00:17:59,540 , अभी पत्ते तो यह है कि नई वाक्य रचना के इस टुकड़े. 411 00:17:59,540 --> 00:18:03,730 और यह सचमुच हड़पने, कह रहा है स्ट्रिंग है कहा जाता है और मिल जाना अपने 412 00:18:03,730 --> 00:18:06,050 i'th चरित्र, इतनी बात करने के लिए. 413 00:18:06,050 --> 00:18:10,590 >> और मैं i'th चरित्र कह रखना क्योंकि इस लूप के प्रत्येक चलना पर 414 00:18:10,590 --> 00:18:14,540 हम मुद्रण कर रहे हैं के रूप में हालांकि यह बात है बाहर, पहला है ब्रैकेट 0, 415 00:18:14,540 --> 00:18:15,780 एक प्रोग्रामर कह सकते हैं. 416 00:18:15,780 --> 00:18:18,680 तो है तो, ब्रैकेट 1 s ब्रैकेट 2, तो फिर 3, 4. 417 00:18:18,680 --> 00:18:21,610 लेकिन निश्चित रूप से यह एक चर है, तो मैं बस मैं साथ यह व्यक्त करते हैं. 418 00:18:21,610 --> 00:18:23,900 >> कुंजी है, हालांकि, एहसास है, आप नहीं है, खासकर अगर 419 00:18:23,900 --> 00:18:26,358 इस दुनिया को acclimating गया प्रोग्रामिंग, जहां हम सब की 420 00:18:26,358 --> 00:18:28,950 होगा, शून्य से गिनती करने लगते हैं अब शून्य से गिनती शुरू करते हैं. 421 00:18:28,950 --> 00:18:35,130 क्योंकि तार, पहली चरित्र, Zamyla में जेड के लिए अच्छा है या बुरा है 422 00:18:35,130 --> 00:18:40,490 स्थान संख्या शून्य पर रहने के लिए जा रहा है. 423 00:18:40,490 --> 00:18:48,210 >> ठीक है, तो मुझे लाने यहाँ Zamyla करने के लिए हमें वापस 424 00:18:48,210 --> 00:18:50,746 और वास्तव में क्या हो रहा है देखते हैं हुड के नीचे पर. 425 00:18:50,746 --> 00:18:52,370 इसलिए प्रकार कास्टिंग की इस धारणा है. 426 00:18:52,370 --> 00:18:53,800 आप वास्तव में हो सकता है पहले से ही इस के साथ खेला जाता है, 427 00:18:53,800 --> 00:18:55,970 शायद हैकर के लिए पी के संस्करण एक सेट. 428 00:18:55,970 --> 00:19:00,320 लेकिन प्रकार कास्टिंग बस को संदर्भित करता है सी में क्षमता और कुछ अन्य भाषाओं 429 00:19:00,320 --> 00:19:03,170 एक दूसरे के लिए डेटा प्रकार परिवर्तित करने के लिए. 430 00:19:03,170 --> 00:19:05,450 >> अब हम यह कैसे देख सकते हैं सुंदर straightforwardly? 431 00:19:05,450 --> 00:19:08,530 तो, शुरुआत यह याद है अंग्रेजी वर्णमाला का. 432 00:19:08,530 --> 00:19:11,265 और संदर्भ से, याद जैसे एक सप्ताह पहले ASCII है. 433 00:19:11,265 --> 00:19:13,790 अमेरिकन स्टैंडर्ड कोड सूचना आदान लिए. 434 00:19:13,790 --> 00:19:17,080 जो सिर्फ एक बहुत लंबा रास्ता तय करना है पत्र से एक मानचित्रण कहने का 435 00:19:17,080 --> 00:19:19,370 संख्या के लिए, और संख्या से पत्र के लिए. 436 00:19:19,370 --> 00:19:22,940 >> तो यहाँ एम, डॉट डॉट के माध्यम से डॉट, लाइनों के साथ, याद करते हैं, 437 00:19:22,940 --> 00:19:25,582 ऊपर की ओर दशमलव संख्या 65. 438 00:19:25,582 --> 00:19:27,290 और हम बात नहीं की स्पष्ट रूप से इस बारे में, 439 00:19:27,290 --> 00:19:29,850 लेकिन निश्चित रूप से समान नहीं है छोटे अक्षरों के लिए संख्या. 440 00:19:29,850 --> 00:19:30,820 और वास्तव में, वहाँ रहे हैं. 441 00:19:30,820 --> 00:19:33,730 दुनिया कुछ वर्षों का फैसला पहले उस छोटे से एक, एक छोटे, 442 00:19:33,730 --> 00:19:35,020 97 होने जा रहा है. 443 00:19:35,020 --> 00:19:38,010 और थोड़ा ख हो रहा है इसके आगे 98, और किया जाना है. 444 00:19:38,010 --> 00:19:40,200 >> और किसी भी अन्य प्रमुख पर के लिए अपने कीबोर्ड, वहाँ 445 00:19:40,200 --> 00:19:42,190 बिट्स के एक समान पैटर्न होने जा रहा. 446 00:19:42,190 --> 00:19:44,540 या यों, एक दशमलव संख्या. 447 00:19:44,540 --> 00:19:47,110 तो हाथ पर सवाल, तो, हम कैसे कर सकते है 448 00:19:47,110 --> 00:19:49,400 वास्तव में हुड के नीचे यह देख? 449 00:19:49,400 --> 00:19:51,539 तो मैं फिर से एडिट करने के लिए ऊपर जाने के लिए जा रहा हूँ. 450 00:19:51,539 --> 00:19:53,330 और नहीं बल्कि प्रकार से खरोंच से यह एक है, 451 00:19:53,330 --> 00:19:55,330 मैं आगे जाने के लिए जा रहा हूँ और बस कुछ ऊपर खुला 452 00:19:55,330 --> 00:19:58,350 आज के कोड से ASCII शून्य कहा जाता है. 453 00:19:58,350 --> 00:20:01,210 >> और ASCII शून्य इस तरह दिखता है. 454 00:20:01,210 --> 00:20:02,710 तो चलो इस के आसपास हमारे मन लपेट दें. 455 00:20:02,710 --> 00:20:04,969 तो सबसे पहले, मैं टिप्पणी की है जो अच्छा है कोड,. 456 00:20:04,969 --> 00:20:07,010 यह सचमुच है क्योंकि क्या उम्मीद करने के लिए मुझे बता रहा है, 457 00:20:07,010 --> 00:20:08,950 बड़े अक्षरों के लिए एक मानचित्रण प्रदर्शित करते हैं. 458 00:20:08,950 --> 00:20:13,690 अब मैं काफी नहीं जानता कि क्या मैं उस से क्या मतलब है, तो हम अनुमान करते हैं. 459 00:20:13,690 --> 00:20:16,870 >> अंग्रेजी में, हो सकता कुछ हद तक तकनीकी विशेषज्ञ अंग्रेजी, 460 00:20:16,870 --> 00:20:20,660 क्या लाइन 18 प्रकट करता है हमारे लिए क्या कर रही हो? 461 00:20:20,660 --> 00:20:21,500 सिर्फ 18 लाइन. 462 00:20:21,500 --> 00:20:22,430 यह क्या उत्प्रेरण है? 463 00:20:22,430 --> 00:20:25,192 क्या यह यहाँ बंद किक करने के लिए जा रहा है? 464 00:20:25,192 --> 00:20:26,100 >> दर्शक: एक पाश. 465 00:20:26,100 --> 00:20:26,630 >> डेविड जे Malan: एक पाश. 466 00:20:26,630 --> 00:20:28,463 और कितनी बार है पुनरावृति करने के लिए जा रहा है? 467 00:20:28,463 --> 00:20:31,562 468 00:20:31,562 --> 00:20:33,270 दर्शकों को [आवाज़ें INTERPOSING] छह बार. 469 00:20:33,270 --> 00:20:34,830 डेविड जे Malan: नहीं छह बार. 470 00:20:34,830 --> 00:20:35,840 दर्शक: 26 बार. 471 00:20:35,840 --> 00:20:36,560 डेविड जे Malan: 26 बार. 472 00:20:36,560 --> 00:20:37,060 हाँ, माफ करना. 473 00:20:37,060 --> 00:20:37,960 26 बार. 474 00:20:37,960 --> 00:20:38,460 क्यों? 475 00:20:38,460 --> 00:20:41,590 खैर, यह थोड़ा अजीब है, लेकिन मैं 65 से गिनती शुरू कर दिया है. 476 00:20:41,590 --> 00:20:43,300 कौन सा अजीब है, लेकिन गलत नहीं है. 477 00:20:43,300 --> 00:20:44,610 यह कहना प्रति बुरा नहीं है. 478 00:20:44,610 --> 00:20:46,980 और मैं कर रहा हूँ कि केवल क्योंकि, इस उदाहरण के लिए, 479 00:20:46,980 --> 00:20:50,455 मैं एक तरह से आशंका हूँ कि राजधानी एक 65 था. 480 00:20:50,455 --> 00:20:53,330 अब यह नहीं सबसे खूबसूरत है रास्ता कठिन कोड की तरह करने के लिए, यह करने के लिए 481 00:20:53,330 --> 00:20:56,130 गूढ़ मूल्यों कि कोई नहीं कभी याद करने की उम्मीद है. 482 00:20:56,130 --> 00:21:00,155 >> लेकिन अब के लिए, मैं कर रहा हूँ कि नोटिस 65 प्लस 26 के माध्यम से यह कर. 483 00:21:00,155 --> 00:21:03,030 जाहिरा तौर पर मैं भी नहीं करना चाहते क्योंकि मेरे सिर में गणित करने के लिए. 484 00:21:03,030 --> 00:21:04,440 इसलिए मैं संकलक यह कर दूँगा. 485 00:21:04,440 --> 00:21:08,600 लेकिन फिर एक पाश पर, प्रत्येक चलना पाश की, मैं मैं incrementing रहा हूँ. 486 00:21:08,600 --> 00:21:10,196 >> तो अब यह एक छोटे से गुप्त लग रहा है. 487 00:21:10,196 --> 00:21:13,320 लेकिन हम बुनियादी निर्माण होना चाहिए जिसके साथ ब्लॉक इस बात को समझ. 488 00:21:13,320 --> 00:21:15,510 % सी एक चार के लिए सिर्फ एक प्लेसहोल्डर है. 489 00:21:15,510 --> 00:21:19,010 % मैं एक पूर्णांक के लिए एक प्लेसहोल्डर है. 490 00:21:19,010 --> 00:21:23,310 और इसके द्वारा इस का उपयोग कर पता चला है कि नई वाक्य रचना, इस प्रारंभिक, तो 491 00:21:23,310 --> 00:21:26,100 बात एक डेटा प्रकार इतना करने के लिए एक कोष्ठक के अंदर, 492 00:21:26,100 --> 00:21:32,270 मैं इलाज के लिए संकलक मजबूर कर सकते हैं मैं नहीं एक पूर्णांक है, लेकिन एक चार के रूप में. 493 00:21:32,270 --> 00:21:35,520 >> जिससे मुझे चरित्र दिखा कि संख्या के बराबर. 494 00:21:35,520 --> 00:21:37,986 अब यहाँ नीचे, इस कोड काफी समान है. 495 00:21:37,986 --> 00:21:39,860 मैं बस बनाना चाहते थे सुपर स्पष्ट तथ्य 496 00:21:39,860 --> 00:21:42,095 मैं 97 में शुरू कर रहा हूँ कि, जो एक छोटे है. 497 00:21:42,095 --> 00:21:44,080 26 अधिक पत्रों के माध्यम से. 498 00:21:44,080 --> 00:21:46,970 और मैं फिर से doing-- रहा हूँ मैं कास्टिंग, तो बात करने के लिए. 499 00:21:46,970 --> 00:21:49,160 या प्रकार कास्टिंग मैं, तो बात करने के लिए. 500 00:21:49,160 --> 00:21:51,420 >> एक चार के लिए एक पूर्णांक से. 501 00:21:51,420 --> 00:21:55,760 तो अंत परिणाम होने जा रहा है, सच कहूँ तो, जानकारी हम पहले से ही जानते हैं. 502 00:21:55,760 --> 00:21:59,411 मैं करने जा रहा हूँ ASCII-0 सी डॉट नहीं dot--. 503 00:21:59,411 --> 00:22:02,160 सूचना, आपको शायद उस बनाया गलती मैं बस गलती के रूप में किया. 504 00:22:02,160 --> 00:22:03,820 आस्की -0 बनाओ. 505 00:22:03,820 --> 00:22:06,090 अब मैं ./ascii -0 क्या करने जा रहा हूँ. 506 00:22:06,090 --> 00:22:09,050 मैं में ज़ूम, और दुर्भाग्य से करेंगे यह बंद स्क्रीन स्क्रॉल करने के लिए जा रहा है. 507 00:22:09,050 --> 00:22:15,060 लेकिन हम एक संपूर्ण चार्ट जहां देखना 97 को एक नक्शे, 98 को बी नक्शे, 508 00:22:15,060 --> 00:22:18,931 और हम आगे स्क्रॉल अगर एक, निश्चित रूप से, 65 को नक्शे. 509 00:22:18,931 --> 00:22:21,180 तो यह कहना है कि केवल है हम क्या उपदेश दिया गया है, 510 00:22:21,180 --> 00:22:25,310 इस तुल्यता, वहाँ है वास्तविकता में वास्तव में मामला. 511 00:22:25,310 --> 00:22:28,000 तो इस के लिए एक त्वरित संशोधन. 512 00:22:28,000 --> 00:22:31,220 मुझे ASCII-1.c खोल दें. 513 00:22:31,220 --> 00:22:38,070 और तरह, इस चालाक नोटिस की, इस बात का स्पष्टीकरण. 514 00:22:38,070 --> 00:22:41,770 यह ASCII-1.c है, और इस पागल बात पर ध्यान दिया. 515 00:22:41,770 --> 00:22:45,120 >> और यह वास्तव में दिल से हो जाता है क्या का कंप्यूटर कर रहे हैं. 516 00:22:45,120 --> 00:22:48,150 यहां तक ​​कि हम इंसानों हालांकि letters-- के मामले में भरोसा नहीं 517 00:22:48,150 --> 00:22:50,380 मैं सोच नहीं शुरू करते हैं, सभी अधिकार एक तो बी, 518 00:22:50,380 --> 00:22:52,590 और भौतिक वस्तुओं की गिनती करने के लिए उन का उपयोग करें. 519 00:22:52,590 --> 00:22:58,680 आप निश्चित रूप से मैं चाहता हूँ कि कह सकते हैं कहा जाता है कि कुछ चर को प्रारंभ c-- 520 00:22:58,680 --> 00:23:03,220 लेकिन मैं इस anything-- बुलाया जा सकता था इतनी सी पूंजी ए करने के लिए प्रारंभ होता है 521 00:23:03,220 --> 00:23:07,560 >> दिन के अंत में, कंप्यूटर क्योंकि आप भंडारण कर रहे हैं क्या कोई परवाह नहीं है, 522 00:23:07,560 --> 00:23:10,170 यह केवल आप चाहते हैं कि कैसे परवाह उस जानकारी पेश करने के लिए. 523 00:23:10,170 --> 00:23:13,560 आप कंप्यूटर के लिए चाहते हो कैसे बिट्स के उस पैटर्न की व्याख्या? 524 00:23:13,560 --> 00:23:16,320 तो यह कुछ मैं नहीं है आम तौर पर कर की सिफारिश करेंगे. 525 00:23:16,320 --> 00:23:19,500 यह वास्तव में सिर्फ एक उदाहरण है संप्रेषित कि तुम बिल्कुल कर सकते हैं 526 00:23:19,500 --> 00:23:22,049 एक चार के लिए एक पूर्णांक को प्रारंभ. 527 00:23:22,049 --> 00:23:24,090 क्योंकि नीचे एक चार के हुड, ज़ाहिर है, 528 00:23:24,090 --> 00:23:26,170 0 से 255 सिर्फ एक संख्या है. 529 00:23:26,170 --> 00:23:28,540 >> तो आप निश्चित रूप से कर सकते हैं एक पूर्णांक के अंदर डाल दिया. 530 00:23:28,540 --> 00:23:30,890 और क्या यह भी है यह दर्शाता है कि हम उस 531 00:23:30,890 --> 00:23:34,040 एक से परिवर्तित कर सकते हैं यहाँ, एक और करने के लिए टाइप करें, 532 00:23:34,040 --> 00:23:36,780 अंत में एक ही बात मुद्रण. 533 00:23:36,780 --> 00:23:44,760 और वास्तव में, यह मैं online-- ठीक कर देंगे यहाँ, फिर से, यह कहने का मतलब था. 534 00:23:44,760 --> 00:23:48,610 मुझे ऑनलाइन यह साफ करते हैं, और हम करेंगे जरूरत के रूप में एक ऑनलाइन walkthrough में देखते हैं, 535 00:23:48,610 --> 00:23:50,280 क्या वहाँ का इरादा था. 536 00:23:50,280 --> 00:23:50,960 >> ठीक. 537 00:23:50,960 --> 00:23:53,892 अब शामिल तो पिछले उदाहरण एक और बी और फिर हम करेंगे 538 00:23:53,892 --> 00:23:54,850 एक पायदान ऊपर बातें ले. 539 00:23:54,850 --> 00:23:58,330 एक और बी और साथ तो पूंजीकरण में सी 540 00:23:58,330 --> 00:24:01,560 और तुल्यता क्या है, चलो यहाँ, इस उदाहरण पर एक नज़र रखना. 541 00:24:01,560 --> 00:24:02,752 एक अन्य कोड उदाहरण. 542 00:24:02,752 --> 00:24:04,460 हम है कि एक खोल देंगे पहले से ही बनाया है, हम तो 543 00:24:04,460 --> 00:24:06,440 यह टाइप करने की जरूरत नहीं है सभी खरोंच से बाहर. 544 00:24:06,440 --> 00:24:09,420 >> और प्रत्याशा में नोटिस हम कई शीर्ष लेख का उपयोग कर रहे हैं 545 00:24:09,420 --> 00:24:13,240 है, जो बीच में फाइलें, हमारे नए दोस्त, string.h. 546 00:24:13,240 --> 00:24:15,597 अब यह पहले से कम लग रहा है, नज़र, एक छोटे से गुप्त. 547 00:24:15,597 --> 00:24:18,180 लेकिन हम कारण नहीं कर सकते तो चलो देखते हैं यहाँ पर क्या हो रहा है के माध्यम से. 548 00:24:18,180 --> 00:24:21,150 सबसे पहले मैं उपयोगकर्ता से एक स्ट्रिंग मिलता है, और मैं एक चर में कि स्ट्रिंग डाल 549 00:24:21,150 --> 00:24:22,286 कहा जाता है. 550 00:24:22,286 --> 00:24:24,090 पहले से कॉपी पेस्ट. 551 00:24:24,090 --> 00:24:27,250 लाइन 22 में, मैं जाहिरा तौर पर कर रहा हूँ वास्तव में क्या कर रही है 552 00:24:27,250 --> 00:24:30,760 मैं मैं पुनरावृति रहा हूँ, एक पल पहले किया था एस में अक्षर से अधिक. 553 00:24:30,760 --> 00:24:34,780 >> और यहाँ नई चाल का उपयोग कर रहे हैं स्ट्रिंग की लंबाई, मामूली अनुकूलन 554 00:24:34,780 --> 00:24:37,930 एन में स्ट्रिंग की लंबाई के संचय के लिए, बल्कि फिर strlen बुला से, 555 00:24:37,930 --> 00:24:38,850 और फिर, और फिर से. 556 00:24:38,850 --> 00:24:41,120 और सिर्फ मैं n से कम नहीं है कि जाँच. 557 00:24:41,120 --> 00:24:43,330 अब यहाँ, मिल बातें एक छोटे से दिलचस्प. 558 00:24:43,330 --> 00:24:45,980 लेकिन यह सिर्फ एक आवेदन है इस एक ही नए विचार की. 559 00:24:45,980 --> 00:24:48,470 अंग्रेजी करता है में क्या मैं प्रतिनिधित्व है ब्रैकेट? 560 00:24:48,470 --> 00:24:51,772 561 00:24:51,772 --> 00:24:54,260 >> दर्शक: प्रत्येक गिनती चरित्र [अश्राव्य]. 562 00:24:54,260 --> 00:24:55,926 >> डेविड जे Malan: प्रत्येक चरित्र गिनती. 563 00:24:55,926 --> 00:24:58,680 और भी अधिक संक्षेप, एस ब्रैकेट मैं क्या प्रतिनिधित्व करते हैं? 564 00:24:58,680 --> 00:25:00,950 क्या आप कहते हैं. 565 00:25:00,950 --> 00:25:04,084 यहां मौके पर डाल करने के लिए नहीं. 566 00:25:04,084 --> 00:25:06,375 >> दर्शक: Well-- 567 00:25:06,375 --> 00:25:09,500 डेविड जे Malan: शब्द अगर is-- तो अगर स्ट्रिंग starts-- जो Zamyla है 568 00:25:09,500 --> 00:25:12,380 दर्शक: --you के साथ सौदा अक्षर separately-- 569 00:25:12,380 --> 00:25:13,690 डेविड जे Malan: अच्छा. 570 00:25:13,690 --> 00:25:14,190 बिल्कुल सही. 571 00:25:14,190 --> 00:25:17,940 वर्ग ब्रैकेट अंकन आपको अनुमति देता है व्यक्तिगत रूप से प्रत्येक चरित्र का उपयोग करने के लिए, 572 00:25:17,940 --> 00:25:21,120 इतना है ब्रैकेट 0 होने जा रहा है स्ट्रिंग में पहले चरित्र. 573 00:25:21,120 --> 00:25:24,110 एस ब्रैकेट 1 होने जा रहा है इसके आगे दूसरा, और. 574 00:25:24,110 --> 00:25:28,050 तो सवाल मैं पूछ रहा हूँ, यहाँ, इस हालत में क्या है? 575 00:25:28,050 --> 00:25:33,984 और अधिक का i'th चरित्र है या बराबर एक छोटे करने के लिए? 576 00:25:33,984 --> 00:25:36,400 और यह, यहाँ, क्या मतलब है डबल ampersands साथ? 577 00:25:36,400 --> 00:25:36,800 दर्शकों (एक साथ): और. 578 00:25:36,800 --> 00:25:37,210 डेविड जे Malan: और. 579 00:25:37,210 --> 00:25:38,418 यह इस लिए बस के बराबर है. 580 00:25:38,418 --> 00:25:42,310 और सी में एक कीवर्ड नहीं है, आप के लिए है उपयोग, annoyingly, एम्परसेंड एम्परसेंड. 581 00:25:42,310 --> 00:25:47,520 और यह, इसके विपरीत, पूछ रहा है है चरित्र i'th है की कम से कम या बराबर 582 00:25:47,520 --> 00:25:49,030 Z लोअरकेस? 583 00:25:49,030 --> 00:25:52,440 और फिर, यहाँ कहाँ है अंतर्निहित समझ 584 00:25:52,440 --> 00:25:54,550 एक के कार्यान्वयन कंप्यूटर समझ में आता है. 585 00:25:54,550 --> 00:25:57,330 मुझे लगता है कि, भले ही नोटिस डॉट डॉट डॉट वहाँ पर, 586 00:25:57,330 --> 00:26:04,410 लोअर केस में जेड के माध्यम से एक तरह कर रहे हैं लग रहा है ऊपर पर 97 से सभी सन्निहित मूल्यों. 587 00:26:04,410 --> 00:26:07,820 >> और बड़े के लिए एक ही 65 से शुरू. 588 00:26:07,820 --> 00:26:10,410 तो takeaway, तो, कि, अंग्रेजी में है 589 00:26:10,410 --> 00:26:12,760 आप का वर्णन होगा कैसे 24 क्या कर रहा है रेखा? 590 00:26:12,760 --> 00:26:15,736 591 00:26:15,736 --> 00:26:16,728 हाँ? 592 00:26:16,728 --> 00:26:21,575 >> दर्शक: 24 पर यह देखने के लिए जाँच कर रहा है चाहे प्रत्येक चरित्र एक छोटा अक्षर है. 593 00:26:21,575 --> 00:26:24,700 डेविड जे Malan: यह है कि क्या जाँच कर रहा है प्रत्येक चरित्र एक छोटा अक्षर है. 594 00:26:24,700 --> 00:26:28,590 इसलिए और भी अधिक संक्षेप है, एस छोटा अक्षर का i'th चरित्र? 595 00:26:28,590 --> 00:26:30,690 यही कारण है कि हम कर रहे हैं सब तार्किक यहाँ व्यक्त 596 00:26:30,690 --> 00:26:33,750 एक छोटी सी cryptically, लेकिन अंततः सुंदर straightforwardly. 597 00:26:33,750 --> 00:26:36,480 चरित्र लोअरकेस i'th है की है? 598 00:26:36,480 --> 00:26:40,130 >> यदि ऐसा है, और यहाँ जहां चीजें है एक छोटे से मन झुकने मिल 599 00:26:40,130 --> 00:26:44,760 बस एक पल के लिए, यदि हां, तो जाने आगे और एक चरित्र बाहर प्रिंट. 600 00:26:44,760 --> 00:26:47,360 तो यह सिर्फ एक प्लेसहोल्डर है, लेकिन क्या चरित्र? 601 00:26:47,360 --> 00:26:53,710 क्यों मैं ब्रैकेट मैं कर रहा हूँ शून्य से यहाँ इस अभिव्यक्ति? 602 00:26:53,710 --> 00:26:55,110 >> वैसे यहाँ पैटर्न का नोटिस. 603 00:26:55,110 --> 00:26:57,380 वास्तविक संख्या इतनी ज्यादा फर्क नहीं है. 604 00:26:57,380 --> 00:27:02,700 लेकिन 97 है नोटिस कैसे दूर 65 से? 605 00:27:02,700 --> 00:27:03,560 >> दर्शक: 32. 606 00:27:03,560 --> 00:27:04,480 >> डेविड जे Malan: 32. 607 00:27:04,480 --> 00:27:06,890 कैसे दूर 66 से 98 है? 608 00:27:06,890 --> 00:27:07,740 >> दर्शक: 32. 609 00:27:07,740 --> 00:27:09,890 >> डेविड जे Malan: बड़ी सी से छोटी सी? 610 00:27:09,890 --> 00:27:10,420 32. 611 00:27:10,420 --> 00:27:14,550 तो 32 हॉप्स वहाँ दूसरे के लिए एक पत्र. 612 00:27:14,550 --> 00:27:17,790 तो स्पष्ट रूप से मैं कर सकता कि करने के लिए यह आसान बनाने में. 613 00:27:17,790 --> 00:27:20,400 लेकिन तब मैं एक तरह से कठिन कोडिंग कर रहा हूँ इस निम्न स्तर समझ 614 00:27:20,400 --> 00:27:21,740 कोई पाठक कभी है कि समझने की जा रही है. 615 00:27:21,740 --> 00:27:25,080 इसलिए मैं यह रूप में सामान्यीकरण करने के लिए जा रहा हूँ, मैं पता छोटे अक्षरों बड़ा रहे हैं. 616 00:27:25,080 --> 00:27:28,400 मैं राजधानी पत्र हैं पता छोटे मूल्यों, विडंबना यह है. 617 00:27:28,400 --> 00:27:33,216 >> लेकिन यह करने के लिए प्रभावी ढंग से बराबर है एस ब्रैकेट मैं से 32 घटाना कह. 618 00:27:33,216 --> 00:27:35,430 इन के संदर्भ में तो पत्र, पत्र अगर 619 00:27:35,430 --> 00:27:38,950 एक, लोअरकेस होना होता है एक, और मैं 32 घटाना, 620 00:27:38,950 --> 00:27:43,442 कि क्या प्रभाव पड़ता है, गणितीय, पर एक छोटे? 621 00:27:43,442 --> 00:27:44,400 दर्शक: Capitalizes-- 622 00:27:44,400 --> 00:27:45,691 डेविड जे Malan: यह capitalizes. 623 00:27:45,691 --> 00:27:48,440 और वास्तव में, इस कारण है कि हमारे कार्यक्रम शून्य भुनाने कहा जाता है. 624 00:27:48,440 --> 00:27:51,590 इस कार्यक्रम या तो एक अक्षर, 625 00:27:51,590 --> 00:27:54,580 अगर यह होता है की जाँच के बाद वास्तव में एक छोटा अक्षर. 626 00:27:54,580 --> 00:27:59,810 अन्यथा, लाइन 30 में, मैं तो क्या करें यह मैं हूँ कि एक छोटा अक्षर नहीं है 627 00:27:59,810 --> 00:28:02,852 एक विशेष पर पर देख पाश में चलना. 628 00:28:02,852 --> 00:28:03,890 बस इसे बाहर प्रिंट. 629 00:28:03,890 --> 00:28:07,010 >> तो सामान को बदल नहीं है कि यहां तक ​​कि छोटा अक्षर नहीं है. 630 00:28:07,010 --> 00:28:10,790 करने के लिए अपने आप को सीमित करें छोटी सी जेड के माध्यम से छोटे से एक. 631 00:28:10,790 --> 00:28:12,730 अब यह काफी रहस्यमय है. 632 00:28:12,730 --> 00:28:15,230 लेकिन दिन के अंत में, इस कैसे हम एक समय की बात है, 633 00:28:15,230 --> 00:28:16,460 चीजों को लागू करने के लिए किया था. 634 00:28:16,460 --> 00:28:19,780 मैं बजाय भुनाने खोलते हैं एक, ओह भगवान का शुक्र है. 635 00:28:19,780 --> 00:28:22,320 एक समारोह नहीं है ऊपरी लिए कहा जाता है कि यह कर सकते हैं 636 00:28:22,320 --> 00:28:25,410 हम बस किया था सब कुछ करना एक काफी कम स्तर पर. 637 00:28:25,410 --> 00:28:28,752 >> अब तक ऊपरी दिलचस्प है यह एक फ़ाइल में घोषित किया जाता है, क्योंकि 638 00:28:28,752 --> 00:28:31,210 और आप केवल यह पता होगा प्रलेखन की जाँच करके, 639 00:28:31,210 --> 00:28:35,730 या वर्ग, जहां में, कहते हैं, कहा जा रहा है यह एक फ़ाइल बुलाया ctype.h में मौजूद है. 640 00:28:35,730 --> 00:28:37,630 तो यह हमारा एक और नए दोस्त है. 641 00:28:37,630 --> 00:28:40,750 और ऊपरी ठीक है के लिए जैसा कि इसके नाम से पता चलता है क्या. 642 00:28:40,750 --> 00:28:44,860 >> आप के बीच, एक तर्क के रूप में पारित कर सकते हैं इन कोष्ठकों, कुछ चरित्र. 643 00:28:44,860 --> 00:28:48,390 मैं i'th चरित्र में पारित करने के लिए जा रहा हूँ के बारे में हमारी कल्पना नए अंकन का उपयोग कर रहा है 644 00:28:48,390 --> 00:28:49,870 वर्ग कोष्ठक शामिल. 645 00:28:49,870 --> 00:28:53,391 और एक अनुमान ले, वापसी क्या है ऊपरी के मूल्य जाहिरा तौर पर जा रहा 646 00:28:53,391 --> 00:28:53,890 हो सकता है? 647 00:28:53,890 --> 00:28:56,460 648 00:28:56,460 --> 00:28:57,770 बड़े अक्षर. 649 00:28:57,770 --> 00:28:58,620 बड़े अक्षर. 650 00:28:58,620 --> 00:29:02,330 >> तो मैं छोटा अक्षर एक में पास, उम्मीद है, ऊपरी करने की परिभाषा से, 651 00:29:02,330 --> 00:29:05,600 यह एक वापस करने के लिए जा रहा है अन्यथा अपरकेस ए, 652 00:29:05,600 --> 00:29:08,590 इसमें एक छोटा अक्षर नहीं है पहले स्थान पर, मैं सिर्फ इसे बाहर प्रिंट. 653 00:29:08,590 --> 00:29:10,800 और वास्तव में, नोटिस यहाँ दूसरा दोस्त. 654 00:29:10,800 --> 00:29:13,840 इतना ही नहीं ऊपरी मौजूद करने के लिए, लेकिन, कम है जो 655 00:29:13,840 --> 00:29:16,200 वास्तव में मेरे लिए उस सवाल का जवाब. 656 00:29:16,200 --> 00:29:19,730 >> अब इन बातों को लिखा था कि जो कोई भी, 10s साल पहले, आपको पता है क्या? 657 00:29:19,730 --> 00:29:23,840 ऊपरी को लागू किया गया है इस तरह कोड का उपयोग कम है. 658 00:29:23,840 --> 00:29:27,270 लेकिन साथ फिर से, संगत दूर सार संक्षेप के इस विचार, 659 00:29:27,270 --> 00:29:29,190 एक तरह से, निचले स्तर कार्यान्वयन विवरण. 660 00:29:29,190 --> 00:29:32,600 और लोगों के कंधों पर खड़े जो कार्यों का उपयोग कर, हमारे सामने आया 661 00:29:32,600 --> 00:29:36,300 ऊपरी पसंद है और, जो कम है शानदार काफी अच्छी तरह से कर रहे हैं 662 00:29:36,300 --> 00:29:40,190 वे क्या करते हैं कहने के लिए नामित किया गया है, एक अद्भुत प्रतिमान को अपनाने के लिए. 663 00:29:40,190 --> 00:29:44,040 >> अब, यह मैंने पढ़ा तो पता चला है कि , के लिए आदमी पृष्ठ के ऊपरी हिस्से में कहते हैं, 664 00:29:44,040 --> 00:29:45,010 मैं कुछ सीखते हैं. 665 00:29:45,010 --> 00:29:46,890 तो आदमी toupper. 666 00:29:46,890 --> 00:29:48,050 यह थोड़ा भारी है. 667 00:29:48,050 --> 00:29:51,110 लेकिन नोटिस, यहां की कि उल्लेख है मैं इस्तेमाल करना चाहिए कि हेडर फाइल. 668 00:29:51,110 --> 00:29:54,460 एक तरफ, क्योंकि इस रूप में भ्रामक है, समारोह 669 00:29:54,460 --> 00:29:59,070 ints के बजाय घर का काम का उपयोग करता है त्रुटि जाँच के कारणों के लिए. 670 00:29:59,070 --> 00:30:01,260 लेकिन हम शायद आऊँगा वापस करने के लिए कि भविष्य में. 671 00:30:01,260 --> 00:30:05,910 >> लेकिन ऊपरी धर्मान्तरित करने के लिए, यहाँ, नोटिस यदि संभव हो तो पत्र सी अपरकेस. 672 00:30:05,910 --> 00:30:07,674 इसलिए कि बहुत सीधा है. 673 00:30:07,674 --> 00:30:09,340 और अब के एक छोटे से अधिक विशिष्ट हो. 674 00:30:09,340 --> 00:30:12,750 के के हिस्से में देखें मान तहत आदमी पेज. 675 00:30:12,750 --> 00:30:15,420 मान है परिवर्तित पत्र की. 676 00:30:15,420 --> 00:30:18,690 या सी, यदि रूपांतरण संभव नहीं था, 677 00:30:18,690 --> 00:30:20,250 जहां सी मूल इनपुट है. 678 00:30:20,250 --> 00:30:24,140 जो मैं से, यहाँ से पता ऊपरी करने के लिए तर्क. 679 00:30:24,140 --> 00:30:25,780 >> तो इस का takeaway क्या है? 680 00:30:25,780 --> 00:30:28,060 मान है परिवर्तित पत्र की, 681 00:30:28,060 --> 00:30:32,110 या सी, मूल पत्र, अगर रूपांतरण संभव नहीं था. 682 00:30:32,110 --> 00:30:36,460 क्या सुधार इसलिए मैं कर सकता हूँ मेरे कोड का डिजाइन करने के लिए बनाते हैं? 683 00:30:36,460 --> 00:30:37,146 हाँ? 684 00:30:37,146 --> 00:30:38,810 >> दर्शक: तुम किसी और को हटा सकते हैं. 685 00:30:38,810 --> 00:30:40,810 डेविड जे Malan: मैं कर सकता हूँ और बयान को हटाने, 686 00:30:40,810 --> 00:30:42,510 और नहीं बस और बयान. 687 00:30:42,510 --> 00:30:44,150 >> दर्शक: आप [अश्राव्य] को हटा सकते हैं. 688 00:30:44,150 --> 00:30:46,310 >> डेविड जे Malan: मैं कर सकता हूँ पूरे कांटा हटाने 689 00:30:46,310 --> 00:30:48,209 सड़क में, और अगर पूरी तरह. 690 00:30:48,209 --> 00:30:50,250 तो वास्तव में, मुझे खुला इस के अंतिम संस्करण, 691 00:30:50,250 --> 00:30:55,540 अगर, -2 भुनाने और कैसे सिर्फ नोटिस आप, सेक्सी, कोड अब हो रही है होगा, 692 00:30:55,540 --> 00:31:00,040 उस में मैं कुछ से कम है सात या तो बस से चार लाइनों, 693 00:31:00,040 --> 00:31:03,850 मैं इरादा है कि कार्यक्षमता बस ऊपरी को फोन करके, 694 00:31:03,850 --> 00:31:09,410 एस ब्रैकेट मैं, और मुद्रण में गुजर बाहर, प्लेसहोल्डर% ग के साथ, 695 00:31:09,410 --> 00:31:11,090 उस विशेष चरित्र. 696 00:31:11,090 --> 00:31:14,560 >> अब यकीनन, एक बग है, या एक बग के कम से कम जोखिम, 697 00:31:14,560 --> 00:31:15,350 इस कार्यक्रम में. 698 00:31:15,350 --> 00:31:18,200 इसलिए अभी वापस आने के लिए पहले के एक takeaway के लिए, 699 00:31:18,200 --> 00:31:21,820 शायद मैं भी क्या करना चाहिए इस कार्यक्रम में यह और अधिक मजबूत बनाने के लिए, 700 00:31:21,820 --> 00:31:24,974 कोई रास्ता नहीं है कि इतना है कि यह कर सकते हैं और भी दुर्लभ मामलों में, दुर्घटना? 701 00:31:24,974 --> 00:31:26,390 दर्शक: यह रिक्त नहीं है सुनिश्चित करें. 702 00:31:26,390 --> 00:31:28,056 डेविड जे Malan: यह रिक्त नहीं है सुनिश्चित करें. 703 00:31:28,056 --> 00:31:31,030 तो सच में, इस सुपर बनाने के लिए उचित, मैं ऐसा कुछ करना चाहिए 704 00:31:31,030 --> 00:31:35,300 एस तो रिक्त नहीं है, तो आगे बढ़ो और निष्पादित 705 00:31:35,300 --> 00:31:38,470 कोड की इन लाइनों, जो मैं कर सकता हूँ तो लगता है कि जैसे मांगपत्र, 706 00:31:38,470 --> 00:31:39,870 और फिर मेरे करीब गले में डाल दिया. 707 00:31:39,870 --> 00:31:41,550 एक साथ दो विचारों के बांधने तो अच्छा है. 708 00:31:41,550 --> 00:31:42,429 हाँ? 709 00:31:42,429 --> 00:31:44,470 दर्शक: आप इस्तेमाल कर सकते एक के बजाय, पाश, जबकि करते हैं? 710 00:31:44,470 --> 00:31:47,270 डेविड जे Malan: सका मैं एक जबकि पाश करते हैं? 711 00:31:47,270 --> 00:31:50,020 दर्शक: --you बनाना चाहते आप वास्तव में [अश्राव्य] कि. 712 00:31:50,020 --> 00:31:51,728 डेविड जे Malan: सका आप एक करते हैं का उपयोग करें? 713 00:31:51,728 --> 00:31:52,450 संक्षिप्त जवाब है, नहीं. 714 00:31:52,450 --> 00:31:54,700 आप के बारे में रहे क्योंकि दूसरे कोने मामले परिचय. 715 00:31:54,700 --> 00:31:56,660 स्ट्रिंग शून्य लंबाई की है. 716 00:31:56,660 --> 00:31:59,600 उदाहरण के लिए, मैं सिर्फ मारा कभी Zamyla टाइपिंग के बिना, लिखें. 717 00:31:59,600 --> 00:32:02,490 मैं वापस एक वास्तविक आप हाथ करने के लिए जा रहा हूँ स्ट्रिंग, हम अंत में देखेंगे, 718 00:32:02,490 --> 00:32:03,780 उस शून्य अक्षर है. 719 00:32:03,780 --> 00:32:05,630 यह अभी भी एक स्ट्रिंग है, यह सिर्फ सुपर कम है. 720 00:32:05,630 --> 00:32:07,960 लेकिन आप जबकि एक मत का उपयोग करते हैं, आप आँख बंद करके जा रहे हैं 721 00:32:07,960 --> 00:32:10,050 साथ कुछ करने की कोशिश कि स्ट्रिंग के लिए सम्मान, 722 00:32:10,050 --> 00:32:12,537 और वहाँ कुछ भी नहीं होने जा रहा है. 723 00:32:12,537 --> 00:32:18,607 >> दर्शक: ठीक है, अगर तुम किया ऐसा [अश्राव्य] s-- जबकि 724 00:32:18,607 --> 00:32:21,190 डेविड जे Malan: ओह, मैं देख रहा रखने उपयोगकर्ता से एक स्ट्रिंग हो रही है. 725 00:32:21,190 --> 00:32:23,525 इसलिए संक्षिप्त उत्तर है, आप , और तंग कर रख सकता है 726 00:32:23,525 --> 00:32:26,150 उन्हें आप पर है कि एक स्ट्रिंग देने के लिए स्मृति में फिट करने के लिए काफी कम. 727 00:32:26,150 --> 00:32:26,700 बिल्कुल. 728 00:32:26,700 --> 00:32:27,630 मैं बस नहीं करने के लिए चुना है. 729 00:32:27,630 --> 00:32:30,505 वे मुझे स्ट्रिंग मैं नहीं देते चाहते हैं, मैं छोड़ रहा हूँ, मैं दे रहा हूँ. 730 00:32:30,505 --> 00:32:33,260 लेकिन बिल्कुल, उस उद्देश्य के लिए, आप बिल्कुल ऐसा कर सकता है. 731 00:32:33,260 --> 00:32:37,500 >> तो लाइब्रेरी के हेडर फाइल कि हम अब यहाँ, ये हैं के साथ परिचित हैं. 732 00:32:37,500 --> 00:32:41,550 मानक मैं / हे, CS50.h, string.h, ctype.h, और, वास्तव में, वहाँ दूसरों रहे हैं. 733 00:32:41,550 --> 00:32:44,460 आप में से कुछ की खोज की है math.h. में गणित पुस्तकालय 734 00:32:44,460 --> 00:32:48,200 लेकिन मेरे लिए, अब, आप परिचय इस संसाधन है कि CS50 स्टाफ, Davin, 735 00:32:48,200 --> 00:32:50,630 और रोब, और Gabe विशेष एक साथ डाल दिया है. 736 00:32:50,630 --> 00:32:52,630 उस पर जल्द ही कड़ी होगी पाठ्यक्रम की वेबसाइट. 737 00:32:52,630 --> 00:32:54,870 यह CS50 संदर्भ कहा जाता है. 738 00:32:54,870 --> 00:32:58,230 >> बस आप एक त्वरित देने के लिए कौन सा यह इस प्रकार के स्वाद, काम करता है. 739 00:32:58,230 --> 00:33:00,740 मुझे reference.cs50.net के लिए चलते हैं. 740 00:33:00,740 --> 00:33:02,990 आप बाईं तरफ देखेंगे एक भारी सूची पक्ष 741 00:33:02,990 --> 00:33:04,595 सी के साथ आते हैं कि कार्यों की. 742 00:33:04,595 --> 00:33:07,790 लेकिन मैं इस पल के लिए, ध्यान, strlen तरह से कुछ के बारे में, 743 00:33:07,790 --> 00:33:08,746 मैं वहाँ इसे टाइप कर सकते हैं. 744 00:33:08,746 --> 00:33:10,870 यह सूची नीचे फिल्टर मैं देखभाल के बारे में अभी क्या करने के लिए. 745 00:33:10,870 --> 00:33:11,940 मैं इसे क्लिक करने के लिए जा रहा हूँ. 746 00:33:11,940 --> 00:33:14,740 और अब, छोड़ा आप हमें आशा है क्या देखेंगे 747 00:33:14,740 --> 00:33:18,290 एक और अधिक सरल, मानव है कैसे के अनुकूल स्पष्टीकरण 748 00:33:18,290 --> 00:33:19,170 इस समारोह में काम करता है. 749 00:33:19,170 --> 00:33:20,600 >> एक स्ट्रिंग की लंबाई देता है. 750 00:33:20,600 --> 00:33:24,060 यहाँ एक सारांश यहाँ, आप कैसे हैं हेडर फाइल के संदर्भ में इसका इस्तेमाल करते हैं, 751 00:33:24,060 --> 00:33:27,430 और क्या समारोह के संदर्भ में अपने तर्कों के संदर्भ में की तरह लग रहा है. 752 00:33:27,430 --> 00:33:30,250 और फिर यहाँ, रिटर्न एक स्ट्रिंग की लंबाई. 753 00:33:30,250 --> 00:33:34,280 लेकिन और अधिक आरामदायक आप उन लोगों के लिए, आप वास्तव में, अधिक आराम क्लिक कर सकते हैं 754 00:33:34,280 --> 00:33:37,070 और इस की सामग्री पेज, अब बदल जाएगा 755 00:33:37,070 --> 00:33:41,660 क्या की मूलभूत मूल्यों होने के लिए आप मैन पेज का उपयोग करके मिलता है. 756 00:33:41,660 --> 00:33:44,100 >> CS50, दूसरे शब्दों में संदर्भ एक सरलीकरण है 757 00:33:44,100 --> 00:33:46,220 छात्रों के लिए कर्मचारियों द्वारा आदमी पृष्ठों, के. 758 00:33:46,220 --> 00:33:49,320 विशेष रूप से, उन कम आराम और में, के बीच इतना है कि आप 759 00:33:49,320 --> 00:33:51,660 रैप करने के लिए प्रयास करने के लिए नहीं है अपने मन के चारों ओर, सच में, 760 00:33:51,660 --> 00:33:55,030 कुछ काफी गूढ़ वाक्यविन्यास कुछ देर और प्रलेखन. 761 00:33:55,030 --> 00:33:57,650 >> तो ध्यान में रखें कि दिन में आने के लिए. 762 00:33:57,650 --> 00:33:59,560 तो यहाँ, फिर से, एक Zamyla है. 763 00:33:59,560 --> 00:34:03,255 चलो अब है कि एक सवाल पूछना एक छोटे से अधिक मानव सुलभ. 764 00:34:03,255 --> 00:34:05,380 हो गया है जो चांग के लिए धन्यवाद, अधिक हाथियों मुद्रण 765 00:34:05,380 --> 00:34:07,090 पिछले कुछ दिनों के लिए लगातार. 766 00:34:07,090 --> 00:34:09,730 हम देने के लिए एक अवसर है दूर उनमें से कम से कम एक. 767 00:34:09,730 --> 00:34:13,239 हम सिर्फ एक स्वयंसेवक मिल सकता है स्क्रीन पर आकर्षित करने के लिए ऊपर की ओर आने के लिए. 768 00:34:13,239 --> 00:34:14,530 कैसे यहाँ के बारे में? 769 00:34:14,530 --> 00:34:15,340 >> ऊपर आओ. 770 00:34:15,340 --> 00:34:16,720 आपका नाम क्या है? 771 00:34:16,720 --> 00:34:17,219 एलेक्स: एलेक्स. 772 00:34:17,219 --> 00:34:17,760 डेविड जे Malan: एलेक्स. 773 00:34:17,760 --> 00:34:18,259 ठीक है. 774 00:34:18,259 --> 00:34:19,388 एलेक्स, ऊपर की ओर आते हैं. 775 00:34:19,388 --> 00:34:21,679 हम देख रहे हैं के बारे अपने यहाँ स्क्रीन पर लिखावट. 776 00:34:21,679 --> 00:34:24,325 777 00:34:24,325 --> 00:34:25,570 सब ठीक है, आपसे मिलकर अच्छा लगा. 778 00:34:25,570 --> 00:34:26,429 >> एलेक्स: अच्छा तुम तुम से मिलने. 779 00:34:26,429 --> 00:34:27,512 >> डेविड जे Malan: सब ठीक है. 780 00:34:27,512 --> 00:34:28,969 तो, सुपर सरल व्यायाम. 781 00:34:28,969 --> 00:34:31,440 बार के लिए उच्च नहीं है आज एक हाथी मिलता है. 782 00:34:31,440 --> 00:34:33,439 आप getstring की भूमिका निभा रहे हैं. 783 00:34:33,439 --> 00:34:35,980 और मैं सिर्फ आपको बताने जा रहा हूँ तुम मिल गया है कि स्ट्रिंग. 784 00:34:35,980 --> 00:34:38,080 और, आपको लगता है कि getstring, बुलाया गया है. 785 00:34:38,080 --> 00:34:42,480 और मानव, मुझे पसंद है, Zamyla, जेड ए एम वाई एल ए में टाइप. 786 00:34:42,480 --> 00:34:45,650 बस आगे बढ़ो और पर Zamyla लिखना स्क्रीन आपको यह मिल गया है के रूप में हालांकि 787 00:34:45,650 --> 00:34:47,250 और स्मृति में कहीं न कहीं यह संग्रहीत. 788 00:34:47,250 --> 00:34:52,370 789 00:34:52,370 --> 00:34:55,570 >> कई क्या होगा के लिए रवाना कक्ष ठीक है कि अन्य words--, चलते रहो. 790 00:34:55,570 --> 00:34:59,620 >> [हंसी] 791 00:34:59,620 --> 00:35:00,800 >> तो Zamyla, बहुत बढ़िया. 792 00:35:00,800 --> 00:35:04,880 तो अब लगता है कि तुम, getstring, फिर कहा जाता है. 793 00:35:04,880 --> 00:35:09,350 और इसलिए, मैं, आप प्रदान कीबोर्ड, एक और नाम, बेलिंडा के साथ. 794 00:35:09,350 --> 00:35:17,560 795 00:35:17,560 --> 00:35:18,060 ठीक है. 796 00:35:18,060 --> 00:35:22,380 और अब अगली बार getstring है कहा जाता है, मैं, Gabe की तरह कुछ में टाइप करें 797 00:35:22,380 --> 00:35:27,560 जी ए बी ई. आप वास्तव में ले जा रहे हैं दिल रैंडम एक्सेस मेमोरी के लिए. 798 00:35:27,560 --> 00:35:29,631 सब कुछ है जो आ रहा है पूरी तरह से बेतरतीब ढंग से. 799 00:35:29,631 --> 00:35:30,130 ठीक. 800 00:35:30,130 --> 00:35:31,104 >> [हंसी] 801 00:35:31,104 --> 00:35:32,520 एलेक्स: माफ करना मेरी लिखावट खराब है. 802 00:35:32,520 --> 00:35:33,770 डेविड जे Malan: नहीं, यह ठीक है. 803 00:35:33,770 --> 00:35:40,480 और कैसे रोब, आर ओ बी के बारे में. ठीक. 804 00:35:40,480 --> 00:35:41,020 अच्छा. 805 00:35:41,020 --> 00:35:43,853 तो मैं आपको होगा सोचा भी नहीं था एक तरह से इस तरह से चीजों को बाहर करना. 806 00:35:43,853 --> 00:35:45,020 लेकिन हम यह काम कर सकते हैं. 807 00:35:45,020 --> 00:35:48,810 तो आप बिछाने के बारे में कैसे जाना था स्मृति में इन अक्षरों से बाहर? 808 00:35:48,810 --> 00:35:51,310 दूसरे शब्दों में, हम में से लगता है कि अगर इस आयताकार काली स्क्रीन 809 00:35:51,310 --> 00:35:53,550 एक प्रतिनिधित्व के रूप में कंप्यूटर की रैम, या स्मृति. 810 00:35:53,550 --> 00:35:55,850 >> और कहा कि राम सिर्फ याद बाइट्स की एक पूरी गुच्छा, 811 00:35:55,850 --> 00:35:57,480 और बाइट्स बिट्स की एक पूरी गुच्छा रहे हैं. 812 00:35:57,480 --> 00:35:59,350 और बिट्स किसी न किसी तरह कर रहे हैं आम तौर पर लागू किया 813 00:35:59,350 --> 00:36:01,119 के कुछ फार्म के साथ हार्डवेयर में बिजली. 814 00:36:01,119 --> 00:36:03,160 तो उस की तरह है हम के बारे में बात की है layering 815 00:36:03,160 --> 00:36:04,510 के लिए दी गई है और अब ले जा सकते हैं. 816 00:36:04,510 --> 00:36:07,020 आप कैसे के बारे में जाना था जहां लिखने के लिए निर्णय लेने से 817 00:36:07,020 --> 00:36:11,634 रोब बनाम Gabe बनाम Zamyla बनाम बेलिंडा? 818 00:36:11,634 --> 00:36:14,020 >> एलेक्स: मैं बस में किया था आप मुझसे कहा था कि आदेश. 819 00:36:14,020 --> 00:36:15,650 >> डेविड जे Malan: और यह सच है. 820 00:36:15,650 --> 00:36:20,100 लेकिन क्या आप जहां डाल शासित बेलिंडा के नाम और Gabe का नाम? 821 00:36:20,100 --> 00:36:20,764 >> एलेक्स: कुछ भी नहीं है? 822 00:36:20,764 --> 00:36:22,930 डेविड जे Malan [हंसते हुए] तो काम करता है, वह ठीक है. 823 00:36:22,930 --> 00:36:25,290 तो कंप्यूटर छोटे होते हैं उस से भी अधिक अर्दली. 824 00:36:25,290 --> 00:36:29,000 और इसलिए हम वहाँ रहने implement-- जब जब वास्तव में हम सिर्फ एक moment-- के लिए 825 00:36:29,000 --> 00:36:31,470 की तरह कुछ को लागू एक कंप्यूटर में getstring, 826 00:36:31,470 --> 00:36:34,480 Zamyla बहुत ज्यादा बाहर रखा जा सकता है जैसे तुम वहाँ, स्क्रीन पर किया था. 827 00:36:34,480 --> 00:36:36,660 >> और नोटिस की कुंजी क्या है यहाँ, एलेक्स क्या किया, 828 00:36:36,660 --> 00:36:40,260 एक सीमांकन की तरह है इन शब्दों में से प्रत्येक के बीच, है ना? 829 00:36:40,260 --> 00:36:46,580 आप नहीं लिखा था Z-ए एम वाई एल ए बी ई एल मैं एन डी ए जी ए B-- 830 00:36:46,580 --> 00:36:49,740 दूसरे शब्दों में, किसी तरह का है किया जा रहा है जो सीमांकन की, 831 00:36:49,740 --> 00:36:52,370 एक तरह से, यादृच्छिक रिक्ति इन विभिन्न शब्दों के बीच. 832 00:36:52,370 --> 00:36:54,120 लेकिन यह है कि क्योंकि, अच्छा है हम मनुष्य अब कर सकते हैं 833 00:36:54,120 --> 00:36:56,470 ये हैं कि कल्पना चार अलग तार. 834 00:36:56,470 --> 00:36:59,540 यह सिर्फ एक दृश्य नहीं है पात्रों के बहुत से. 835 00:36:59,540 --> 00:37:04,190 तो एक कंप्यूटर है, तो, इस बीच, Zamyla तरह एक स्ट्रिंग ले सकता है, 836 00:37:04,190 --> 00:37:07,220 उन पत्रों में से प्रत्येक डाला स्मृति की एक बाइट के अंदर. 837 00:37:07,220 --> 00:37:10,400 लेकिन यह संख्या, बहुत बड़ा है बेशक, छह अक्षर से. 838 00:37:10,400 --> 00:37:11,690 >> राम की एक पूरी गुच्छा है. 839 00:37:11,690 --> 00:37:15,330 और इसलिए आज के बाद, इस बक्से के ग्रिड जा रहा है 840 00:37:15,330 --> 00:37:17,560 क्या एलेक्स सिर्फ प्रतिनिधित्व करने के लिए स्क्रीन पर यहाँ था. 841 00:37:17,560 --> 00:37:20,937 और अब, एलेक्स, हम आपको एक पेशकश कर सकते हैं नीले या चांग से एक नारंगी हाथी. 842 00:37:20,937 --> 00:37:22,270 एलेक्स: मैं एक नीले हाथी ले जाऊँगा. 843 00:37:22,270 --> 00:37:23,120 डेविड जे Malan: एक नीले हाथी. 844 00:37:23,120 --> 00:37:25,580 तो प्रशंसा का एक बड़ा दौर, एलेक्स के लिए यहाँ, हम कर सकते हैं. 845 00:37:25,580 --> 00:37:26,100 >> [वाहवाही] 846 00:37:26,100 --> 00:37:26,766 >> एलेक्स: धन्यवाद. 847 00:37:26,766 --> 00:37:28,820 डेविड जे Malan: धन्यवाद. 848 00:37:28,820 --> 00:37:36,230 तो takeaway है, कि भले ही पैटर्न प्रकार के यहाँ, समय के साथ बदल 849 00:37:36,230 --> 00:37:40,430 बोर्ड पर, यह वहाँ था विभिन्न तार के बीच सीमांकन 850 00:37:40,430 --> 00:37:42,610 एलेक्स हमारे लिए मिल गया है. 851 00:37:42,610 --> 00:37:45,230 अब कंप्यूटर, स्पष्ट रूप से, एक ही बात कर सकता है. 852 00:37:45,230 --> 00:37:48,210 वे एक तरह से खटखटाने सकता है कहीं राम में तार. 853 00:37:48,210 --> 00:37:50,710 यहाँ तक, यहाँ पर, यहाँ, यहाँ नीचे नीचे. 854 00:37:50,710 --> 00:37:52,020 >> वे वास्तव में ऐसा कर सकता है. 855 00:37:52,020 --> 00:37:54,280 लेकिन जाहिर है, कि शायद नहीं सबसे अच्छा नियोजन. 856 00:37:54,280 --> 00:37:54,780 है ना? 857 00:37:54,780 --> 00:37:57,340 मैं एलेक्स पूछ रखा तो नाम मिलता है, शायद वह चाहते हैं 858 00:37:57,340 --> 00:38:01,370 शायद ऊपर, यहाँ कुछ और नीचे रख यहाँ, यहाँ, यहाँ, अंततः 859 00:38:01,370 --> 00:38:02,211 यहाँ पर. 860 00:38:02,211 --> 00:38:05,460 लेकिन थोड़ा और योजना के साथ, निश्चित रूप से, हम और अधिक सफाई से चीजें बाहर करना सकता है. 861 00:38:05,460 --> 00:38:07,350 और वास्तव में, कि एक कंप्यूटर क्या करता है. 862 00:38:07,350 --> 00:38:10,720 >> लेकिन पकड़ है अगर मैं अगले स्ट्रिंग 863 00:38:10,720 --> 00:38:14,050 Zamyla कुछ होने के बाद बेलिंडा की तरह, 864 00:38:14,050 --> 00:38:17,929 हम लिख सकते हैं, जहां का प्रस्ताव इस ग्रिड के संबंध में बी पत्र? 865 00:38:17,929 --> 00:38:18,720 आप कहाँ जाना चाहते हैं? 866 00:38:18,720 --> 00:38:21,480 एक के अधिकार के लिए, एक नीचे जेड, नीचे? 867 00:38:21,480 --> 00:38:23,204 अपनी पहली सहज ज्ञान क्या होगा? 868 00:38:23,204 --> 00:38:24,120 दर्शक: Z नीचे. 869 00:38:24,120 --> 00:38:25,100 डेविड जे Malan: तो Z नीचे. 870 00:38:25,100 --> 00:38:26,530 और वह सुंदर है सरल, सही है? 871 00:38:26,530 --> 00:38:29,321 यह साफ की तरह है, यह हम क्या करते हैं एक कीबोर्ड पर हम दर्ज मारा, 872 00:38:29,321 --> 00:38:31,770 या एक ईमेल एक करते समय चीजों की बुलेटेड सूची. 873 00:38:31,770 --> 00:38:34,310 लेकिन वास्तविकता यह है कि कंप्यूटर है अधिक कुशल बनने की कोशिश, 874 00:38:34,310 --> 00:38:37,170 और जितना निश्चित रटना संभव के रूप में रैम में डेटा, 875 00:38:37,170 --> 00:38:38,890 इतना है कि आप किसी भी बाइट्स बर्बाद मत करो. 876 00:38:38,890 --> 00:38:41,545 आप बर्बाद मत करो कि तो किसी भी स्क्रीन अचल संपत्ति. 877 00:38:41,545 --> 00:38:44,170 और समस्या है, हालांकि, यह है कि हम सचमुच पत्र डाल 878 00:38:44,170 --> 00:38:49,940 बी एक के बाद, कैसे हम करने जा रहे हैं Zamyla का नाम समाप्त हो जाती है, जहां पता 879 00:38:49,940 --> 00:38:51,840 और बेलिंडा के नाम शुरू होता है? 880 00:38:51,840 --> 00:38:55,270 तो आप बस, ठीक है, प्रस्तावित मनुष्य अनिवार्य रूप से, कुंजी हिट दर्ज करें. 881 00:38:55,270 --> 00:38:56,410 नीचे इसे नीचे रख दो. 882 00:38:56,410 --> 00:38:59,750 या एलेक्स किया था, भले ही अभी लेखन शुरू पिछले एक नीचे अगले नाम, 883 00:38:59,750 --> 00:39:01,583 और कहा कि एक नीचे, और तो है कि एक नीचे. 884 00:39:01,583 --> 00:39:02,510 यह एक दृश्य संकेत है. 885 00:39:02,510 --> 00:39:05,960 >> कंप्यूटर एक और दृश्य संकेत है, लेकिन यह एक छोटे से अधिक संक्षिप्त है. 886 00:39:05,960 --> 00:39:07,840 यह इस कायरता चरित्र है. 887 00:39:07,840 --> 00:39:11,890 शायद जो बैकस्लैश 0, बैकस्लैश n की याद ताजा, 888 00:39:11,890 --> 00:39:12,640 और बहुत आगे है, अब. 889 00:39:12,640 --> 00:39:14,120 विशेष भागने दृश्यों. 890 00:39:14,120 --> 00:39:19,120 बैकस्लैश 0 का रास्ता है एक पंक्ति में आठ शून्य बिट्स का प्रतिनिधित्व. 891 00:39:19,120 --> 00:39:22,000 0000 0000. 892 00:39:22,000 --> 00:39:26,130 >> आपको लगता है कि एक्सप्रेस मार्ग नहीं है अपने कीबोर्ड पर संख्या शून्य मारा, 893 00:39:26,130 --> 00:39:28,140 एक ASCII वर्ण है कि वास्तव में है. 894 00:39:28,140 --> 00:39:30,990 यह एक संख्या की तरह दिखता है, लेकिन एक दशमलव संख्या वास्तव में है 895 00:39:30,990 --> 00:39:35,910 उस परिपत्र का प्रतिनिधित्व करता है ग्लिफ़, परिपत्र टाइपफेस. 896 00:39:35,910 --> 00:39:38,410 इस बीच, बैकस्लैश शून्य सचमुच, इसका मतलब है 897 00:39:38,410 --> 00:39:40,700 मेरे लिए यहां आठ शून्य बाइट्स डाल दिया. 898 00:39:40,700 --> 00:39:42,136 >> तो यह कुछ हद तक मनमाना है. 899 00:39:42,136 --> 00:39:44,260 हम किसी भी स्वरूप में इस्तेमाल किया जा सकता था बिट्स की, लेकिन दुनिया 900 00:39:44,260 --> 00:39:46,610 कुछ वर्षों का फैसला पहले, कि प्रतिनिधित्व करने के लिए 901 00:39:46,610 --> 00:39:49,710 स्मृति में एक स्ट्रिंग के अंत, सिर्फ शून्य की एक पूरी गुच्छा रखा. 902 00:39:49,710 --> 00:39:51,000 हम उस का पता लगा सकते हैं. 903 00:39:51,000 --> 00:39:54,790 अब इसका मतलब है कि इस बात का कोई पत्र वर्णमाला शून्य के साथ प्रतिनिधित्व किया जा सकता है. 904 00:39:54,790 --> 00:39:58,480 >> लेकिन यह है कि हम पहले से ही देखा है ठीक है हम पर ऊपर में 97 पर 65 का उपयोग कर रहे हैं. 905 00:39:58,480 --> 00:40:00,290 हम कहीं भी नहीं मिला सभी शून्य के करीब है. 906 00:40:00,290 --> 00:40:03,040 907 00:40:03,040 --> 00:40:06,540 एक कंप्यूटर की स्मृति में बेलिंडा तो वास्तव में यहां से जाना जा रहा है. 908 00:40:06,540 --> 00:40:09,764 मैं पीले रंग में यह तैयार है बस यह हमारे ध्यान आकर्षित करने के लिए. 909 00:40:09,764 --> 00:40:11,680 और नोटिस भी इस पूरी तरह से मनमाना है. 910 00:40:11,680 --> 00:40:12,680 मैं एक ग्रिड के रूप में इसे तैयार किया है. 911 00:40:12,680 --> 00:40:14,460 जैसे, राम बस कुछ भौतिक वस्तु है. 912 00:40:14,460 --> 00:40:17,300 यह जरूरी नहीं है पंक्तियों और स्तंभों, दर असल. 913 00:40:17,300 --> 00:40:20,490 यह सिर्फ बाइट की एक पूरी गुच्छा मिल गया है किसी भी तरह के हार्डवेयर में कार्यान्वित किया. 914 00:40:20,490 --> 00:40:22,817 लेकिन बेलिंडा मैं के बाद अगर Gabe के नाम में टाइप, 915 00:40:22,817 --> 00:40:25,650 वह स्मृति में यहां खत्म हो जा रहा है और मैं Daven के नाम में टाइप हैं, 916 00:40:25,650 --> 00:40:27,316 उदाहरण के लिए, वह यहां समाप्त करने के लिए जा रहा है. 917 00:40:27,316 --> 00:40:29,310 और मैं करने के लिए जारी रख सकते हैं और भी अधिक नाम लिखिए. 918 00:40:29,310 --> 00:40:32,100 >> दुर्भाग्य से, मैं करने की कोशिश एक सुपर लंबे नाम लिखना, 919 00:40:32,100 --> 00:40:33,730 मैं अंत में स्मृति से बाहर चला सकता है. 920 00:40:33,730 --> 00:40:37,810 जो मामले में, getstring है जैसा कि हमने कहा, रिक्त वापस जाने के लिए जा रहा है. 921 00:40:37,810 --> 00:40:41,720 लेकिन शुक्र है, कम से कम इस दृश्य में यहाँ, हम काफी है कि अभी तक नहीं मिला. 922 00:40:41,720 --> 00:40:45,860 >> अब क्या अच्छा है यह है कि बातों के इलाज का सामान्य विचार 923 00:40:45,860 --> 00:40:49,720 बक्से में किया जा रहा है के रूप में सी की एक विशेषता के प्रतिनिधि 924 00:40:49,720 --> 00:40:52,690 और भाषाओं का एक बहुत, एक सरणी के रूप में जाना जाता है. 925 00:40:52,690 --> 00:40:55,490 एक सरणी डेटा का एक प्रकार है. 926 00:40:55,490 --> 00:40:57,380 यदि आप होगा यह एक आंकड़ा संरचना है. 927 00:40:57,380 --> 00:41:01,160 वास्तव में यह की भावना में संरचना, एक तरह से, कम से कम, एक बॉक्स की तरह लग रही 928 00:41:01,160 --> 00:41:02,320 अपने मन की आंखों में. 929 00:41:02,320 --> 00:41:09,680 एक सरणी एक सन्निहित है समान डेटा प्रकार के अनुक्रम, 930 00:41:09,680 --> 00:41:11,330 वापस वापस करने के लिए वापस करने के लिए वापस करने के लिए. 931 00:41:11,330 --> 00:41:14,720 >> अन्य में तो एक स्ट्रिंग, शब्द, घर का काम की एक सरणी है. 932 00:41:14,720 --> 00:41:16,120 अक्षर की एक सरणी. 933 00:41:16,120 --> 00:41:19,070 लेकिन यह तुम हो सकता है पता चला है बातों के गुच्छों की सरणियों. 934 00:41:19,070 --> 00:41:21,870 वास्तव में, हम भी डाल सकते हैं एक सरणी में संख्या. 935 00:41:21,870 --> 00:41:23,920 फार्म तो जो में हम शुरू करने जा रहे हैं 936 00:41:23,920 --> 00:41:26,590 इस डेटा की घोषणा एक सरणी के रूप में जाना जाता संरचना 937 00:41:26,590 --> 00:41:28,250 भी वर्ग कोष्ठक का उपयोग करने के लिए जा रहा है. 938 00:41:28,250 --> 00:41:31,500 लेकिन इन वर्ग कोष्ठक करने जा रहे हैं इस संदर्भ में अलग अर्थ है. 939 00:41:31,500 --> 00:41:33,450 >> और इस प्रकार की यह देखते हैं. 940 00:41:33,450 --> 00:41:36,780 मैं खोला कि मान लीजिए यहाँ एक नया फ़ाइल. 941 00:41:36,780 --> 00:41:38,535 और मैं ages.c. के रूप में सहेजें 942 00:41:38,535 --> 00:41:41,280 943 00:41:41,280 --> 00:41:43,470 और मैं यहाँ अपने फ़ोल्डर में इस बचा लेंगे. 944 00:41:43,470 --> 00:41:46,130 और अब मैं आगे जाने के लिए जा रहा हूँ और कुछ लिखना प्रारंभ 945 00:41:46,130 --> 00:41:53,940 जैसे शामिल हैं, CS50.h शामिल stdio.h, मुख्य शून्य int. 946 00:41:53,940 --> 00:41:57,370 और फिर यहाँ के अंदर, मैं चाहता हूँ पहले उम्र कहा जाता है एक पूर्णांक है. 947 00:41:57,370 --> 00:42:01,371 >> और मैं एक पाने के लिए है कि उपयोग करने के लिए जा रहा हूँ उसके या उसकी उम्र के लिए उपयोगकर्ता से int. 948 00:42:01,371 --> 00:42:04,620 लेकिन इस कार्यक्रम के द्वारा इस्तेमाल के लिए होती है जो कुछ भी संदर्भ के लिए कई लोगों को,. 949 00:42:04,620 --> 00:42:05,490 मैं लोगों की एक लाइन मिल गया है. 950 00:42:05,490 --> 00:42:08,281 वे सब के सब में टाइप करने के लिए उनके शायद कुछ, मैं नहीं जानता के लिए उम्र, 951 00:42:08,281 --> 00:42:10,530 प्रतियोगिता, या घटना वे के लिए आ गया है कि. 952 00:42:10,530 --> 00:42:13,030 तो अगली व्यक्ति, मैं एक और चर की जरूरत है. 953 00:42:13,030 --> 00:42:15,790 >> मैं सिर्फ क्योंकि अगर उम्र getInt हो जाता है, वह है 954 00:42:15,790 --> 00:42:18,500 जा पीटना, या अधिलेखित करना पिछले व्यक्ति की उम्र. 955 00:42:18,500 --> 00:42:19,760 तो यह अच्छा नहीं है. 956 00:42:19,760 --> 00:42:21,790 मेरी पहली वृत्ति तो हो सकता है, ओह, सब ठीक है, 957 00:42:21,790 --> 00:42:26,260 मैं कई लोगों के प्राप्त करना चाहते हैं ages--, चलो इस age1 कहते हैं 958 00:42:26,260 --> 00:42:31,280 पूर्णांक age2 पूर्णांक हो जाता है, पूर्णांक age3 getInt हो जाता है. 959 00:42:31,280 --> 00:42:35,340 और अब मैं उपयोग करने के लिए जा रहा हूँ यहाँ कुछ pseudocode कोड. 960 00:42:35,340 --> 00:42:37,679 >> उन लोगों की संख्या के साथ कुछ करना. 961 00:42:37,679 --> 00:42:40,470 हम एक दिन के लिए छोड़ देंगे क्या हम वहाँ क्या कर रहे हैं क्योंकि हम केवल 962 00:42:40,470 --> 00:42:44,200 पल के लिए देखभाल age1, age2, age3 के बारे में. 963 00:42:44,200 --> 00:42:46,450 दुर्भाग्य से, मैं एक बार इस कार्यक्रम के संकलन 964 00:42:46,450 --> 00:42:51,140 और, वास्तविक उपयोगकर्ताओं की सामने रख दिया मौलिक गरीब डिजाइन क्या है 965 00:42:51,140 --> 00:42:53,890 मैं लगते निर्णय लिया है करने के लिए? 966 00:42:53,890 --> 00:42:54,624 हाँ? 967 00:42:54,624 --> 00:42:55,499 दर्शक: [अश्राव्य] 968 00:42:55,499 --> 00:42:58,071 969 00:42:58,071 --> 00:42:59,820 डेविड जे Malan: हाँ, मैं भी कोशिश नहीं की है 970 00:42:59,820 --> 00:43:02,028 कितने युगों बाहर निकालने के लिए मैं वास्तव में के बारे में परवाह है? 971 00:43:02,028 --> 00:43:05,380 मैं यहां कम से कम तीन लोगों की है, और इसलिए कम से कम तीन उम्र, 972 00:43:05,380 --> 00:43:07,260 मैं अभी भी आँख बंद करके तीन उम्मीद कर रहा हूँ. 973 00:43:07,260 --> 00:43:08,720 भगवान चार लोगों को दिखाने के लिए न करे. 974 00:43:08,720 --> 00:43:10,990 मेरा प्रोग्राम अभी भी उन्हें समर्थन नहीं करेंगे. 975 00:43:10,990 --> 00:43:13,280 >> और तो यह लंबी कहानी संक्षेप में, एक अच्छी आदत नहीं है. 976 00:43:13,280 --> 00:43:13,780 है ना? 977 00:43:13,780 --> 00:43:16,530 मैं अनिवार्य रूप से नकल किया गया था और कोड चिपकाने और बस tweaking 978 00:43:16,530 --> 00:43:17,430 चर नाम. 979 00:43:17,430 --> 00:43:22,410 और, मेरे भगवान, तुम था, अगर नहीं तीन उम्र है, लेकिन 10, या 100, या यहां तक ​​कि 6500 980 00:43:22,410 --> 00:43:23,820 स्नातक से नीचे, उदाहरण के लिए. 981 00:43:23,820 --> 00:43:26,950 यह विशेष रूप से नहीं किया जा रहा है सुरुचिपूर्ण कोड, या स्थायी. 982 00:43:26,950 --> 00:43:29,200 आप के लिए करने जा रहे हैं कार्यक्रम हर बार फिर से लिखना 983 00:43:29,200 --> 00:43:30,760 लोगों को परिवर्तन की अपनी संख्या. 984 00:43:30,760 --> 00:43:35,090 >> तो शुक्र है, हमारे वास्तविक में आज के लिए ages.c फ़ाइल, 985 00:43:35,090 --> 00:43:36,970 हम एक और अधिक चालाक समाधान है. 986 00:43:36,970 --> 00:43:39,800 सबसे पहले, मैं उधार लेने के लिए जा रहा हूँ , हम एक बार कुछ का उपयोग किया है का निर्माण 987 00:43:39,800 --> 00:43:43,744 इस पाने के लिए, जबकि पाश करना कमरे में लोगों की संख्या. 988 00:43:43,744 --> 00:43:46,910 मैं तो बस फिर, उपयोगकर्ता तंग करने के लिए जा रहा हूँ और फिर, वह या वह जब तक मुझे देता है 989 00:43:46,910 --> 00:43:49,260 एक सकारात्मक पूर्णांक है कि n के लिए मूल्य. 990 00:43:49,260 --> 00:43:51,590 >> मैं इस्तेमाल कर सकते थे, पिछले समय के सकारात्मक पूर्णांक मिलता है. 991 00:43:51,590 --> 00:43:53,720 लेकिन हम नहीं है कि रियल के लिए है, तो मैं आगे चला गया 992 00:43:53,720 --> 00:43:55,660 और इस विचार को कार्यान्वित कर रहे हैं. 993 00:43:55,660 --> 00:43:58,410 अब यहाँ नीचे, यह नई चाल है. 994 00:43:58,410 --> 00:44:02,260 टिप्पणी के रूप में रेखा 27, में लाइन 26 से पता चलता है में, 995 00:44:02,260 --> 00:44:05,180 एक सरणी की घोषणा जिसमें सभी की उम्र स्टोर करने के लिए. 996 00:44:05,180 --> 00:44:09,320 >> तो तुम, एक पूर्णांक नहीं नहीं प्राप्त करना चाहते हैं दो ints, लेकिन ints की एक पूरी गुच्छा. 997 00:44:09,320 --> 00:44:13,800 विशेष रूप से n पूर्णांकों थे n हो सकता है 100 हो सकता है, तीन हो, 1000 हो सकता है. 998 00:44:13,800 --> 00:44:17,570 वाक्यविन्यास, आसानी से, करने के लिए है कहते हैं, आप क्या डेटा प्रकार करना चाहते हैं? 999 00:44:17,570 --> 00:44:19,620 आप कॉल करने के लिए क्या चाहिए स्मृति की है कि हिस्सा? 1000 00:44:19,620 --> 00:44:23,530 आप ग्रिड कॉल करने के लिए क्या चाहिए कि इस pictorially की तरह लग रहा है? 1001 00:44:23,530 --> 00:44:27,700 >> और यहाँ कोष्ठक में, तुम कहते हो कितना बड़ा तुम सरणी होना चाहते हैं. 1002 00:44:27,700 --> 00:44:30,450 और इसलिए पहले, जब मैंने कहा वाक्यविन्यास, यहाँ एक छोटे से अलग है 1003 00:44:30,450 --> 00:44:33,614 हम अभी भी वर्ग कोष्ठक का उपयोग कर रहे हैं, लेकिन मैं एक सरणी की घोषणा कर रहा हूँ, 1004 00:44:33,614 --> 00:44:35,530 के अंदर संख्या वर्ग कोष्ठक साधन 1005 00:44:35,530 --> 00:44:37,610 कितना बड़ा तुम सरणी बनना चाहते हो. 1006 00:44:37,610 --> 00:44:42,490 >> इसके विपरीत, जब हम उपयोग कर रहे थे ब्रैकेट मैं एक पल पहले, एस, एक स्ट्रिंग, 1007 00:44:42,490 --> 00:44:46,820 घर का काम की एक सरणी, वास्तव में है, लेकिन आप एक चर घोषित नहीं कर रहे हैं, 1008 00:44:46,820 --> 00:44:49,760 यहाँ इस कीवर्ड के साथ के रूप में, आप बस हो रही है 1009 00:44:49,760 --> 00:44:54,280 एक विशिष्ट सूचकांक, एक विशिष्ट उस सरणी से तत्व. 1010 00:44:54,280 --> 00:44:57,090 हम जानते हैं कि एक बार, बाकी इस सरल है. 1011 00:44:57,090 --> 00:45:00,765 जब मैं पहली बार बाहर मुद्रित करने के लिए जा रहा हूँ नए हैं व्यक्ति संख्या मैं की उम्र क्या है. 1012 00:45:00,765 --> 00:45:03,890 मैं तो बस, व्यक्ति नंबर एक का कहना है कहां व्यक्ति नंबर दो, व्यक्ति तीन नंबर. 1013 00:45:03,890 --> 00:45:06,306 >> और मैं सिर्फ गणित कर रहा हूँ इसलिए कि सामान्य लोगों की तरह, 1014 00:45:06,306 --> 00:45:09,030 हम इस बात के लिए एक से गिनती कार्यक्रम, और नहीं शून्य से. 1015 00:45:09,030 --> 00:45:13,620 तब मैं getint कहते हैं, लेकिन मैं दुकान उम्र में जवाब मैं ब्रैकेट. 1016 00:45:13,620 --> 00:45:16,610 जो सरणी में i'th उम्र है. 1017 00:45:16,610 --> 00:45:21,640 पिछली बार जबकि हम इलाज कर रहे थे तो Zamyla के नाम के लिए घर का काम के रूप में इन बक्सों, 1018 00:45:21,640 --> 00:45:22,490 और दूसरों. 1019 00:45:22,490 --> 00:45:26,530 अब, इन बक्सों का प्रतिनिधित्व 32 बिट, या चार बाइट्स 1020 00:45:26,530 --> 00:45:29,510 जिसमें हम स्टोर कर सकते हैं एक पूर्णांक, एक पूर्णांक, एक पूर्णांक. 1021 00:45:29,510 --> 00:45:31,890 जो सब के सब, फिर से, एक ही डेटा प्रकार हैं. 1022 00:45:31,890 --> 00:45:33,890 >> अब मैं कुछ मूर्ख करते हैं, समय बीत जाता है, जैसे बस 1023 00:45:33,890 --> 00:45:35,510 इस कार्यक्रम के लेखन का औचित्य साबित करने के लिए. 1024 00:45:35,510 --> 00:45:40,050 और फिर यहाँ नीचे, मैं फिर से पुनरावृति अब से एक साल कह सरणी से अधिक है, 1025 00:45:40,050 --> 00:45:43,090 व्यक्ति नंबर एक इच्छा कुछ साल पुराना हो. 1026 00:45:43,090 --> 00:45:45,010 और कहा कि यह पता लगाने के लिए math-- मेरा मतलब है, यह 1027 00:45:45,010 --> 00:45:49,260 बहुत arithmetic-- जटिल नहीं है मैं सिर्फ अपनी उम्र के लिए एक जोड़ने. 1028 00:45:49,260 --> 00:45:51,240 बस, फिर, यह प्रदर्शित करने के लिए. 1029 00:45:51,240 --> 00:45:57,910 >> बस मैं सूचकांक के रूप में एक स्ट्रिंग में, एस, इतनी उम्र की एक सरणी में कर सकते हैं मैं सूचकांक 1030 00:45:57,910 --> 00:45:59,950 वहाँ उस तरह. 1031 00:45:59,950 --> 00:46:03,340 तो जहां यह हमें ले जा रहा है? 1032 00:46:03,340 --> 00:46:07,070 तो हम देखेंगे, अंततः, एक दिन में कुछ बातें आने के लिए. 1033 00:46:07,070 --> 00:46:09,510 एक, यह सब समय, जब अपने खुद के कार्यक्रमों लेखन, 1034 00:46:09,510 --> 00:46:11,239 मारियो, लालची, क्रेडिट की तरह. 1035 00:46:11,239 --> 00:46:13,780 आप का नाम टाइप किया गया है कार्यक्रम और मार दर्ज करें. 1036 00:46:13,780 --> 00:46:15,610 और फिर उपयोगकर्ता के इनपुट हो रही है. 1037 00:46:15,610 --> 00:46:18,137 >> GetString, getInt के साथ, getLongLong, या पसंद है. 1038 00:46:18,137 --> 00:46:20,720 लेकिन यह है कि सी का समर्थन करता है पता चला है कुछ कमांड लाइन बुलाया 1039 00:46:20,720 --> 00:46:25,740 हमें बताने के लिए जा रहा है जो तर्क, वास्तव में आप टाइप कि शब्द में मिलता है, 1040 00:46:25,740 --> 00:46:28,570 निमिष प्रॉम्प्ट पर अपने कार्यक्रम के नाम के बाद. 1041 00:46:28,570 --> 00:46:31,430 >> , आप आने वाले दिनों में तो सीज़र की तरह कुछ टाइप हो सकता है, 1042 00:46:31,430 --> 00:46:34,950 या ./caesar उसके बाद नंबर 13,. 1043 00:46:34,950 --> 00:46:36,070 हम जानते हैं कि कैसे काम करता है देखेंगे. 1044 00:46:36,070 --> 00:46:37,550 दरअसल, क्योंकि समस्या हम कर रहे हैं, दो सेट 1045 00:46:37,550 --> 00:46:39,383 आप शुरू करने जा रहा एक छोटे से कुछ करने के लिए 1046 00:46:39,383 --> 00:46:42,360 Ralphie की याद ताजा की मानचित्रकारी के पहले चुनौती है. 1047 00:46:42,360 --> 00:46:43,970 जानकारी पांव मार करने की कला. 1048 00:46:43,970 --> 00:46:46,660 यह वास्तव में बहुत है Ralphie क्या किया की याद ताजा करती. 1049 00:46:46,660 --> 00:46:51,380 >> यह एक एन्क्रिप्शन का एक उदाहरण है एल्गोरिथ्म, आर ओ टी 13 ROT13 बुलाया. 1050 00:46:51,380 --> 00:46:54,910 कौन सी बस बारी बारी से मतलब वर्णमाला 13 स्थानों में पत्र. 1051 00:46:54,910 --> 00:46:58,309 आप ऐसा है, तो आप अब देखेंगे एक परिचित वाक्यांश, शायद, क्या है. 1052 00:46:58,309 --> 00:47:01,100 लेकिन जिस तरह से हम उपयोग करने के लिए जा रहे हैं यह अंत में, आम तौर पर अधिक है. 1053 00:47:01,100 --> 00:47:04,390 >> पी में, मानक संस्करण में, दो सेट आप सिफर के एक जोड़े को लागू करेंगे 1054 00:47:04,390 --> 00:47:06,720 कैसर नामक एक, Vigenere बुलाया. 1055 00:47:06,720 --> 00:47:10,090 उन दोनों घूर्णी हैं उस में सिफर, आप किसी भी तरह 1056 00:47:10,090 --> 00:47:11,826 एक अलग पत्र में एक पत्र बारी. 1057 00:47:11,826 --> 00:47:12,950 और कैसर सुपर सरल है. 1058 00:47:12,950 --> 00:47:16,220 आप, आप 13 जोड़ना, एक जोड़ या 26 अप करने के लिए कुछ संख्या. 1059 00:47:16,220 --> 00:47:19,570 Vigenere उस पर करता है एक पत्र के आधार प्रति. 1060 00:47:19,570 --> 00:47:22,140 Vigenere तो, के रूप में आप देखेंगे कल्पना में, अधिक सुरक्षित है. 1061 00:47:22,140 --> 00:47:24,973 >> लेकिन दिन के अंत में क्या , आप को लागू किया जाएगा और पी दो सेट 1062 00:47:24,973 --> 00:47:29,050 आप दोनों का उपयोग करें कि कि कुंजी है एन्क्रिप्शन और डिक्रिप्शन के लिए. 1063 00:47:29,050 --> 00:47:32,160 निर्णायक की प्रक्रिया का जिक्र करते हुए सादे पाठ, कुछ मूल संदेश, 1064 00:47:32,160 --> 00:47:34,490 साइफर पाठ, में जो कुछ एन्क्रिप्टेड है. 1065 00:47:34,490 --> 00:47:36,220 और फिर इसे फिर decrypting. 1066 00:47:36,220 --> 00:47:38,119 >> हैकर संस्करण में, इस बीच, आप हो जाएगा 1067 00:47:38,119 --> 00:47:40,660 कुछ इसी तरह का काम सौंपा आत्मा में, हम आपको दे देंगे जहां 1068 00:47:40,660 --> 00:47:44,610 एक ठेठ लिनक्स, या एक फ़ाइल से, मैक, या यूनिक्स कंप्यूटर बुलाया Etsy 1069 00:47:44,610 --> 00:47:47,800 एक पूरी जिसमें पासवर्ड, उपयोगकर्ता नाम और पासवर्ड का गुच्छा. 1070 00:47:47,800 --> 00:47:50,932 और उन लोगों के पासवर्ड सब है एन्क्रिप्टेड, या hashed किया गया, 1071 00:47:50,932 --> 00:47:53,140 इतनी अधिक अच्छी बात है, आप कल्पना में देखेंगे. 1072 00:47:53,140 --> 00:47:57,090 >> और हैकर संस्करण को चुनौती देंगे इस तरह एक इनपुट लेने के साथ आप, 1073 00:47:57,090 --> 00:47:58,800 और पासवर्ड खुर. 1074 00:47:58,800 --> 00:48:02,590 पता लगाना है कि क्या है, मानव का पासवर्ड वास्तव में था. 1075 00:48:02,590 --> 00:48:05,570 दरअसल, पासवर्ड हैं, क्योंकि आम तौर पर स्पष्ट में संग्रहीत नहीं, 1076 00:48:05,570 --> 00:48:08,260 और आम तौर पर पासवर्ड मुश्किल लगता होना चाहिए. 1077 00:48:08,260 --> 00:48:09,610 यही कारण है कि अक्सर मामला नहीं है. 1078 00:48:09,610 --> 00:48:12,110 >> और क्या मैं हम क्या सोचा है एक दो मिनट के साथ समाप्त 1079 00:48:12,110 --> 00:48:15,160 एक विशेष रूप से पर नज़र पासवर्ड की गरीब पसंद 1080 00:48:15,160 --> 00:48:17,260 एक फिल्म से आप प्यार से याद हो सकता है. 1081 00:48:17,260 --> 00:48:18,915 नहीं तो आप किराया चाहिए. 1082 00:48:18,915 --> 00:48:20,070 >> [वीडियो प्लेबैक] 1083 00:48:20,070 --> 00:48:22,320 >> -Helmet, आप लेनेवाला, क्या चल रहा है? 1084 00:48:22,320 --> 00:48:24,240 तुम मेरी बेटी को क्या कर रहे हो? 1085 00:48:24,240 --> 00:48:28,010 >> लागू करने के लिए मुझे -Permit प्रतिभाशाली युवा प्लास्टिक सर्जन, 1086 00:48:28,010 --> 00:48:30,010 डॉक्टर फिलिप Schlotkin. 1087 00:48:30,010 --> 00:48:35,020 में सबसे बड़ी नाक नौकरी आदमी पूरे ब्रह्मांड और बेवर्ली हिल्स. 1088 00:48:35,020 --> 00:48:36,140 >> तुम्हारा महारानी. 1089 00:48:36,140 --> 00:48:36,820 >> -Nose काम? 1090 00:48:36,820 --> 00:48:37,700 मुझे समझ नहीं आया. 1091 00:48:37,700 --> 00:48:39,070 वह पहले से ही एक नाक नौकरी पड़ा है. 1092 00:48:39,070 --> 00:48:40,800 यह उसे मिठाई 16 उपस्थित थे. 1093 00:48:40,800 --> 00:48:42,590 >> नहीं, यह आप क्या सोचते नहीं है. 1094 00:48:42,590 --> 00:48:44,490 यह बहुत, बहुत बुरा है. 1095 00:48:44,490 --> 00:48:48,160 आप मुझे नहीं देते हवा ढाल संयोजन से, 1096 00:48:48,160 --> 00:48:52,748 डॉक्टर Schlotkin दे देंगे आपके बेटी अपने पुराने नाक बैक. 1097 00:48:52,748 --> 00:48:53,748 - [हाँफना] Nooooooooooooo. 1098 00:48:53,748 --> 00:48:57,684 1099 00:48:57,684 --> 00:48:59,652 आप कहाँ मिला? 1100 00:48:59,652 --> 00:49:00,640 >> -सभी अधिकार. 1101 00:49:00,640 --> 00:49:02,506 मुझे लगता है मैं बताता हूँ, बता देंगे. 1102 00:49:02,506 --> 00:49:03,498 >> नहीं, पिताजी, नहीं. 1103 00:49:03,498 --> 00:49:04,490 तुम नहीं करना चाहिए. 1104 00:49:04,490 --> 00:49:06,090 >> -तुम सही मेरे प्रिय. 1105 00:49:06,090 --> 00:49:07,390 मैं अपने नए नाक याद करेंगे. 1106 00:49:07,390 --> 00:49:10,990 लेकिन मैं उन्हें बता नहीं होगा संयोजन नहीं क्या बात है. 1107 00:49:10,990 --> 00:49:12,450 >> अच्छी तरह -बहुत. 1108 00:49:12,450 --> 00:49:14,830 डॉक्टर Schlotkin, अपने सबसे खराब करते हैं. 1109 00:49:14,830 --> 00:49:15,744 >> मेरा खुशी. 1110 00:49:15,744 --> 00:49:19,860 1111 00:49:19,860 --> 00:49:20,800 >> मुक्त! 1112 00:49:20,800 --> 00:49:22,780 रुको, रुको. 1113 00:49:22,780 --> 00:49:24,000 मैं बताता हूँ. 1114 00:49:24,000 --> 00:49:25,830 मैं बताता हूँ. 1115 00:49:25,830 --> 00:49:28,270 >> मैं यह काम होता था. 1116 00:49:28,270 --> 00:49:31,390 ठीक है, यह मुझे दे. 1117 00:49:31,390 --> 00:49:36,220 >> -इस संयोजन से एक है. 1118 00:49:36,220 --> 00:49:36,740 >> -एक. 1119 00:49:36,740 --> 00:49:37,473 >> -एक. 1120 00:49:37,473 --> 00:49:37,972 -Two. 1121 00:49:37,972 --> 00:49:38,471 -Two. 1122 00:49:38,471 --> 00:49:39,800 -Two. 1123 00:49:39,800 --> 00:49:40,300 तीन. 1124 00:49:40,300 --> 00:49:40,800 तीन. 1125 00:49:40,800 --> 00:49:41,800 तीन. 1126 00:49:41,800 --> 00:49:42,300 -Four. 1127 00:49:42,300 --> 00:49:42,800 -Four. 1128 00:49:42,800 --> 00:49:44,707 -Four. 1129 00:49:44,707 --> 00:49:45,521 पांच. 1130 00:49:45,521 --> 00:49:46,430 पांच. 1131 00:49:46,430 --> 00:49:47,930 पांच. 1132 00:49:47,930 --> 00:49:53,480 संयोजन एक है तो, दो, तीन, चार, पांच. 1133 00:49:53,480 --> 00:49:56,140 यही बेवकूफी संयोजन है मैं कभी भी अपने जीवन में सुना है. 1134 00:49:56,140 --> 00:49:58,640 यह बात एक की तरह है मूर्ख अपने सामान पर होगा. 1135 00:49:58,640 --> 00:50:00,000 >> , राजा साहब आप शुिईद्भया. 1136 00:50:00,000 --> 00:50:01,340 >> [दूरदराज क्लिकों] 1137 00:50:01,340 --> 00:50:02,450 >> आप क्या किया? 1138 00:50:02,450 --> 00:50:03,800 >> मैं दीवार को बंद कर दिया. 1139 00:50:03,800 --> 00:50:05,010 >> नहीं, तुम नहीं किया पूरी फिल्म को बंद कर दिया. 1140 00:50:05,010 --> 00:50:06,220 >> मैं गया होगा गलत बटन दबाया. 1141 00:50:06,220 --> 00:50:07,064 >> -Well, पीठ पर रख दिया! 1142 00:50:07,064 --> 00:50:07,910 पीठ पर फिल्म रखें! 1143 00:50:07,910 --> 00:50:08,300 >> हां, साहब! 1144 00:50:08,300 --> 00:50:08,799 हाँ, सर. 1145 00:50:08,799 --> 00:50:09,660 की, अर्नोल्ड जाना -Let. 1146 00:50:09,660 --> 00:50:10,450 , ग्रेचेन आओ. 1147 00:50:10,450 --> 00:50:12,533 बेशक आप मैं जानता हूँ कि इस के लिए बिल के लिए है. 1148 00:50:12,533 --> 00:50:16,720 1149 00:50:16,720 --> 00:50:17,220 -Well? 1150 00:50:17,220 --> 00:50:17,802 यह काम किया? 1151 00:50:17,802 --> 00:50:18,510 राजा कहाँ है? 1152 00:50:18,510 --> 00:50:20,218 >> यह तो, सर काम हम संयोजन है. 1153 00:50:20,218 --> 00:50:20,740 -Great. 1154 00:50:20,740 --> 00:50:24,810 अब हम हर आखिरी सांस ले सकते हैं ग्रह Druidia से ताजा हवा का. 1155 00:50:24,810 --> 00:50:25,890 संयोजन क्या है? 1156 00:50:25,890 --> 00:50:28,155 >> A- एक, दो, तीन, चार, पांच. 1157 00:50:28,155 --> 00:50:29,890 >> A- एक, दो, तीन, चार, पांच? 1158 00:50:29,890 --> 00:50:30,390 हां. 1159 00:50:30,390 --> 00:50:31,110 -वह अद्भुत है. 1160 00:50:31,110 --> 00:50:34,550 मैं एक ही मिल गया है मेरे सामान पर संयोजन. 1161 00:50:34,550 --> 00:50:37,160 के लिए Spaceball 1 की तैयारी तत्काल प्रस्थान. 1162 00:50:37,160 --> 00:50:38,160 >> हां, सर. 1163 00:50:38,160 --> 00:50:40,745 >> बदल -और मेरे सामान पर संयोजन. 1164 00:50:40,745 --> 00:50:41,578 [दरवाजा बंद ध्वनि] 1165 00:50:41,578 --> 00:50:42,064 [दरवाजे की झंकार हेलमेट मार] 1166 00:50:42,064 --> 00:50:42,550 -Ahh. 1167 00:50:42,550 --> 00:50:43,383 [अंत वीडियो प्लेबैक] 1168 00:50:43,383 --> 00:50:46,700 डेविड जे Malan: उसके लिए यह बात है CS50, हम अगले सप्ताह आप देखेंगे. 1169 00:50:46,700 --> 00:50:49,883 अनाउन्सार: और अब, दीप Daven Farnham द्वारा विचार,. 1170 00:50:49,883 --> 00:50:53,160 1171 00:50:53,160 --> 00:50:55,860 >> DAVEN Farnham: सी में कोडिंग है स्क्रैच से इतना कठिन. 1172 00:50:55,860 --> 00:50:57,320 printf, स्क्रैच एक झूठ था. 1173 00:50:57,320 --> 00:50:59,930 1174 00:50:59,930 --> 00:51:01,430 >> [हंसी बयान] 1175 00:51:01,430 --> 00:51:02,486