1 00:00:00,000 --> 00:00:03,395 >> [સંગીત વગાડવાનો] 2 00:00:03,395 --> 00:00:11,031 3 00:00:11,031 --> 00:00:13,280 ડેવિડ જે MALAN: આ જેવું છે એક નવા વિદ્યાર્થીઓ લેવાનો પરિસંવાદ આજે. 4 00:00:13,280 --> 00:00:14,060 ઠીક છે. 5 00:00:14,060 --> 00:00:15,024 બહાર છે તેથી ખૂબ જ વરસાદી. 6 00:00:15,024 --> 00:00:17,690 આ બુધવાર પર થાય છે શકે છે, પરંતુ તમામ વધુ તક 7 00:00:17,690 --> 00:00:18,700 પ્રશ્નો માટે આજે. 8 00:00:18,700 --> 00:00:22,210 તેથી ખરેખર બંધ શરૂ કરીએ માત્ર એક ક્ષણ આ ફિલ્મ સાથે. 9 00:00:22,210 --> 00:00:24,560 પરંતુ અમે હંમેશા તરીકે જોરશોરથી શરૂ કરી શકશો. 10 00:00:24,560 --> 00:00:28,000 >> આ CS50 છે, અને આ 4 સપ્તાહ અંત છે. 11 00:00:28,000 --> 00:00:30,820 તમે ક્યારેય જોયું છે તેથી જો ટીવી અથવા મૂવી જેમાં 12 00:00:30,820 --> 00:00:34,690 કેટલાક કમ્પ્યુટર નિષ્ણાતના છે અને પોલીસ, અથવા એફબીઆઇ, અથવા અમુક એજન્સી 13 00:00:34,690 --> 00:00:36,930 કેટલાક પકડી પ્રયાસ કરી રહી છે વિરોધી, સારી રીતે, તમે કરેલા 14 00:00:36,930 --> 00:00:40,850 કદાચ "વધારવા" અભિવ્યક્તિ સાંભળ્યું જેમાં કે ટેકનિશિયન કોઈક 15 00:00:40,850 --> 00:00:44,750 જાદુઇ અનંત માં zooms ગુનેગારો જોવા માટે અત્યાર સુધી 16 00:00:44,750 --> 00:00:48,640 ઓળખ અથવા લાઇસન્સ પ્લેટ નંબર એક અરીસો પણ ઝબૂકવું માં 17 00:00:48,640 --> 00:00:50,390 અથવા કોઈના આંખ ના ઝળહળવું. 18 00:00:50,390 --> 00:00:55,196 તેથી ખરેખર, ચાલો એક નજર કરીએ હોલિવુડ થોડા આવા દ્રશ્યો. 19 00:00:55,196 --> 00:00:55,862 [વિડિઓ પ્લેબેક] 20 00:00:55,862 --> 00:00:59,243 -OK, હવે તમે પર સારો દેખાવ વિચાર કરીએ. 21 00:00:59,243 --> 00:01:06,488 22 00:01:06,488 --> 00:01:07,415 >> તે પકડો. 23 00:01:07,415 --> 00:01:08,267 કે પાછા ચલાવો. 24 00:01:08,267 --> 00:01:09,121 >> -એક મિનીટ થોભો. 25 00:01:09,121 --> 00:01:11,300 અધિકાર જાઓ. 26 00:01:11,300 --> 00:01:12,209 >> -ત્યાં, કે સ્થિર. 27 00:01:12,209 --> 00:01:12,750 -પૂર્ણ - પટ, આખો પડદો. 28 00:01:12,750 --> 00:01:13,558 -OK, કે સ્થિર. 29 00:01:13,558 --> 00:01:14,820 તમે કે જે પર આવશે અપ વધુ કડક? 30 00:01:14,820 --> 00:01:16,530 કે પર વેક્ટર પાછળ વ્હીલ દ્વારા ગાય. 31 00:01:16,530 --> 00:01:19,400 અહીં આ સ્થળ પર ઝૂમ વધારો. 32 00:01:19,400 --> 00:01:22,846 -સાથે યોગ્ય સાધનો, ઇમેજ ફૂલે અને sharpened કરી શકે છે. 33 00:01:22,846 --> 00:01:24,065 -તે શું છે? 34 00:01:24,065 --> 00:01:25,600 -તે ઉન્નતીકરણ કાર્યક્રમ છે. 35 00:01:25,600 --> 00:01:26,860 કોઈપણ અપ કે સાફ તમે -શકો? 36 00:01:26,860 --> 00:01:27,890 -મને ખબર નથી. 37 00:01:27,890 --> 00:01:29,050 માતાનો તેને વધારવા દો. 38 00:01:29,050 --> 00:01:31,575 >> એન્હેન્સ વિભાગ A6. 39 00:01:31,575 --> 00:01:33,642 >> હું વિગતવાર વધારી, and-- હું લાગે છે કે ત્યાં 40 00:01:33,642 --> 00:01:35,433 વધારવા માટે પૂરતી છે, મારા સ્ક્રીન પર તે રિલીઝ. 41 00:01:35,433 --> 00:01:37,080 હું તેના આંખ માં પ્રતિબિંબ વધારી છે. 42 00:01:37,080 --> 00:01:38,830 >> -Let દ્વારા આ ચાલે છે વિડિઓ વૃદ્ધિ. 43 00:01:38,830 --> 00:01:40,100 -એડગર, તમે આ વધારવા કરી શકો છો? 44 00:01:40,100 --> 00:01:41,875 >> -ઊભો રહે. 45 00:01:41,875 --> 00:01:44,010 >> આ પ્રતિબિંબ પર કામ કરવામાં -I've. 46 00:01:44,010 --> 00:01:44,995 >> -Someone માતાનો પ્રતિબિંબ. 47 00:01:44,995 --> 00:01:45,495 -Reflection. 48 00:01:45,495 --> 00:01:47,399 માણસ ચહેરો -ત્યાં એક પ્રતિબિંબ છે. 49 00:01:47,399 --> 00:01:48,065 -ધ પ્રતિબિંબ. 50 00:01:48,065 --> 00:01:48,981 -ત્યાં એક પ્રતિબિંબ છે. 51 00:01:48,981 --> 00:01:50,600 મિરર પર ઇન ઝૂમ વધારો. 52 00:01:50,600 --> 00:01:52,712 તમને એક પ્રતિબિંબ જોઈ શકો છો. 53 00:01:52,712 --> 00:01:54,350 તમે અહીં ઇમેજ વધારવા -શકાતી? 54 00:01:54,350 --> 00:01:55,370 તમે અહીં તેને વધારવા -શકાતી? 55 00:01:55,370 --> 00:01:56,210 -શકાતી તમે તેને વધારવા? 56 00:01:56,210 --> 00:01:56,900 તમે તેને વધારવા કરી શકો છો? 57 00:01:56,900 --> 00:01:57,870 >> -શકાતી અમે આ વધારવા? 58 00:01:57,870 --> 00:01:58,717 >> -શકાતી તમે તેને વધારવા? 59 00:01:58,717 --> 00:02:00,050 એક બીજા પર પકડ, હું વધારવા પડશે. 60 00:02:00,050 --> 00:02:00,924 દરવાજા પર ઇન ઝૂમ વધારો. 61 00:02:00,924 --> 00:02:01,700 10 -Times. 62 00:02:01,700 --> 00:02:02,586 ઝૂમ વધારો. 63 00:02:02,586 --> 00:02:03,490 -અંદર આવો. 64 00:02:03,490 --> 00:02:03,990 ફરીથી વધુ. 65 00:02:03,990 --> 00:02:04,690 -Wait, અટકાવો. 66 00:02:04,690 --> 00:02:05,190 રોકો. 67 00:02:05,190 --> 00:02:05,970 તે -Pause. 68 00:02:05,970 --> 00:02:09,460 અમને 75 ડિગ્રી-ફેરવો ઊભી આસપાસ, કૃપા કરીને. 69 00:02:09,460 --> 00:02:10,962 રોકો. 70 00:02:10,962 --> 00:02:14,040 ભાગ પર પાછા જાઓ ફરી બારણું વિશે. 71 00:02:14,040 --> 00:02:15,860 >> બીટમેપ શકો છો કે જે છબી enhancer- ગોટ? 72 00:02:15,860 --> 00:02:18,776 >> -Hey, કદાચ અમે આ પ્રદીપ ઉપયોગ કરી શકો છો સેન પદ્ધતિ વિન્ડો માં જોવા માટે. 73 00:02:18,776 --> 00:02:20,372 -આ સોફ્ટવેર કલાના રાજ્ય છે. 74 00:02:20,372 --> 00:02:21,845 >> -ધ Eigenvalue બંધ છે. 75 00:02:21,845 --> 00:02:24,300 >> જમણી -સાથે અલ્ગોરિધમનો મિશ્રણ 76 00:02:24,300 --> 00:02:26,755 >> -કુલ માતાનો લેવામાં દૂર આગલા સ્તર પર ગણતરીના 77 00:02:26,755 --> 00:02:28,730 અને હું તેમને ઉપયોગ કરી શકો છો આ ફોટોગ્રાફ વધારે છે. 78 00:02:28,730 --> 00:02:31,286 >> પર લોક અને Z- અક્ષ મોટું. 79 00:02:31,286 --> 00:02:32,560 >> એન્હેન્સ. 80 00:02:32,560 --> 00:02:33,100 >> એન્હેન્સ. 81 00:02:33,100 --> 00:02:33,600 >> એન્હેન્સ. 82 00:02:33,600 --> 00:02:34,960 -સ્થિર અને વધારે છે. 83 00:02:34,960 --> 00:02:37,180 >> [સમાપ્ત પ્લેબેક] 84 00:02:37,180 --> 00:02:41,160 >> ડેવિડ જે MALAN: બધા અધિકાર છે, તેથી તે બધા ખરેખર શબ્દો છે. 85 00:02:41,160 --> 00:02:44,450 તેઓ માત્ર એક સાથે ગૂંથી લેનાર રહ્યાં છો ખરેખર યોગ્ય નથી કે માર્ગ. 86 00:02:44,450 --> 00:02:48,400 તે ગમશે અને હકીકતમાં, CS50 અને અભ્યાસક્રમો ટીવી અને ફિલ્મોમાં ઘણો વિનાશ કરે છે 87 00:02:48,400 --> 00:02:48,900 તમારા માટે. 88 00:02:48,900 --> 00:02:52,330 જ્યારે તે કોમ્પ્યુટર નિષ્ણાતના કારણ કે શરતો બંધ ધમકીઓ અને કહે છે 89 00:02:52,330 --> 00:02:56,860 જેવા ફેન્સી વસ્તુઓ eigenvectors, અને ઝેડ ધરી, 90 00:02:56,860 --> 00:02:59,572 અને અન્ય કોઈપણ નંબર ખરેખર વધુ ટેકનિકલ દ્રષ્ટિએ, 91 00:02:59,572 --> 00:03:02,030 તેઓ ખરેખર માત્ર રહ્યાં છો stringing શબ્દો બધા સાથે મળીને પણ ઘણી વખત. 92 00:03:02,030 --> 00:03:05,020 અમારી આશા છે કે એક છે, લેવાથી અભ્યાસક્રમો એક બાજુ અસર તરીકે 93 00:03:05,020 --> 00:03:08,245 માં આ જેમ, ચાલશે વધુ લોકો વિશ્વમાં ખરેખર તોલવું કરવાનો પ્રયત્ન 94 00:03:08,245 --> 00:03:12,040 અને માત્ર અત્યાર સુધીમાં સહેજ પ્રભાવ ગુણવત્તા અને તે ફિલ્મો ચોકસાઈ? 95 00:03:12,040 --> 00:03:14,350 >> હકીકતમાં, વાસ્તવિકતા પર એક નજર કરીએ. 96 00:03:14,350 --> 00:03:18,070 તેથી અહીં સ્ટાફ ફોટો છે મેરી, અમારા શિક્ષણ ફેલો છે. 97 00:03:18,070 --> 00:03:20,050 અને તે ધારવું કંઈક શંકા. 98 00:03:20,050 --> 00:03:23,730 અને હજુ સુધી, એક ઝાંખો અસ્થિર પ્રકાશ છે તેના આંખ માં પુરાવા કેટલાક ભાગ, 99 00:03:23,730 --> 00:03:25,480 અથવા તેણીના eyeglasses પ્રતિબિંબ છે. 100 00:03:25,480 --> 00:03:30,760 વેલ, અમે ફિલ્મો બરાબર હોય તો અમે ઝૂમ અને "વધારવા", જેમાં પ્રસ્તાવ, 101 00:03:30,760 --> 00:03:34,080 આ કેવી રીતે ઘણી માહિતી છે મેરીના ચહેરા છે 102 00:03:34,080 --> 00:03:36,795 તમે એક છબી કેપ્ચર જ્યારે કે મૂળ રીઝોલ્યુશન સાથે. 103 00:03:36,795 --> 00:03:39,120 >> અને હકીકતમાં, તમે આ બિંદુઓ જોઈ શકો છો. 104 00:03:39,120 --> 00:03:41,900 અને આ શું છે કહેવાય પિક્સેલ્સ, પી-I-X-ઇ એલ એસ, 105 00:03:41,900 --> 00:03:45,740 જે સામાન્ય રીતે માત્ર એક ચોરસ છે એક છબી છે કે બનેલું છે કે જે કોઈ છે. 106 00:03:45,740 --> 00:03:49,200 અને પાછા દિવસ, અને ખરેખર પણ આજે એલઇડી ટીવી કેટલાક આજે 107 00:03:49,200 --> 00:03:51,950 અથવા એલસીડી ટીવી, તમે મળી છે, તો તમારા રૂમમાં અથવા ઘરે એક, 108 00:03:51,950 --> 00:03:55,100 તમે તેને સુપર બંધ જાઓ અને હોય તો તે કંઈક અંશે જૂની ટીવી, ખાસ કરીને જો 109 00:03:55,100 --> 00:03:58,760 તમે કદાચ પણ આ બિંદુઓ જોઈ શકો છો અને તે એક છબી કંપોઝ છે. 110 00:03:58,760 --> 00:04:00,980 >> અને કોઈ વધુ છે આ કરતાં જાણકારી. 111 00:04:00,980 --> 00:04:05,400 અમે અર્થમાં, "વધારવા" કરી શકે છે ઉપર અને સૉર્ટ વસ્તુઓ લીસું 112 00:04:05,400 --> 00:04:09,040 પ્રકારની સૉર્ટ કરો શું inferring રંગ મેરી આંખ આગળ હોવા જોઇએ 113 00:04:09,040 --> 00:04:10,910 કે જેથી તે ખરેખર તેથી pixelated નથી. 114 00:04:10,910 --> 00:04:14,510 પરંતુ હું ઝૂમ રાખવા, ત્યાં તેના આંખ માં ખરાબ વ્યક્તિ છે. 115 00:04:14,510 --> 00:04:16,600 કે જેવી તમામ છે માહિતી અમે હોય છે. 116 00:04:16,600 --> 00:04:18,920 તમે બનાવી શકતા નથી કશું બહાર જાણકારી. 117 00:04:18,920 --> 00:04:20,790 માત્ર એક જ મર્યાદિત છે ત્યાં બિટ્સ સંખ્યા. 118 00:04:20,790 --> 00:04:22,873 >> સમસ્યા સેટ 4, જ્યાં તેથી તમે એક તક હોય છે 119 00:04:22,873 --> 00:04:24,580 વિશ્વમાં આ પ્રકારની સાથે રમવા માટે. 120 00:04:24,580 --> 00:04:27,610 સમસ્યા સેટ 4, તમે અન્વેષણ પડશે ગ્રાફિક્સ, અને વિદેશી વિશ્વમાં, 121 00:04:27,610 --> 00:04:30,870 અને ખરેખર કોડ લખવા કે હારી છબીઓ ધક્કામાંથી. 122 00:04:30,870 --> 00:04:33,510 તમે કોડ લખો પડશે કે હાલની છબીઓ ચાલવે 123 00:04:33,510 --> 00:04:36,120 અને છેવટે શું છે સમજી હૂડ નીચે જઈ રહી છે. 124 00:04:36,120 --> 00:04:38,540 >> અને, તે ખરેખર છે, બહાર વળે બધા છે કે જે જટિલ નથી. 125 00:04:38,540 --> 00:04:41,320 હમણાં પૂરતું, જો અમે ઇચ્છતા એક હસતો ચહેરો જ્યાં પ્રતિનિધિત્વ 126 00:04:41,320 --> 00:04:44,160 આ કાળા પિક્સેલ્સ સાથે, અથવા આ કાળા ટપકાં, 127 00:04:44,160 --> 00:04:47,230 વેલ, અમે ફક્ત પ્રતિનિધિત્વ કરી શકે છે તેમને સાચી એક બીટમેપ. 128 00:04:47,230 --> 00:04:50,040 અને જો તમે ક્યારેય સાંભળ્યું હતું કે અભિવ્યક્તિ બીટમેપ, કદાચ 129 00:04:50,040 --> 00:04:52,330 તે હવે બનાવવા માટે શરૂ થાય છે થોડી વધુ અર્થમાં આજે. 130 00:04:52,330 --> 00:04:53,580 >> અમે પહેલાથી જ એક બીટ છે શું ખબર. 131 00:04:53,580 --> 00:04:54,160 તે 0 અથવા 1 છે. 132 00:04:54,160 --> 00:04:56,201 અને એક નકશો કંઇક છે કાગળ એક ભાગ જેવા 133 00:04:56,201 --> 00:04:59,180 કે તમે દિશાઓ આપે છે અને છે કદાચ X- અને વાય કોઓર્ડિનેટ્સ એક ગ્રીડ. 134 00:04:59,180 --> 00:05:00,540 તેથી અહીં એક બીટમેપ છે. 135 00:05:00,540 --> 00:05:03,680 તે બીટ્સ એક નકશો છે જેમાં 1 દેખીતી રીતે છે 136 00:05:03,680 --> 00:05:07,857 સફેદ પિક્સેલ પ્રતિનિધિત્વ રહ્યું છે, અને એક 0 કાળા પિક્સેલ પ્રતિનિધિત્વ રહ્યું છે. 137 00:05:07,857 --> 00:05:09,440 પરંતુ અમે ચોક્કસપણે તે આસપાસ વિમાનની મુસાફરી કરી શકે. 138 00:05:09,440 --> 00:05:11,648 તે ખરેખર તો કોઈ વાંધો આવું કરે અમે સતત છો તરીકે લાંબા સમય સુધી. 139 00:05:11,648 --> 00:05:15,570 અને અહીં અંદર binary--, કેવી રીતે છે કમ્પ્યુટર મેમરી, અથવા પણ અંદર 140 00:05:15,570 --> 00:05:18,160 તમારી હાર્ડ પર ફાઇલ drive-- તમે સંગ્રહ શકે 141 00:05:18,160 --> 00:05:20,240 હસતો ચહેરો છબીઓ સરળ. 142 00:05:20,240 --> 00:05:23,990 પરંતુ અમે શું છે, અલબત્ત, આ છબી અભાવ? 143 00:05:23,990 --> 00:05:24,610 રંગ, અધિકાર? 144 00:05:24,610 --> 00:05:28,220 તે સ્પષ્ટ આગળનું પગલું છે કે વૃદ્ધિ રંગ સાથે આ સુધારવા માટે. 145 00:05:28,220 --> 00:05:32,230 તેથી કમનસીબે માત્ર એક જ સાથે બીટ, 0 અથવા 1, અમે રંગ પ્રતિનિધિત્વ કરી શકે છે. 146 00:05:32,230 --> 00:05:36,100 કે લાલ, અથવા વાદળી હોય છે, અથવા કરી શકે છે બ્લેક, અથવા સફેદ અથવા લીલા, અથવા ગુલાબી, 147 00:05:36,100 --> 00:05:37,420 અથવા રંગો કોઈપણ જોડી. 148 00:05:37,420 --> 00:05:40,860 પણ સરળતા ખાતર, અમે પડશે માત્ર કાળા અને સફેદ ધારે. 149 00:05:40,860 --> 00:05:45,930 >> તેથી તાર્કિક રીતે અમે જરૂર હોય તો શું અમે એક છબી રંગ અમલ કરવા માંગો છો? 150 00:05:45,930 --> 00:05:49,080 અમે શું છે? 151 00:05:49,080 --> 00:05:51,900 અહીં સીમાંકન પરિબળ તો ગમે કે એક બીટ સાથે તમે કરી શકો છો છે 152 00:05:51,900 --> 00:05:55,977 બે રાજ્યો, 0 અથવા 1, વ્હાઇટ પ્રતિનિધિત્વ અથવા બ્લેક, તમે શું કરવા માંગો છો? 153 00:05:55,977 --> 00:05:56,810 પ્રેક્ષક: વધુ માહિતી. 154 00:05:56,810 --> 00:05:58,813 ડેવિડ જે MALAN: વધુ બિટ્સ, અરે વાહ વધુ માહિતી, વધુ બિટ્સ. 155 00:05:58,813 --> 00:06:01,440 અને, ખરેખર, તે બરાબર કેવી રીતે રંગ છબીઓ રજૂ થાય છે. 156 00:06:01,440 --> 00:06:05,120 એક બીટ ઉપયોગ બદલે એક 0 અથવા દરેક પિક્સેલ માટે 1, દરેક ડોટ, 157 00:06:05,120 --> 00:06:06,170 તમે માત્ર બહુવિધ ઉપયોગ કરે છે. 158 00:06:06,170 --> 00:06:09,660 કદાચ કદાચ, વધુ સામાન્ય રીતે, 8 ઉપયોગ સમસ્યા સેટ, ખરેખર 24 વાપરવા માટે, અને 159 00:06:09,660 --> 00:06:13,300 4, તમે ફાઈલ સાથે રમવા આવશે સામાન્ય રીતે 24 બિટ્સ વાપરે છે કે જે ફોર્મેટ. 160 00:06:13,300 --> 00:06:15,430 >> પરંતુ તમે મોટા ભાગના કદાચ છે JPEGs સાથે પરિચિત. 161 00:06:15,430 --> 00:06:17,460 તમે ક્યારેય ભર્યું છે, તો તમારા ફોન પર એક ફોટો, 162 00:06:17,460 --> 00:06:20,360 અથવા અપલોડ અથવા કંઈક જોવા મળે ફેસબુક, અથવા Flickr, કોઈપણ નંબર 163 00:06:20,360 --> 00:06:24,882 ફોટો આધારિત વેબસાઇટ્સ, તમે કરેલા કદાચ પહેલાં કોઈ JPEG છબી જોવા મળે છે. 164 00:06:24,882 --> 00:06:27,840 અને તે આ ફાઇલ છે, બહાર વળે બંધારણમાં અમે 4 pset માં ઉપયોગ જઈ રહ્યાં છો 165 00:06:27,840 --> 00:06:30,340 જેમાં તમે જઈ રહ્યાં છો છબીઓ પુનઃપ્રાપ્ત કરવા માટે હોય છે 166 00:06:30,340 --> 00:06:35,160 હું અકસ્માતે પરથી કાઢી કર્યું છે કેમેરા બગડી મેમરી કાર્ડ, 167 00:06:35,160 --> 00:06:35,800 જો તમે કરશે. 168 00:06:35,800 --> 00:06:38,490 >> અને તે તારણ છે કે, તેમ છતાં JPEG ખૂબ sophisticated-- છે 169 00:06:38,490 --> 00:06:40,906 તે વધુ આધુનિક છે કાળા અને સફેદ ટપકાં કરતાં 170 00:06:40,906 --> 00:06:44,480 કારણ કે ત્યાં અમે એક ક્ષણ પહેલા જોયું ખરેખર ફેન્સી ગાણિતીક નિયમો છે કે 171 00:06:44,480 --> 00:06:47,410 જેથી JPEG સંકુચિત કરવા માટે વપરાય છે તમે ખરેખર સરસ હોઈ શકે છે કે, 172 00:06:47,410 --> 00:06:49,832 ગુણવત્તા ચિત્ર પરંતુ મદદથી પ્રમાણમાં થોડા બિટ્સ. 173 00:06:49,832 --> 00:06:51,790 અને અમે પાછા આવો પડશે લાંબા પહેલાં સંકોચન. 174 00:06:51,790 --> 00:06:56,280 તે પ્રથમ કે બહાર વળે કોઈ JPEG image-- ત્રણ બાઇટ્સ 175 00:06:56,280 --> 00:07:02,750 કોઈ બાબત તમે એક ફોટોગ્રાફ ભર્યું શું of-- કિંમતો 255, 216, 255 છે. 176 00:07:02,750 --> 00:07:05,990 >> અન્ય શબ્દોમાં, જો તમે માત્ર બીટ્સ કે પેટર્ન જુઓ, 177 00:07:05,990 --> 00:07:09,180 ત્રણ અહીં રજૂ બાઇટ્સ, કે 24 બીટ્સ કુલ 178 00:07:09,180 --> 00:07:13,810 ઊંચી સંભાવના સાથે તમે તે અટકળ બાંધવી કરી શકો છો તમે આ પ્રથમ ત્રણ તે અંતે શોધી રહ્યા છે 179 00:07:13,810 --> 00:07:15,230 કોઈ JPEG બાઇટ્સ. 180 00:07:15,230 --> 00:07:18,040 અને આ શું ઓળખાય છે છે કોઈ JPEG ની સહી છે. 181 00:07:18,040 --> 00:07:20,540 ફાઈલ બંધારણો ઘણાં શરૂ કરવા માટે ત્યાં હોય છે બહાર 182 00:07:20,540 --> 00:07:23,735 0s અને 1 સે કેટલીક ચોક્કસ પ્રકારની પેટર્ન સાથે, કે વિન્ડોઝ, અને મેક ઓએસ, અને iOS, જેથી 183 00:07:23,735 --> 00:07:28,272 અને, Android ખબર ફાઇલ કેવા પ્રકારની તેઓ કહેવાતા ફાઈલ ઉપરાંત, છે 184 00:07:28,272 --> 00:07:29,730 વિસ્તરણ ફાઇલો ઘણો હોય છે. 185 00:07:29,730 --> 00:07:32,590 તમે, jpg હોય તો, તે છે આ કમ્પ્યુટર પર અન્ય ચાવી. 186 00:07:32,590 --> 00:07:35,310 >> તેથી હવે આ જુઓ ચાલો વધુ તકનિકી થોડી. 187 00:07:35,310 --> 00:07:37,390 અમે એ દશા ખબર સિસ્ટમ 9 મારફતે 0 હોય છે. 188 00:07:37,390 --> 00:07:38,740 અમે દ્વિસંગી 0 અને 1 હોય છે ખબર છે કે. 189 00:07:38,740 --> 00:07:41,842 અને તમે pset પાછા લાગે છે કે જો 0, અમે તમને સાથે કુસ્તી હતી 190 00:07:41,842 --> 00:07:43,800 થોડી કંઈક માટે હેક્સાડેસિમલ કહેવાય છે, 191 00:07:43,800 --> 00:07:47,320 તમે 16 અંકો હોય છે, તેના બદલે 10 અથવા તેના બદલે 2. 192 00:07:47,320 --> 00:07:50,405 અને તે એ સંમેલન દ્વારા, પછી 9 અને મારફતે 0 છે 193 00:07:50,405 --> 00:07:55,040 એફ શું રજૂ કરે છે એફ દ્વારા માત્ર એક ઝડપી સેનીટી તરીકે દશાંશ નંબર, 194 00:07:55,040 --> 00:07:56,640 છો? 195 00:07:56,640 --> 00:07:57,610 તેથી, 15. 196 00:07:57,610 --> 00:08:01,390 અને એક માત્ર દ્વારા 10 પ્રતિનિધિત્વ જોઈએ હું આપી છે કે ક્રમ પ્રકૃતિ. 197 00:08:01,390 --> 00:08:04,350 તે માત્ર એક મનસ્વી સંમેલન છે પરંતુ તે તદ્દન પ્રમાણભૂત છે. 198 00:08:04,350 --> 00:08:06,870 >> અમે આ પેટર્ન જોવા તેથી જો ત્રણ ચાલો ચોક્કો બાઇટ્સ 199 00:08:06,870 --> 00:08:09,620 જસ્ટ તેને જોવા માટે શરૂ કેવી રીતે સાથે સુસંગત રીતે 200 00:08:09,620 --> 00:08:12,450 સામાન્ય રીતે કોમ્પ્યુટર વિજ્ઞાનીઓ જોવા અને ફાઈલો વિશે વિચારો. 201 00:08:12,450 --> 00:08:15,580 તમે ચોક્કસપણે વિશે વિચાર કરી શકો છો 0s માં ફાઈલો, અને 1 સે, અને દશાંશ, 202 00:08:15,580 --> 00:08:19,340 પરંતુ વાસ્તવમાં, અમે દ્વિસંગી ઉપયોગ કરે છે અથવા વધુ સામાન્ય રીતે hexadecimal-- 203 00:08:19,340 --> 00:08:20,760 પાછા pset 0 થી. 204 00:08:20,760 --> 00:08:25,857 તેથી મને પ્રસ્તાવ છે કે 255, 216, અને 255 0s અને 1 સે માત્ર આ પેટર્ન છે. 205 00:08:25,857 --> 00:08:28,440 અને તમે આ તો ચકાસી શકો છો તમે સપ્તાહ 0 થી ગણિત કરવા માંગો છો. 206 00:08:28,440 --> 00:08:30,810 પરંતુ, હવે માટે, માત્ર ધારે કે આ ખરેખર સાચું છે. 207 00:08:30,810 --> 00:08:33,850 હું માત્ર ત્રણ દશાંશ ફરીથી લખી કર્યું ત્રણ બાઈનરી કિંમતો તરીકે નંબરો. 208 00:08:33,850 --> 00:08:36,100 હવે હું શું કરવા જઈ રહ્યો છે માત્ર કેટલાક સફેદ જગ્યા ઉમેરો 209 00:08:36,100 --> 00:08:37,266 માત્ર વાંચી શકાય ખાતર. 210 00:08:37,266 --> 00:08:39,940 અને નોટિસ, હું હમણાં જ જાઉં છું વસ્તુઓ ઉપરાંત ખસેડો. 211 00:08:39,940 --> 00:08:43,090 તેથી તે પહેલાં, પછી, પહેલાં, પછી. 212 00:08:43,090 --> 00:08:46,180 હું અન્ય રસપ્રદ કંઈ કરી રહ્યો છું માત્ર જેથી વસ્તુઓ બહાર ફેલાવો કરતાં 213 00:08:46,180 --> 00:08:50,380 સૂચના આઠ દરેક સમૂહ બિટ્સ હવે ચાર બીટ્સ બે સેટ છે. 214 00:08:50,380 --> 00:08:54,920 આ હેક્સાડેસિમલ કારણ કે ઉપયોગી છે ખાસ કરીને ફેશનેબલ છે 215 00:08:54,920 --> 00:09:00,930 કારણ કે દરેક હેક્સાડેસિમલ US સ્થાન 0 મારફતે એફ, અથવા વધુ ચોક્કસ 0 મારફતે 15, 216 00:09:00,930 --> 00:09:03,430 રજૂ કરી શકાય છે બરાબર ચાર બિટ્સ સાથે. 217 00:09:03,430 --> 00:09:07,960 અન્ય શબ્દોમાં, હેક્સાડેસિમલ જો તમે તે માત્ર 0000 છે, 0 પ્રતિનિધિત્વ કરવા માંગો છો, 218 00:09:07,960 --> 00:09:08,780 ચાર zeros. 219 00:09:08,780 --> 00:09:13,997 અને તમે 15 પ્રતિનિધિત્વ કરવા માંગો છો, તો તે ચાર બિટ્સ છે, કે જે 1111 છે. 220 00:09:13,997 --> 00:09:16,080 અને તમે ગણિત નથી, તો આ મુદ્દાઓ સ્થળ છે, તો 221 00:09:16,080 --> 00:09:18,210 આ 16s સ્થળ છે કે તમારી પાસે આપી રહ્યું છે 222 00:09:18,210 --> 00:09:19,960 તેના બદલે છે કે ચાલી રહ્યું છે માફ કરશો રહ્યો, દ્વિસંગી માં, 223 00:09:19,960 --> 00:09:23,660 15 તમે આપી રહ્યું છે, જેના સ્થાને છે, twos સ્થળ, ચોગ્ગા અને સહિતની સંખ્યાબંધ ઉડાનો ભરી સ્થળ. 224 00:09:23,660 --> 00:09:26,821 તેથી મને કે પ્રસ્તાવ દો ડાબી પર ચાર બિટ્સ સેટ 225 00:09:26,821 --> 00:09:28,070 અમે એફ કહી રહ્યા છીએ તે છે. 226 00:09:28,070 --> 00:09:30,110 તે સૌથી મોટી સંખ્યા છે તમે ચાર બિટ્સ સાથે પ્રતિનિધિત્વ કરી શકે છે. 227 00:09:30,110 --> 00:09:33,300 અને અમે પહેલેથી જ હેક્સાડેસિમલ માંથી ખબર છે, એફ હેક્સાડેસિમલ સૌથી મોટી આકડો છે. 228 00:09:33,300 --> 00:09:36,020 અમે ત્યાં અન્ય એફ મળી છે બે પર વધુ. 229 00:09:36,020 --> 00:09:38,980 અને હવે, માત્ર વિશ્વાસ પર લઇ હું ગણિત અધિકાર થાય છે કે 230 00:09:38,980 --> 00:09:41,890 અને તે ડાબી અડધા તે બિટ્સ, 1101 ના, 231 00:09:41,890 --> 00:09:43,980 હેક્સાડેસિમલ ડી તરીકે જ વસ્તુ છે. 232 00:09:43,980 --> 00:09:46,490 અને જમણી બાજુ, 1000, માત્ર 8 છે. 233 00:09:46,490 --> 00:09:48,140 >> અને સરળ છે કે એક અધિકાર જોવા માટે? 234 00:09:48,140 --> 00:09:51,670 8 represents-- અધિકાર છે કે સહિતની સંખ્યાબંધ ઉડાનો ભરી સ્થળ નીચે. 235 00:09:51,670 --> 00:09:56,040 તેથી અમે સહિતની સંખ્યાબંધ ઉડાનો ભરી સ્તંભમાં એક હોય અને ચોગ્ગા, twos અથવા મુદ્દાઓ કંઈ નથી. 236 00:09:56,040 --> 00:09:59,830 તેથી હવે વધુ પરંપરાગત, મનુષ્યો હોય છે આ જેમ હેક્સાડેસિમલ અંકો લખવા માટે 237 00:09:59,830 --> 00:10:03,000 તમે માત્ર તેમને એકસાથે squish અને પછી તમે 0x સાથે તેમને ઉપસર્ગ. 238 00:10:03,000 --> 00:10:05,920 તે કરતાં અન્ય કંઈ થાય છે એક human-- માટે એક દ્રશ્ય ચાવી 239 00:10:05,920 --> 00:10:10,350 અહીં હેક્સાડેસિમલ કિંમત કારણ કે આવે છે તે અન્યથા સ્પષ્ટ ન પણ હોઈ શકે. 240 00:10:10,350 --> 00:10:13,629 >> કે જે છેવટે, કહે છે zeros અને શૈલીઓનો પેટર્ન, 241 00:10:13,629 --> 00:10:16,170 અથવા હેક્સાડેસિમલ પેટર્ન એ સમાન તમે છો કે 242 00:10:16,170 --> 00:10:18,990 શોધી શરૂ કરવા જઇ સમસ્યા સેટ માં 4 આ છે 243 00:10:18,990 --> 00:10:22,120 અને આ સમસ્યા સેટ સ્પેક 4 જવામાં આવશે વધુ detail-- આ દ્વારા તમે 244 00:10:22,120 --> 00:10:25,344 પરંતુ Arcane જેવું તરીકે ખ્યાલ આ પ્રથમ નજરમાં જુઓ શકે 245 00:10:25,344 --> 00:10:27,010 તમે આ ઘણો જોવાનું શરૂ કરવા માટે જઈ રહ્યાં છો. 246 00:10:27,010 --> 00:10:30,320 અને હકીકતમાં, પણ GDB માં, ડીબગર અમે સોમવાર પર રજૂ 247 00:10:30,320 --> 00:10:35,440 અને ડેન pset 3, રહ્યું છે પરિચય ઘણી વખત તમે હેક્સાડેસિમલ કિંમતો બતાવવા માટે 248 00:10:35,440 --> 00:10:39,910 માત્ર તેઓ વધુ હોય છે, કારણ કે દશાંશ અથવા બાઈનરી કરતાં પરંપરાગત 249 00:10:39,910 --> 00:10:41,157 કમ્પ્યુટર્સ વિશ્વમાં. 250 00:10:41,157 --> 00:10:42,490 હવે સંદર્ભ માં આ મૂકવા દો. 251 00:10:42,490 --> 00:10:48,040 ઘણા તમે આ યાદ શકે છે શું આવ્યા છે, જે અહીં શું છે? 252 00:10:48,040 --> 00:10:51,240 વિસ્ટા, તેથી પણ પહેલાં કરતાં કે, વિન્ડોઝ એક્સપી આ પ્રથમ હતી. 253 00:10:51,240 --> 00:10:52,620 તેથી આ એક સુંદર લેન્ડસ્કેપ છે. 254 00:10:52,620 --> 00:10:55,940 અને હકીકતમાં, તમે online-- આસપાસ થેલી, કોથળી જો હું તે વિકિપીડિયાનો લેખ છે લાગે છે, 255 00:10:55,940 --> 00:11:00,110 જેમાં કોઈને ખૂબ આશ્ચર્યજનક બહાર ગયા મળી વિશ્વમાં આ સ્થાન સુયોજિત 256 00:11:00,110 --> 00:11:02,240 તેના અથવા તેણીના કેમેરા ચોક્કસપણે અધિકાર સ્થળ 257 00:11:02,240 --> 00:11:06,510 અને આજે જેવા લાગે છે, પરંતુ તે બરાબર એ જ સેટિંગ છે. 258 00:11:06,510 --> 00:11:10,060 આ છબી છે, જોકે, એક ફાઈલ છે બંધારણમાં કહેવાય બીટમેપ, બી એમ પી. 259 00:11:10,060 --> 00:11:12,910 અને અમે એક સુપર લેવા જઈ રહ્યાં છો અર્થ એ થાય કે શું ઝડપી નજરથી. 260 00:11:12,910 --> 00:11:17,770 >> પરંતુ બીટમેપ માત્ર એક અલગ રીત છે રજૂ ઈમેજો હજુ પણ પિક્સેલ્સ ઉપયોગ 261 00:11:17,770 --> 00:11:19,580 0s અને 1 સે, આખરે. 262 00:11:19,580 --> 00:11:23,282 પરંતુ ઝડપી નજરમાં, તે છે વધુ રસપ્રદ સહી 263 00:11:23,282 --> 00:11:24,490 ફાઈલ શરૂઆતમાં. 264 00:11:24,490 --> 00:11:26,670 તે માત્ર ત્રણ નથી બાઇટ્સ બદલે છે 265 00:11:26,670 --> 00:11:30,770 બાઇટ્સ દાખલાની એક સમગ્ર ટોળું એટલે કે પૂર્વનિર્ધારિત છે. 266 00:11:30,770 --> 00:11:34,490 હમણાં પૂરતું, ક્યાંક માં એક બીટમેપ છબી પ્રથમ થોડા બાઇટ્સ 267 00:11:34,490 --> 00:11:37,440 આ માપ હોઈ ચાલે છે છબી, ઇમેજ પહોળાઈ, 268 00:11:37,440 --> 00:11:40,390 છબી ઊંચાઇ, જેથી ઉપયોગી મેટાડેટા, જો તમે કરશે. 269 00:11:40,390 --> 00:11:43,940 ઉપયોગી માહિતી ફોટોશોપ અથવા કોઈપણ ગ્રાફિક્સ તમે ઉપયોગ કરી રહ્યાં છો કાર્યક્રમ 270 00:11:43,940 --> 00:11:45,180 ખરેખર વિશે કાળજી શકે છે. 271 00:11:45,180 --> 00:11:47,170 >> આ પર તેથી વધુ 4 સમસ્યા સુયોજિત છે, પરંતુ આ 272 00:11:47,170 --> 00:11:49,220 કહે છે કે માત્ર છે દિવસ ઓવરને અંતે 273 00:11:49,220 --> 00:11:52,390 તમે ઉપયોગ કરી રહ્યો છું બધા ફાઈલ બંધારણો years-- માઈક્રોસોફ્ટ વર્ડ ફાઈલો માટે, 274 00:11:52,390 --> 00:11:55,820 નંબર્સ, ફાઇલો, એક્સેલ ફાઈલો, ફાઈલ બંધારણો કોઈપણ નંબર 275 00:11:55,820 --> 00:11:57,770 કે જે અમુક હોય શકે જાણીતા ફાઇલ એક્સ્ટેંશન 276 00:11:57,770 --> 00:12:00,130 હૂડ નીચે માત્ર 0s અને 1 સે છે. 277 00:12:00,130 --> 00:12:02,970 મનુષ્યો નિર્ણય કર્યો છે સંમેલનો શું છે, 278 00:12:02,970 --> 00:12:08,340 શું 0s અને 1 સે પેટર્ન પ્રતિનિધિત્વ એક શબ્દ છે, એક એક્સેલ ફાઈલ વિરુદ્ધ ફાઇલ 279 00:12:08,340 --> 00:12:10,322 અન્ય ફાઈલ બંધારણો કોઈપણ નંબર વિરુદ્ધ. 280 00:12:10,322 --> 00:12:12,780 4 pset તેથી, તમે એક પડશે તક કે સાથે રમવા માટે. 281 00:12:12,780 --> 00:12:14,405 >> પરંતુ શું કરે છે તે સ્ટ્રક્ટ છે થાય છે. 282 00:12:14,405 --> 00:12:18,012 આ હવે ખરેખર એક સરસ જીતે છે માત્ર એક દંપતિ છે, જે માં સી, 283 00:12:18,012 --> 00:12:20,220 વધારાના લક્ષણો કે અમે હજુ સુધી જોવામાં આવી છે. 284 00:12:20,220 --> 00:12:24,230 તે એક સુંદર નાની ભાષા અને એક છે સી વિશે સરસ સુવિધાઓ એક સ્ટ્રક્ટ છે. 285 00:12:24,230 --> 00:12:27,300 હમણાં પૂરતું, જો તમે ચાલો પ્રતિનિધિત્વ કરવા માગે છે 286 00:12:27,300 --> 00:12:33,690 તમે એક ચલ છે ઇચ્છતા કહે છે કે કેટલાક કાર્યક્રમ એક વિદ્યાર્થી પ્રતિનિધિત્વ કરે છે. 287 00:12:33,690 --> 00:12:37,330 કદાચ તમે કોર્સ લખી હતી નોંધણી કાર્યક્રમ, અથવા કોર શોપિંગ 288 00:12:37,330 --> 00:12:38,870 સાધન, અથવા તે કંઈક. 289 00:12:38,870 --> 00:12:42,922 સંબંધિત ડેટાને ટુકડાઓ શું છે દિમાગમાં આવે છે કે જે વિદ્યાર્થી માટે? 290 00:12:42,922 --> 00:12:44,880 એક વિદ્યાર્થી છે, જેમ કઈ કિંમતો સાથે રજૂ? 291 00:12:44,880 --> 00:12:45,732 અરે વાહ? 292 00:12:45,732 --> 00:12:46,940 તમે એક વિદ્યાર્થી તરીકે એક નામ છે. 293 00:12:46,940 --> 00:12:48,900 એક લાક્ષણિક વિદ્યાર્થી બીજું શું છે? 294 00:12:48,900 --> 00:12:49,320 >> AUDIENCE: [અશ્રાવ્ય] 295 00:12:49,320 --> 00:12:50,200 >> ડેવિડ જે MALAN: તેથી, માફ કરશો. 296 00:12:50,200 --> 00:12:50,660 >> પ્રેક્ષક: ઉંમર. 297 00:12:50,660 --> 00:12:52,980 >> ડેવિડ જે MALAN: એક ઉંમર અથવા જન્મદિવસ સમાન, હા. 298 00:12:52,980 --> 00:12:53,557 બીજું શું? 299 00:12:53,557 --> 00:12:54,390 પ્રેક્ષક: ID નંબર? 300 00:12:54,390 --> 00:12:57,460 ડેવિડ જે MALAN: કદાચ તેથી એક ID નંબર, એક ફોન નંબર, કદાચ એક ડોર્મ, અથવા ઘર, 301 00:12:57,460 --> 00:12:58,670 કોલેજ, અથવા તે કંઈક અથવા. 302 00:12:58,670 --> 00:13:01,820 માહિતી ટુકડાઓ કોઈપણ નંબર તમે તમારા સંપર્કો યાદી હોય શકે છે 303 00:13:01,820 --> 00:13:03,890 એક વિદ્યાર્થી વ્યાખ્યાયિત કરી શકે છે શું છે. 304 00:13:03,890 --> 00:13:08,490 અમે કોડ માં, આ કરવા માગતા હતા તેથી જો, અમે આ જેવા સરળ કંઈક કરી શકે છે. 305 00:13:08,490 --> 00:13:15,670 અમે તેથી એક કાર્યક્રમ છે શકે છે છે, કહે છે પૂર્ણાંક મુખ્ય (રદબાતલ) કરવા દો. 306 00:13:15,670 --> 00:13:18,920 અને હું એક પ્રતિનિધિત્વ કરવા માંગો છો, તો હું હમણાં પૂરતું, પડી શકે છે વિદ્યાર્થી, 307 00:13:18,920 --> 00:13:24,330 કે વિદ્યાર્થી માટે નામ કહેવાય શબ્દમાળા, કે વિદ્યાર્થી ડોર્મ કહેવાય શબ્દમાળા, 308 00:13:24,330 --> 00:13:26,900 કદાચ પૂર્ણાંક છે કે જે વિદ્યાર્થી માટે ID ને કહેવાય છે. 309 00:13:26,900 --> 00:13:30,840 અને હું શબ્દમાળા ઉપયોગ કરું છું, કારણ કે હું cs50.h. પાછા જાઓ અને મૂકી કરવાની જરૂર છે 310 00:13:30,840 --> 00:13:33,300 કદાચ હું stdio.h જરૂર જઈ રહ્યો છું. 311 00:13:33,300 --> 00:13:38,190 તેથી મને preemptively તે કરવા દો અને હું છું હવે આ student.c કહી રહ્યા 312 00:13:38,190 --> 00:13:40,080 અને આ સાચવો. 313 00:13:40,080 --> 00:13:44,206 >> અને હવે હું કંઈક કરી શકો છો આ ચલો સાથે. 314 00:13:44,206 --> 00:13:46,830 અને અમે હમણાં જ લખી રહ્યા છીએ કે સ્યુડો કોડ ઇન એક ટિપ્પણી તરીકે, 315 00:13:46,830 --> 00:13:48,829 તે રસપ્રદ નથી કારણ કે અમે હવે શું. 316 00:13:48,829 --> 00:13:51,242 ઠીક છે, તેથી આ એક કાર્યક્રમ છે કે કોઈક એક વિદ્યાર્થી સંગ્રહ કરે છે. 317 00:13:51,242 --> 00:13:53,450 હું તો શું કરવું માંગો છો હું બે વિદ્યાર્થીઓ સંગ્રહ કરવા માંગો છો? 318 00:13:53,450 --> 00:13:55,991 તેથી મારી પ્રથમ વૃત્તિ રહ્યું છે એક મિનિટ રાહ જુઓ, બધા અધિકાર હોઇ શકે છે, 319 00:13:55,991 --> 00:14:01,920 હું બીજા વિદ્યાર્થી હોય તો હું શા માટે નથી માત્ર શબ્દમાળા નામ 2, શબ્દમાળા ડોર્મ 2 કરવું, 320 00:14:01,920 --> 00:14:04,190 પૂર્ણાંક id2. 321 00:14:04,190 --> 00:14:06,540 અને અમે ગયા કર્યું છે આ માર્ગ પહેલાં નીચે 322 00:14:06,540 --> 00:14:10,890 અને શું લાગે કરવા માટે અમારા ઉકેલ શું હતું એક hackish નકલ પેસ્ટ પ્રકારની હોઈ 323 00:14:10,890 --> 00:14:11,555 અહીં કામ? 324 00:14:11,555 --> 00:14:12,346 પ્રેક્ષક: પણ દર્શાવે છે. 325 00:14:12,346 --> 00:14:13,830 ડેવિડ જે MALAN: અરે વાહ, અમે એક એરે ઉપયોગ કરી શકે છે. 326 00:14:13,830 --> 00:14:15,620 અધિકાર આ ખૂબ જ ઝડપથી અતિભારે બની જાય છે. 327 00:14:15,620 --> 00:14:18,453 તમે આપખુદ સૉર્ટ હોય છે આ ચલો બધા નામકરણ શરૂ કરો. 328 00:14:18,453 --> 00:14:22,190 અને તમે, માનવ, રાખવા માટે હોય છે તે બરાબર NAME2 અનુલક્ષે ટ્રેક 329 00:14:22,190 --> 00:14:25,060 dorm2 સાથે id2 સાથે અનુલક્ષે છે. 330 00:14:25,060 --> 00:14:26,200 તે માત્ર એક વાસણ બની જાય છે. 331 00:14:26,200 --> 00:14:29,350 તેથી તે ઘણો સરળ બને છે થોડા અઠવાડિયા પહેલા થી યાદ, 332 00:14:29,350 --> 00:14:34,300 માત્ર કહેવાય શબ્દમાળા નામો કર્યા અને કદાચ અમને તે ત્રણ આપે છે. 333 00:14:34,300 --> 00:14:36,940 અને પછી કદાચ અમારી પાસે શબ્દમાળા ડોર્મસ છે અને 334 00:14:36,940 --> 00:14:41,900 તે ત્રણ, અથવા સતત સાથે, આઇડી પૂર્ણાંક અને તે ત્રણ છે. 335 00:14:41,900 --> 00:14:45,250 પણ હવે આ લાગે છે થોડી sloppy, અધિકાર. 336 00:14:45,250 --> 00:14:49,440 અમે હજુ સુધી વિદ્યાર્થીઓ અને વિશે વાત કરી રહ્યાં છો હું ખરેખર નીચા સ્તર પર નિવાસ છું 337 00:14:49,440 --> 00:14:50,470 અમલીકરણ વિગતો. 338 00:14:50,470 --> 00:14:52,790 આ વિદ્યાર્થી એક નામ અને ડોર્મ અને ID છે. 339 00:14:52,790 --> 00:14:59,814 >> શા માટે હું માત્ર એક ચલ જાહેર કરી શકો છો વિદ્યાર્થી કહેવામાં આવે છે અને તે ઓ કૉલ કરો. 340 00:14:59,814 --> 00:15:02,230 પછી મેં બીજા એક વિદ્યાર્થી માંગો છો, શા માટે હું માત્ર ટી તે નથી કહેતો. 341 00:15:02,230 --> 00:15:05,260 અથવા હું એક સમગ્ર ટોળું માંગો છો વિદ્યાર્થીઓ, શા માટે હું માત્ર નથી 342 00:15:05,260 --> 00:15:09,740 હું એક સમગ્ર વર્ગ કહે છે વિદ્યાર્થીઓ, અને તે તેમને ત્રણ છે. 343 00:15:09,740 --> 00:15:12,470 અન્ય શબ્દોમાં, હું શા માટે ન આવી શકે કહેવાય મારા પોતાના માહિતી પ્રકાર સાથે 344 00:15:12,470 --> 00:15:15,641 વિદ્યાર્થીઓ જે અંદર છે એક નામ, એક ID છે ડોર્મ છે, 345 00:15:15,641 --> 00:15:16,890 અન્ય ક્ષેત્રો કોઈપણ નંબર છે. 346 00:15:16,890 --> 00:15:19,030 અને તે તમને બહાર વળે બરાબર છે કે કરી શકો છો. 347 00:15:19,030 --> 00:15:21,850 >> તેથી સી સ્ટ્રક્ટ કહેવાય લક્ષણ ધરાવે છે. 348 00:15:21,850 --> 00:15:24,700 એક ભાષા કે લક્ષણ છે કે અમને બરાબર આ કરવા માટે પરવાનગી આપે છે. 349 00:15:24,700 --> 00:15:28,370 હું આગળ જાઓ જાઉં છું અને structs.h ખોલો 350 00:15:28,370 --> 00:15:32,299 અમે જોવા માટે જઈ રહ્યાં છો જ્યાં એક વિદ્યાર્થી વ્યાખ્યા બાદ. 351 00:15:32,299 --> 00:15:35,215 તે તારણ આપે છે - અને આ એક પણ છે એક ID સંડોવતા એક કરતાં સરળ 352 00:15:35,215 --> 00:15:36,080 એક ક્ષણ પહેલા. 353 00:15:36,080 --> 00:15:39,120 તમારી સાથે આવવા માંગો છો, તો તમારા ઘરે બનાવેલા માહિતી પ્રકાર, 354 00:15:39,120 --> 00:15:42,750 અને પૂર્ણાંક ઉપરાંત, અને ચાર અને , હાજર છે અને આ બધા અન્ય ફ્લોટ 355 00:15:42,750 --> 00:15:45,810 તમે શાબ્દિક દ્વારા આમ કરી શકો છો typedef સ્ટ્રક્ટ લેખન, 356 00:15:45,810 --> 00:15:47,880 પછી કેટલાક સર્પાકાર કૌંસ, જે અંદર તમે 357 00:15:47,880 --> 00:15:51,460 તમે કરવા માંગો છો ચલો યાદી આ નવી વૈવિધ્યપૂર્ણ માહિતી સાથે સાંકળવા 358 00:15:51,460 --> 00:15:55,670 એક નામ અને એક ડોર્મ જેવા લખો અને પછી સર્પાકાર કૌંસ પછી 359 00:15:55,670 --> 00:15:57,860 તમે નવી માહિતી પ્રકાર માટે એક નામ આપે છે. 360 00:15:57,860 --> 00:15:59,220 તેથી, ઉદાહરણ તરીકે, વિદ્યાર્થી. 361 00:15:59,220 --> 00:16:03,247 >> અને હવે શું આ વિશે સરસ છે કે છે અમે અનુરૂપ કોડ જોવા હોય તો, 362 00:16:03,247 --> 00:16:05,080 પ્રથમ સંમેલન, ના, આ મૂકી છે 363 00:16:05,080 --> 00:16:08,230 ફાઇલ કહેવાય કંઈક ડોટ એચ માં, અમે હોય છે જે એક હેડર ફાઈલ, 364 00:16:08,230 --> 00:16:09,780 ખૂબ જાતને ઉપયોગ કરવાનું શરૂ કર્યું. 365 00:16:09,780 --> 00:16:12,120 પરંતુ અમે શરૂ કરવા જઈ રહ્યાં છો હવે તદ્દન થોડી ઉપયોગ કરે છે. 366 00:16:12,120 --> 00:16:18,650 અને અમે આ સાથે શું કરી શકો, આખરે, કોડ આ થોડા લીટીઓ 367 00:16:18,650 --> 00:16:22,130 બરાબર છે કે જાહેર છે ડેટા પ્રકાર, એક વિદ્યાર્થી. 368 00:16:22,130 --> 00:16:23,230 અને હવે આપણે તેનો ઉપયોગ કરીએ. 369 00:16:23,230 --> 00:16:27,274 >> હવે હું જવા માટે જઇ રહ્યો છું ફાઇલ structs1.c કહેવાય છે. 370 00:16:27,274 --> 00:16:29,440 અને એક પર એક નજર કરીએ અહીં બહુ ઓછા લક્ષણો છે. 371 00:16:29,440 --> 00:16:32,250 તેથી અહીં સામગ્રી છે મોટે ભાગે પરિચિત છે, અને અમે પડશે 372 00:16:32,250 --> 00:16:35,040 શું નથી પાછા આવો માત્ર એક ક્ષણ પરિચિત. 373 00:16:35,040 --> 00:16:39,880 અલબત્ત આ મારી પોતાની સમાવેશ થાય છે તેમજ નવા છે, જે હેડર ફાઈલ, 374 00:16:39,880 --> 00:16:42,580 3 pset, જ્યાં સિવાય, રિકોલ, અમે helpers.h છે. 375 00:16:42,580 --> 00:16:45,150 તેથી જો તમે # સમાવેશ થાય છે helpers.h યાદ કરી શકે છે. 376 00:16:45,150 --> 00:16:49,381 >> શા માટે છતાં હું અવતરણ મદદથી છું તેના બદલે કોણ કૌંસ છે? 377 00:16:49,381 --> 00:16:50,630 ત્યારે હું તેમને વચ્ચે પસંદ નથી? 378 00:16:50,630 --> 00:16:52,310 હું હંમેશા લાગે કોણ કૌંસ વાપરવા માટે. 379 00:16:52,310 --> 00:16:55,040 અને પછી, એ બધા અચાનક પર રેખા છ હું ડબલ અવતરણ ઉપયોગ કરું છું. 380 00:16:55,040 --> 00:16:55,860 કે શા માટે હોઈ શકે? 381 00:16:55,860 --> 00:16:56,700 અરે વાહ? 382 00:16:56,700 --> 00:16:57,725 >> AUDIENCE: [અશ્રાવ્ય] 383 00:16:57,725 --> 00:16:59,350 ડેવિડ જે MALAN: તે શું એક વાસ્તવિક છે? 384 00:16:59,350 --> 00:17:00,559 પ્રેક્ષક: તે તમારા IDE માં છે. 385 00:17:00,559 --> 00:17:02,475 ડેવિડ જે MALAN: અરે વાહ, કે મારા વાસ્તવિક IDE માં છે. 386 00:17:02,475 --> 00:17:05,690 અને, કારણ કે જ્યારે IDE પર રહેવું ન જોઈએ કે જે હમણાં જ હું ઉપયોગ કરું છું કે જે એક સાધન છે. 387 00:17:05,690 --> 00:17:08,119 તે મારા વર્તમાન છે ડિરેક્ટરી, ખાસ. 388 00:17:08,119 --> 00:17:11,647 તેથી structs.h મારી પોતાની ફાઇલ છે જ્યારે IDE માં સ્થાપિત થયેલ નથી, 389 00:17:11,647 --> 00:17:14,480 ઓપરેટિંગ સિસ્ટમ પોતે જ, તેના બદલે તે મારા વર્તમાન ડિરેક્ટરીમાં છે. 390 00:17:14,480 --> 00:17:16,910 તેથી સંમેલન જો તમે ઇચ્છો તો છે તમારા પોતાના હેડર ફાઈલ સમાવેશ થાય છે, 391 00:17:16,910 --> 00:17:18,200 તમે માત્ર ડબલ નો ઉપયોગ. 392 00:17:18,200 --> 00:17:23,290 >> અમે આ બાબત કહી શકું શું 8 વાક્ય, સામાન્ય રીતે કહીએ તો? 393 00:17:23,290 --> 00:17:25,200 આ શું છે? 394 00:17:25,200 --> 00:17:28,220 # વ્યાખ્યાયિત કંઈક. 395 00:17:28,220 --> 00:17:31,040 આ અધિકાર સ્થિરાંકો રજૂ કરે છે? 396 00:17:31,040 --> 00:17:33,140 તમે છે કરવા માંગો છો તમારા કાર્યક્રમ કિંમત 397 00:17:33,140 --> 00:17:35,110 તમે એક સંપૂર્ણ ઉપયોગ કરે છે વખત ટોળું, તે 398 00:17:35,110 --> 00:17:39,330 , તે બહાર અવયવો સંમેલન સારી હેશ પ્રતીક સાથે, તે જાહેર 399 00:17:39,330 --> 00:17:43,340 બધા માં, સંમેલન દ્વારા, તે પછી, વ્યાખ્યાયિત તે નથી તેમ છતાં word-- મોટા 400 00:17:43,340 --> 00:17:45,320 કડક જરૂરી છે, પરંતુ તે માનવ સંમેલન છે 401 00:17:45,320 --> 00:17:47,210 સ્થિરાંકો ઉઠાવે તેઓ બહાર કૂદી કે જેથી 402 00:17:47,210 --> 00:17:50,380 તમે જગ્યા visually-- અને પછી તમે કરવા માંગો છો કિંમત 403 00:17:50,380 --> 00:17:52,250 કે સતત નામ સમકક્ષ. 404 00:17:52,250 --> 00:17:56,110 કોઈ અર્ધવિરામ છે, પરંતુ ફક્ત તમે ત્યાં પેટર્ન અનુસરે છે. 405 00:17:56,110 --> 00:17:57,770 >> તેથી શું હું આ વાસ્તવિક કોડ કરી રહ્યો છું. 406 00:17:57,770 --> 00:18:00,660 તેથી આપણે એક નજર કરીએ અહીં મુખ્ય કાર્યક્રમ. 407 00:18:00,660 --> 00:18:04,080 12 લીટી માં હું કારણ કે structs.h સમાવેશ થાય છે, 408 00:18:04,080 --> 00:18:06,492 હું હવે જાદુઇ મારા નિકાલ નવી માહિતી પ્રકાર. 409 00:18:06,492 --> 00:18:09,200 હું માત્ર પૂર્ણાંક ઍક્સેસ નથી અને ચાર અને ફ્લોટ, અને શબ્દમાળા, 410 00:18:09,200 --> 00:18:10,060 અને વાદળી અને અન્ય. 411 00:18:10,060 --> 00:18:12,470 હવે હું વપરાશ હોય છે એક વિદ્યાર્થી ડેટા પ્રકાર. 412 00:18:12,470 --> 00:18:17,740 12 લીટી માં, હું બે સંયુક્ત છું તેથી , એક વૈવિધ્યપૂર્ણ માહિતી પ્રકાર અને બે ideas-- 413 00:18:17,740 --> 00:18:18,940 ઝાકઝમાળ મદદથી. 414 00:18:18,940 --> 00:18:21,700 અને તેથી આ કાર્યક્રમ તો હું ખરેખર આધાર માંગો છો 415 00:18:21,700 --> 00:18:24,320 ત્રણ અલગ અલગ વિદ્યાર્થીઓ મારા કાર્યક્રમ માં, હું 416 00:18:24,320 --> 00:18:30,480 મને એક ચલ આપે છે ફક્ત કરી શકો છો જેમાં દરેક કહેવાય વિદ્યાર્થીઓ, 417 00:18:30,480 --> 00:18:32,970 પ્રકાર વિદ્યાર્થીઓ, છે, જે મારા વૈવિધ્યપૂર્ણ માહિતી પ્રકાર છે. 418 00:18:32,970 --> 00:18:35,890 અને, ખાસ કરીને, મને આપી મારા એરે માં તે ત્રણ. 419 00:18:35,890 --> 00:18:37,750 >> તેથી હવે અમે આ કાર્યક્રમ શું કરવું? 420 00:18:37,750 --> 00:18:40,670 અહીં માત્ર એક લૂપ વારો માટે છે કારણ કે, 3 0 થી 421 00:18:40,670 --> 00:18:42,110 વિદ્યાર્થીઓ ની કિંમત શું છે. 422 00:18:42,110 --> 00:18:44,420 હું માત્ર વપરાશકર્તાને પૂછવાની છું મને વિદ્યાર્થી નામ આપે છે. 423 00:18:44,420 --> 00:18:48,090 અને પછી વાક્ય 17 માં, અમે મોટે ભાગે પરિચિત વાક્ય છે. 424 00:18:48,090 --> 00:18:50,370 અમે અમારા જૂના મિત્ર હોય જમણી બાજુ પર GetString. 425 00:18:50,370 --> 00:18:52,345 વાક્યરચના અને શું ભાગ દેખીતી રીતે નવા છે 426 00:18:52,345 --> 00:18:55,130 જો તમે પહેલાં સી પ્રોગ્રામ ક્યારેય કર્યું છે, અને સ્ટ્ર્ક્ટ્સ ઉપયોગ ક્યારેય કર્યો છે? 427 00:18:55,130 --> 00:18:55,510 અરે વાહ? 428 00:18:55,510 --> 00:18:56,417 >> પ્રેક્ષક: .name. 429 00:18:56,417 --> 00:18:57,500 ડેવિડ જે MALAN: .name. 430 00:18:57,500 --> 00:19:01,220 પરંતુ આ એક લીપ ખૂબ જ નથી હવે વિદ્યાર્થીઓ હું કૌંસ કારણ કે 431 00:19:01,220 --> 00:19:02,590 તમે આઇ મી વિદ્યાર્થી આપે છે. 432 00:19:02,590 --> 00:19:04,730 અને તમે ડાઇવ કરવા માંગો છો કે માળખું અંદર, 433 00:19:04,730 --> 00:19:09,490 તમે માત્ર એક જ સમય ઉપયોગ કરે છે અને પછી અંદર ચલ ના નામ, 434 00:19:09,490 --> 00:19:11,900 કે અંદર મિલકત તમે ઍક્સેસ કરવા માંગો છો. 435 00:19:11,900 --> 00:19:14,816 એ જ રીતે, પછી હું પછી પૂછવા તો વપરાશકર્તા મને વિદ્યાર્થી ડોર્મ આપે છે, 436 00:19:14,816 --> 00:19:18,390 તમે એ જ રીતે કે સ્ટોર કરી શકો છો અંદર ડોર્મ ચલ શબ્દમાળા 437 00:19:18,390 --> 00:19:19,940 કે વિદ્યાર્થી માળખું. 438 00:19:19,940 --> 00:19:21,410 >> અને હવે વસ્તુઓ થોડી ફેન્સી વિચાર. 439 00:19:21,410 --> 00:19:24,420 અને આ જોવા જવાનું છે કદાચ ઘણો ખૂબ જલ્દી. 440 00:19:24,420 --> 00:19:27,970 પરંતુ તમે pset માં આ અત્યાર સુધી વધુ જોશો 4, તેથી હવે તે માત્ર નજરે દો. 441 00:19:27,970 --> 00:19:33,364 તે વાક્ય 23 દ્વારા કે બહાર વળે 38, તમે મને કદાચ કરી રહ્યો છું શું વિચારો છો? 442 00:19:33,364 --> 00:19:35,530 હું ટિપ્પણીઓ દૂર કર્યું આજે, પરંતુ આવૃત્તિ માટે 443 00:19:35,530 --> 00:19:38,660 ઓનલાઇન કોડ સંદર્ભ બધી ટિપ્પણીઓ છે. 444 00:19:38,660 --> 00:19:40,171 હું કરી શકાય શું લાગે છે? 445 00:19:40,171 --> 00:19:42,530 >> પ્રેક્ષક: બધા સાથે ફાઈલ સંગ્રહી રહ્યા છીએ વપરાશકર્તા દાખલ કે માહિતી. 446 00:19:42,530 --> 00:19:44,530 >> ડેવિડ જે MALAN: અરે વાહ, બરાબર, આ એક નવી રીત છે 447 00:19:44,530 --> 00:19:46,370 અમે બે જોઈ રહ્યાં છો કે, સી નું બીજું લક્ષણ, 448 00:19:46,370 --> 00:19:48,700 જેમાં હું મારા પોતાના ફાઈલો બનાવી શકો છો. 449 00:19:48,700 --> 00:19:51,580 આમ અત્યાર સુધી, લગભગ દરેક કાર્યક્રમ તેવા પરચૂરણ ખર્ચ કર્યો તમે Stateless છે. 450 00:19:51,580 --> 00:19:53,334 જલદી તે ચાલી કરવામાં આવ્યું છે, કે તે છે. 451 00:19:53,334 --> 00:19:55,000 કોઈ મેમરી અથવા તે સ્મરણ છે. 452 00:19:55,000 --> 00:19:56,110 સેવ કોઈ ફાઇલ છે. 453 00:19:56,110 --> 00:19:58,120 પરંતુ તમે કરવા માંગો છો, તો છે કે ઇનપુટ સેવ 454 00:19:58,120 --> 00:20:02,100 એક રમત અથવા એક કાર્યક્રમ જેમ, થયું આ જેમ, તે અમે આમ કરી શકો છો બહાર કરે છે. 455 00:20:02,100 --> 00:20:04,360 અને તમે આ વધુ જોવા મળશે 4 pset અને વિભાગમાં. 456 00:20:04,360 --> 00:20:08,661 પરંતુ આ વાક્ય 23 અનિવાર્યપણે students.csv તરીકે ઓળખાતી ફાઈલ બનાવે છે. 457 00:20:08,661 --> 00:20:10,160 અને તમે પહેલાં આ જોઇ છે શકે છે. 458 00:20:10,160 --> 00:20:14,250 જો તમે પહેલાં સીએસ અભ્યાસ ક્યારેય કર્યું હોય તો પણ CSV અલ્પવિરામથી-અલગ પડેલ ચલો છે. 459 00:20:14,250 --> 00:20:19,000 તે ખૂબ જ ગરીબ માણસ જેવું છે એક એક્સેલ ફાઈલ આવૃત્તિ, 460 00:20:19,000 --> 00:20:22,270 જે તે ખોલી શકાય છે કે જે થાય છે Excel માં અને એપલ નંબર્સ, 461 00:20:22,270 --> 00:20:23,830 અને તે પંક્તિઓ અને કૉલમ્સ છે. 462 00:20:23,830 --> 00:20:26,485 પરંતુ તે એક માલિકીનું નથી માઈક્રોસોફ્ટ અથવા એપલ જેવી ફોર્મેટ. 463 00:20:26,485 --> 00:20:29,840 તે અલગ માત્ર અલ્પવિરામ છે અમે એક ક્ષણ જોઈ શકશો કે કિંમતો. 464 00:20:29,840 --> 00:20:31,010 >> અને માત્ર એક અનુમાન લે છે. 465 00:20:31,010 --> 00:20:33,480 ખૂબ જ પર લીટી 23 માં અંતે, મારા બીજા દલીલ 466 00:20:33,480 --> 00:20:37,700 કહેવાય આ નવી કાર્ય માટે એફ ફાઈલ ઓપન માટે ઓપન W છે. 467 00:20:37,700 --> 00:20:39,430 W શું સૂચવે શકે છે? 468 00:20:39,430 --> 00:20:40,022 અરે વાહ? 469 00:20:40,022 --> 00:20:41,260 >> પ્રેક્ષક: તે તમને ફાઈલ લખી દે? 470 00:20:41,260 --> 00:20:42,630 >> ડેવિડ જે MALAN: તે દે તમે ફાઈલ લખો. 471 00:20:42,630 --> 00:20:44,810 તેથી ચલો એક દંપતિ છે કે અમે અહીં પ્લગ કરી શકો છો. 472 00:20:44,810 --> 00:20:47,184 પરંતુ તમે માત્ર વાંચી કરવા માંગો છો આ ફાઇલ, તે જોવા છે 473 00:20:47,184 --> 00:20:50,010 અને મેમરીમાં તમે તે વાંચી માત્ર ભાવ અવતરણ ચિહ્નો પૂરાં કરવાં "આર" વાપરો. 474 00:20:50,010 --> 00:20:53,110 તમે લખવા માટે કરવા માંગો છો ફાઇલ, તમે "W" અવતરણ ચિહ્નો પૂરાં કરવાં ભાવ ઉપયોગ કરે છે. 475 00:20:53,110 --> 00:20:55,190 પણ ઉમેરી છે અને અન્ય વસ્તુઓ એક દંપતિ 476 00:20:55,190 --> 00:20:57,356 તમે હાલની ફાઈલો સુધારવા માંગો છો. 477 00:20:57,356 --> 00:21:00,480 હવે આપણે આ જોઈ રાખવા જઈ રહ્યાં છો 24 વાક્ય વસ્તુ હોય, તો પછી અમે પાછા આવો પડશે. 478 00:21:00,480 --> 00:21:02,640 NULL, તે બહાર વળે છે, ખાસ કિંમત છે કે જે 479 00:21:02,640 --> 00:21:06,070 અમુક કાર્યો દ્વારા પરત કરી શકાય છે કંઈક wrong-- ગયો છે, તો 480 00:21:06,070 --> 00:21:08,490 ફાઇલ અસ્તિત્વમાં નથી, તો તમે મેમરી રન આઉટ છે, તો 481 00:21:08,490 --> 00:21:09,620 અન્ય ભૂલો અથવા એક ટોળું. 482 00:21:09,620 --> 00:21:13,470 પરંતુ હવે માટે, ચાલો ફક્ત આ છે કે ધારે દો માત્ર પરંપરાગત ભૂલ ચકાસણી છે. 483 00:21:13,470 --> 00:21:17,090 અહીં 26 લીટી માં, હું વારો છું 0 થી મારા તમામ વિદ્યાર્થીઓ પર 3. 484 00:21:17,090 --> 00:21:20,470 અને આ પ્રકારની પ્રકારની છે એક નવી કાર્ય છે, fprintf, 485 00:21:20,470 --> 00:21:21,460 પરંતુ માત્ર એક અનુમાન લે છે. 486 00:21:21,460 --> 00:21:24,370 Printf ફક્ત પ્રિન્ટ હોય તો ફોર્મેટ સ્ટ્રિંગ, 487 00:21:24,370 --> 00:21:26,507 fprintf કદાચ શું અર્થ છે? 488 00:21:26,507 --> 00:21:27,590 પ્રેક્ષક: ફાઇલ પર છાપો. 489 00:21:27,590 --> 00:21:29,290 ડેવિડ જે MALAN: પ્રિંટ એક ફાઈલ ફોર્મેટ સ્ટ્રિંગ. 490 00:21:29,290 --> 00:21:31,180 કે જે વધારાના શું છે એફ અર્થ ફાઈલ છે. 491 00:21:31,180 --> 00:21:36,420 અને નવા પ્રથમ દલીલ હોઈ શકે છે તમારી ફાઈલ રજૂ કરે છે ચલ. 492 00:21:36,420 --> 00:21:38,866 પછી અમે માત્ર એક બંધારણ છે માત્ર printf જેવા શબ્દમાળા. 493 00:21:38,866 --> 00:21:40,740 અને પણ આ છતાં વાક્યરચના આ માત્ર નવું છે 494 00:21:40,740 --> 00:21:44,610 આ વિદ્યાર્થી નામ પ્લગ અર્થ થાય છે, વિદ્યાર્થી ડોર્મ માં પ્લગ, અને પછી 495 00:21:44,610 --> 00:21:47,160 fclose સાથે, ફાઈલ બંધ કરો. 496 00:21:47,160 --> 00:21:49,730 અને તે પછી આ નવું છે lastly-- અને અમે આ માટે પાછા આવો પડશે 497 00:21:49,730 --> 00:21:53,240 હું મુક્ત છું long-- પહેલાં કારણો માટે વિદ્યાર્થી 498 00:21:53,240 --> 00:21:54,860 કે ત્યાં ઉપર થયું. 499 00:21:54,860 --> 00:21:56,820 પરંતુ અમે પાછા આવો પડશે કે long-- પહેલાં 500 00:21:56,820 --> 00:21:59,820 કારણ કે GetString છે કેવી રીતે છે ખરેખર હૂડ નીચે કામ કરે છે. 501 00:21:59,820 --> 00:22:01,280 >> તેથી આપણે અહીં એક ઝડપી નજર કરીએ. 502 00:22:01,280 --> 00:22:04,380 હું મારા ડિરેક્ટરીમાં LS લખો, તો હું નથી કે નોટિસ 503 00:22:04,380 --> 00:22:09,360 , students.csv તરીકે ઓળખાતી ફાઈલ છે માત્ર નથી ત્યાં, અસ્તિત્વમાં નથી. 504 00:22:09,360 --> 00:22:14,965 હવે હું આ કાર્યક્રમ કમ્પાઇલ તેથી જો, , સ્ટ્ર્ક્ટ્સ 1 બનાવે છે. / સ્ટ્ર્ક્ટ્સ 1, 505 00:22:14,965 --> 00:22:20,570 અને હું આગળ જાઓ અને લખો જાઉં છું યેલ અંતે બર્કલે માં રહે છે Andi. 506 00:22:20,570 --> 00:22:26,350 અમે રોબ પાસે જઈ રહ્યાં છો, જે આ દિવસોમાં થાયર રહે છે. 507 00:22:26,350 --> 00:22:33,760 અને જ્યાં સાથે આવો છે, મને લાગે છે, મારિયા, માથેર છે 508 00:22:33,760 --> 00:22:35,100 જો હું યોગ્ય રીતે યાદ છે. 509 00:22:35,100 --> 00:22:36,460 >> તેથી કંઈ થાય તેમ લાગે છે. 510 00:22:36,460 --> 00:22:40,680 પરંતુ હવે હું ls લખો તો, students.csv છે. 511 00:22:40,680 --> 00:22:43,080 ચાલો આગળ અને ઓપન students.csv જવા દો. 512 00:22:43,080 --> 00:22:46,050 આ ફરીથી ખૂબ જ છે હલકો ફાઈલ ફોર્મેટ. 513 00:22:46,050 --> 00:22:49,570 પરંતુ હું માત્ર એક પ્રણાલી અપનાવી કર્યું કે હું અહીં બે પંક્તિઓ અને કૉલમ્સ છે. 514 00:22:49,570 --> 00:22:52,020 પ્રથમ સ્તંભ છે લોકો પ્રથમ નામો. 515 00:22:52,020 --> 00:22:55,740 બીજા સ્તંભ વિદ્યાર્થી છે ડોર્મ, અથવા કોલેજ, અથવા ઘર, અથવા whatnot. 516 00:22:55,740 --> 00:22:57,900 અને હવે હું આ સાચવી લીધો છે કાયમી ફાઈલ છે. 517 00:22:57,900 --> 00:22:59,280 >> તેથી તે છે કે જે બધી રસપ્રદ નથી. 518 00:22:59,280 --> 00:23:02,980 પરંતુ આ માત્ર એક આધાર પથ્થર હવે માહિતી હોવાના માટે સમર્થ હોવા માટે 519 00:23:02,980 --> 00:23:04,040 કાયમ. 520 00:23:04,040 --> 00:23:08,340 તેથી હવે શું વધુ અમે કરી શકો છો માતાનો જોવા દો આ અને અન્ય લક્ષણો સાથે કામ કરે છે. 521 00:23:08,340 --> 00:23:10,729 પરંતુ પ્રથમ, કોઈપણ પ્રશ્ન છે? 522 00:23:10,729 --> 00:23:12,145 તે ઘણો હતો, અને તે ઝડપી હતી. 523 00:23:12,145 --> 00:23:16,131 પરંતુ તમે ઘણો જોશો 4 pset વધુ, તેમજ. 524 00:23:16,131 --> 00:23:16,630 અરે વાહ? 525 00:23:16,630 --> 00:23:19,360 >> પ્રેક્ષક: એક માર્ગ છે તે ફાઈલ નામો ઉમેરી રહ્યા છે ચાલુ? 526 00:23:19,360 --> 00:23:19,880 >> ડેવિડ જે MALAN: ગુડ પ્રશ્ન. 527 00:23:19,880 --> 00:23:21,800 ચાલુ રાખવા માટે એક માર્ગ છે તે ફાઈલ નામો ઉમેરી રહ્યા છે? 528 00:23:21,800 --> 00:23:22,340 હા. 529 00:23:22,340 --> 00:23:24,630 અને હકીકતમાં, તમે અંત તો અપ ફાઈલ ફરીથી ખોલીને 530 00:23:24,630 --> 00:23:26,780 તમે ભાવ ઉપયોગ કરશે અવતરણ ચિહ્નો પૂરાં કરવાં "એ" ઉમેરો માટે, 531 00:23:26,780 --> 00:23:31,090 જે માત્ર એક નવી લાઇન ઉમેરો કરશે, એક નવી લાઇન ફરીથી અને ફરીથી, બરાબર. 532 00:23:31,090 --> 00:23:32,010 સારા પ્રશ્ન. 533 00:23:32,010 --> 00:23:32,950 અન્ય પ્રશ્નો છે? 534 00:23:32,950 --> 00:23:33,450 અરે વાહ? 535 00:23:33,450 --> 00:23:35,580 પ્રેક્ષક: તમે ચાલી તો કાર્યક્રમ ફરીથી હમણાં, 536 00:23:35,580 --> 00:23:38,000 તે માટે નામો ઉમેરી રહ્યા રાખવા કરશે ફાઇલ અથવા તે એક નવી ફાઇલ ખોલો છો? 537 00:23:38,000 --> 00:23:38,740 >> ડેવિડ જે MALAN: આહ, સારો પ્રશ્ન. 538 00:23:38,740 --> 00:23:41,448 તમે ફરીથી અધિકાર કાર્યક્રમ ચાલી હતી, તો હવે, કદાચ નવા નામો માં ટાઇપ, 539 00:23:41,448 --> 00:23:44,820 તે ફાઈલ ઉમેરો કરશે અથવા ફાઇલ પર ફરી લખશો? 540 00:23:44,820 --> 00:23:47,420 બાદમાં, હું છું કારણ કે ઉમેરો લેબલને સ્થિતિને વાપરી રહ્યા નથી. 541 00:23:47,420 --> 00:23:49,930 અને હું માત્ર અકારણ છું કારણ કે લખવા માટે ફાઇલ ખોલીને, 542 00:23:49,930 --> 00:23:51,310 તે માત્ર ફાઇલ પર ફરીથી લખી રહ્યું છે. 543 00:23:51,310 --> 00:23:54,570 તેથી હું ખરેખર કંઈક ઉમેરવા શું કરવાની જરૂર છે છે, હું ખરેખર એક લાંબા ગાળાના હોય માંગો છો તો 544 00:23:54,570 --> 00:23:55,350 ડેટાબેઝ. 545 00:23:55,350 --> 00:23:58,220 >> હવે CSV પણ, પ્રમાણિકપણે, ઉપયોગી છે માટે જેમ તમે છો તો writing-- 546 00:23:58,220 --> 00:24:00,100 અને અમે આખરે આ જોશો પછી જ્યારે સત્ર માં 547 00:24:00,100 --> 00:24:01,455 અમે અન્ય હેતુઓ માટે CSVs ઉપયોગ કરે છે. 548 00:24:01,455 --> 00:24:04,920 તમે બધા લોકોને સંગ્રહ કરવા માંગો છો જે, કેટલાક ઘટના માટે રજીસ્ટર કરેલ છે 549 00:24:04,920 --> 00:24:07,420 અથવા તમારા વિદ્યાર્થી માટે સાઇન અપ જૂથ, અથવા તે કંઈક, 550 00:24:07,420 --> 00:24:10,330 આ પ્રકારની ડેટા સ્ટોર બંધારણ સુપર અનુકૂળ છે. 551 00:24:10,330 --> 00:24:12,580 શાબ્દિક કારણ કે, હું તો આ ફાઈલ ડાઉનલોડ કરવા માટે હતા. 552 00:24:12,580 --> 00:24:14,540 હું double-- શકે છે અને ચાલો ખરેખર આ પ્રયાસ કરીએ 553 00:24:14,540 --> 00:24:16,720 હું અહીં Excel અથવા નંબર્સ હોય છે. 554 00:24:16,720 --> 00:24:19,130 >> હું જમણી ક્લિક કરો જાઉં છું અથવા મારા ફાઈલ નિયંત્રણ ક્લિક કરો. 555 00:24:19,130 --> 00:24:20,020 ઓહ. 556 00:24:20,020 --> 00:24:21,830 અધિકાર ક્લિક કરો અથવા મારા ફાઈલ નિયંત્રણ ક્લિક કરો. 557 00:24:21,830 --> 00:24:24,960 પર આવે છે, મારા માઉસ સહકારથી નથી. 558 00:24:24,960 --> 00:24:32,694 હું જાઉં છું Download-- તેથી અહીં બધી ફાઈલો ડાઉનલોડ 559 00:24:32,694 --> 00:24:33,860 માત્ર જેથી હું આ એક પડાવી લેવું કરી શકો છો. 560 00:24:33,860 --> 00:24:37,850 અને આ કામ કરે છે જો માતાનો જોવા દો students.csv-- પ્રથમ વખત 561 00:24:37,850 --> 00:24:39,310 હું સક્રિય છે. 562 00:24:39,310 --> 00:24:41,360 હવે તેઓ મારા સંપર્કો જોવા માંગો છો. 563 00:24:41,360 --> 00:24:44,310 હવે, હું રજીસ્ટર કરવા માટે જરૂર છે. 564 00:24:44,310 --> 00:24:47,620 તે CSVs વાપરવા માટે કેવી રીતે સરળ જુઓ? 565 00:24:47,620 --> 00:24:50,840 હા, તે તારીખ સુધી રાખો. 566 00:24:50,840 --> 00:24:52,375 ઠીક છે, હવે અમે વર્ગ માટે તૈયાર છો. 567 00:24:52,375 --> 00:24:58,750 568 00:24:58,750 --> 00:25:00,370 ઓહ, ઠીક છે, નવું શું છે? 569 00:25:00,370 --> 00:25:02,920 ઠીક છે, બંધ કરો. 570 00:25:02,920 --> 00:25:04,750 કે જાદુઈ હતી. 571 00:25:04,750 --> 00:25:07,280 ઠીક છે, હવે અમે અપડેટ હોય છે. 572 00:25:07,280 --> 00:25:10,890 અને હવે, તે ભૂલી ગયા છો શું હું મૂળ ખોલી ફાઇલ, 573 00:25:10,890 --> 00:25:13,090 પરંતુ ત્યાં a-- અમે શું જાઓ. 574 00:25:13,090 --> 00:25:16,341 ઠીક છે, તેથી હવે અમે એક એક્સેલ ફાઈલ છે. 575 00:25:16,341 --> 00:25:18,290 આભાર. 576 00:25:18,290 --> 00:25:20,764 >> ઠીક છે, હું કર્યું તેથી શું સરળ ભાગ હતો. 577 00:25:20,764 --> 00:25:23,930 અલબત્ત હું પૂર્વ સ્થાપિત કરી શકે છે એક્સેલ, અથવા નંબરો, અથવા ગમે તે કાર્યક્રમ. 578 00:25:23,930 --> 00:25:25,846 પરંતુ આ કારણ કે સરસ છે, હવે હું કામ કરી શકે છે 579 00:25:25,846 --> 00:25:28,090 પ્રમાણભૂત બંધારણમાં માં માહિતી. 580 00:25:28,090 --> 00:25:30,294 >> તેથી હવે દો સંદર્ભ અમે બોલ છોડી જ્યાં સ્વિચ 581 00:25:30,294 --> 00:25:32,710 શરૂ કરવા માટે હતી, જે છેલ્લા સમય, તાલીમ વ્હીલ્સ લઇ બોલ. 582 00:25:32,710 --> 00:25:34,543 પરંતુ પ્રથમ, તમે ન હતી આ અગાઉ બપોરના જોવા 583 00:25:34,543 --> 00:25:38,150 ફરી આગ અહીં શું થઈ રહ્યું છે અને ન્યૂ હેવન માં કેમ્બ્રિજ, સિતાર આઇસ. 584 00:25:38,150 --> 00:25:43,150 શક્ય એટલું જલદી CS50s વેબસાઇટ પર સાઇન ઇન કરો CS50 વિદ્યાર્થીઓ અને સ્ટાફ સાથે જોડાવા માટે. 585 00:25:43,150 --> 00:25:46,090 >> તેથી અમે તાલીમ વ્હીલ્સ લીધો સોમવારે બંધ નીચે પ્રમાણે 586 00:25:46,090 --> 00:25:49,120 શબ્દમાળા જાહેર કરવામાં આવ્યું છે કેટલાક સમય માટે CS50s પુસ્તકાલય. 587 00:25:49,120 --> 00:25:52,650 તે માટે પરવાનગી આપે, કારણ કે તે સારું છે અમને હોવાથી ચલો વિશે વાત કરવા માટે 588 00:25:52,650 --> 00:25:54,660 સંપૂર્ણ શબ્દો અને વાકયો અને વધુ. 589 00:25:54,660 --> 00:25:56,710 પરંતુ તે અસ્તિત્વમાં નથી શબ્દમાળા બહાર કરે છે. 590 00:25:56,710 --> 00:26:00,200 કે જે હમણાં જ એક પર્યાય, અથવા ઉપનામ છે, અમે કંઈક માટે બનાવેલ છે કે 591 00:26:00,200 --> 00:26:03,780 ખરેખર થોડી વધુ છે ટેકનિકલ ચાર રચે છે * કહેવાય છે. 592 00:26:03,780 --> 00:26:07,900 >> અને ખરેખર, અમે એક ઉદાહરણ જોવા મળી હતી સોમવારે એક કાર્યક્રમ 593 00:26:07,900 --> 00:26:11,200 કે અમે અપેક્ષા તદ્દન તરીકે વર્તે ન હતી. 594 00:26:11,200 --> 00:26:13,630 આ સરખામણી-0, ફાઈલ હતી. 595 00:26:13,630 --> 00:26:17,910 અને જો, કે તુલના -0 યાદ હું સોમવારે કાર્યક્રમ પુનઃકમ્પાઈલ 596 00:26:17,910 --> 00:26:22,670 અને ચલાવવા-0 સરખાવવા અને મોમ લખો ફરી લોઅરકેસ માં લોઅરકેસ, અને મોમ. 597 00:26:22,670 --> 00:26:25,320 આ કાર્યક્રમ હું આગ્રહ વિવિધ વસ્તુઓ લખો 598 00:26:25,320 --> 00:26:29,210 પણ મોમ, બધા છતાં લોઅરકેસ, દૃષ્ટિની સમાન છે. 599 00:26:29,210 --> 00:26:31,990 તેથી ટૂંકા જવાબ શું હતો કમ્પ્યુટર વિચારે શા માટે 600 00:26:31,990 --> 00:26:34,500 તે બે શબ્દમાળાઓ અલગ છે? 601 00:26:34,500 --> 00:26:35,250 અરે વાહ? 602 00:26:35,250 --> 00:26:36,534 >> AUDIENCE: [અશ્રાવ્ય] 603 00:26:36,534 --> 00:26:37,450 ડેવિડ જે MALAN: અધિકાર. 604 00:26:37,450 --> 00:26:39,600 તેથી, મોમ, પ્રથમ વખત હું આવી રહી છે, તે લખો 605 00:26:39,600 --> 00:26:42,710 મારું કમ્પ્યુટર માં ક્યાંક સંગ્રહિત મેમરી પરંતુ એક અલગ સ્થાન 606 00:26:42,710 --> 00:26:44,690 બીજી વખત કરતાં હું Mom લખો. 607 00:26:44,690 --> 00:26:46,580 હવે તે ચોક્કસપણે ઑપ્ટિમાઇઝ કરી શકે છે. 608 00:26:46,580 --> 00:26:49,205 કમ્પ્યુટર સ્માર્ટ હોઈ શકે છે અને હેય, આ બે શબ્દમાળાઓ ખ્યાલ 609 00:26:49,205 --> 00:26:49,954 તેઓ સમાન છો. 610 00:26:49,954 --> 00:26:51,520 મને redundantly તેને સંગ્રહવા ન દો. 611 00:26:51,520 --> 00:26:54,229 પરંતુ એન્જીનિયરિંગ કે નથી ઓપ્ટિમાઇઝેશન તમે તેમને કહી જ્યાં સુધી. 612 00:26:54,229 --> 00:26:56,061 તેથી, મૂળભૂત રીતે, તેઓ છો માત્ર અંત રહ્યું 613 00:26:56,061 --> 00:26:57,670 મેમરી બે અલગ અલગ સ્થળોએ. 614 00:26:57,670 --> 00:27:01,570 અને તેથી, જ્યારે વધુ સ્પષ્ટ કરવા અમે બે શબ્દમાળાઓ સરખામણી 615 00:27:01,570 --> 00:27:03,950 પ્રથમ તરીકે ઓળખાતું હતું એસ, બીજા તરીકે ઓળખાતું હતું 616 00:27:03,950 --> 00:27:08,530 ટી, ખાસ હું શું હતું વાક્ય પર 13 અહીં સરખામણી? 617 00:27:08,530 --> 00:27:09,494 યાહ. 618 00:27:09,494 --> 00:27:12,390 >> પ્રેક્ષક: તે મેમરીમાં સ્થળ છે ચલ માટે નિર્દેશ કરશે. 619 00:27:12,390 --> 00:27:14,900 >> ડેવિડ જે MALAN: બરાબર છે, હું હતો મેમરી સ્થળ સરખામણી 620 00:27:14,900 --> 00:27:16,300 કે તે ચલો પર ધ્યાન. 621 00:27:16,300 --> 00:27:20,560 તેથી ખાસ કરીને, જો મોમ ખાતે કરવામાં આવી હતી બાઇટ નંબર 1, અને 2, અને 3 622 00:27:20,560 --> 00:27:24,020 અને 4-- કારણ કે બેકસ્લેશ યાદ 0 ઓવરને અંતે બધી રીતે પ્રયત્ન કરવાની જરૂર છે. 623 00:27:24,020 --> 00:27:29,420 અને મોમ, એમ ઓ એમ અન્ય ઉદાહરણ છે, સરનામું 10, 11, 12, અને 13 ટકા હતો. 624 00:27:29,420 --> 00:27:33,100 હું 1 સરખામણી કરવામાં આવી હતી, તે સરનામું મેમરી કે સ્થાન, 625 00:27:33,100 --> 00:27:35,160 10 સામે છે, જે છે દેખીતી રીતે જ નથી. 626 00:27:35,160 --> 00:27:36,260 1 થી 10 નથી. 627 00:27:36,260 --> 00:27:39,620 >> તેથી આ કે સરસ છે તે ખૂબ સરળ છે. 628 00:27:39,620 --> 00:27:42,870 પરંતુ તે ત્યાં સુધી સમસ્યારૂપ છે અમે શબ્દમાળાઓ સરખાવવા માટે લાગતું નથી કરી શકો છો. 629 00:27:42,870 --> 00:27:44,930 તેથી fundamentally-- અને આ નીચા સ્તરે, 630 00:27:44,930 --> 00:27:47,300 તમે અમલ કરવા ઇચ્છતા હોય તો એક કાર્યક્રમ સરખાવવા માટે 631 00:27:47,300 --> 00:27:50,270 બે અલગ શબ્દો કે વપરાશકર્તા ગુણવત્તા માટે લખ્યો છે 632 00:27:50,270 --> 00:27:53,944 તેઓ ચાર રચે અપ લાઇન કરવા માત્ર સામાન્ય અર્થમાં ઘરનાં પરચૂરણ કામો, 633 00:27:53,944 --> 00:27:55,360 અમે શું, દેખીતી રીતે કરવા માટે જરૂરી છે? 634 00:27:55,360 --> 00:27:57,940 તે માત્ર પૂરતી નથી તે બે સરનામાં પર દેખાય છે. 635 00:27:57,940 --> 00:27:58,860 અમે શું કરવાની જરૂર છે? 636 00:27:58,860 --> 00:27:59,360 અરે વાહ? 637 00:27:59,360 --> 00:28:01,120 >> પ્રેક્ષક: દ્વારા ફરી વળવું શબ્દમાળા [અશ્રાવ્ય]. 638 00:28:01,120 --> 00:28:02,600 >> ડેવિડ જે MALAN: અરે વાહ, ચાલો શબ્દમાળા દ્વારા ફરી વળવું. 639 00:28:02,600 --> 00:28:05,808 માતાનો લૂપ, જ્યારે લૂપ માટે ઉપયોગ દો, અથવા તમારી સાથે સૌથી વધુ આરામદાયક છો ગમે. 640 00:28:05,808 --> 00:28:08,840 અને અમે ક્યાંક બે શબ્દમાળાઓ મળી છે તો યાદમાં, દરેક માતાનો જોવા દો 641 00:28:08,840 --> 00:28:11,770 પ્રથમ અક્ષર, પછી દરેક બીજા છે પાત્ર, પછી ત્રીજા, અને ચોથા, 642 00:28:11,770 --> 00:28:15,206 અને પાંચમા અમે હિટ સુધી શું ખાસ સંત્રી કિંમત? 643 00:28:15,206 --> 00:28:16,080 AUDIENCE: [અશ્રાવ્ય] 644 00:28:16,080 --> 00:28:18,800 ડેવિડ જે MALAN: અરે વાહ, આ બેકસ્લેશ શૂન્ય, ક્યાં શબ્દમાળા માં જે બિંદુએ 645 00:28:18,800 --> 00:28:20,100 અમે તે છે નક્કી કરી શકો છો. 646 00:28:20,100 --> 00:28:21,970 અમે દરેક એક અક્ષર મેળ ખાતી છે? 647 00:28:21,970 --> 00:28:22,990 જો નહિં, તો ખોટા આવો. 648 00:28:22,990 --> 00:28:24,770 જો આમ હોય, સાચું આવો. 649 00:28:24,770 --> 00:28:28,800 અને તેથી કે શું આ આવૃત્તિ બરાબર છે કાર્યક્રમ તુલના-1.c કરે છે. 650 00:28:28,800 --> 00:28:31,677 તે સમાન છે અમે શું કે હું કરેલા સિવાય સોમવાર અંતે જોવામાં 651 00:28:31,677 --> 00:28:34,760 છતાં શબ્દ શબ્દમાળા છુટકારો મેળવેલ કે બધા કોઈ કાર્યાત્મક impact-- છે 652 00:28:34,760 --> 00:28:37,450 હવે હું શું કરી રહ્યો છું દૂર છે કેટલાક દ્રશ્ય તાલીમ વ્હીલ્સ, 653 00:28:37,450 --> 00:28:40,880 પરંતુ સ્પષ્ટ જોવા માટે કે ઓ અને ટી સરનામાઓ છે. 654 00:28:40,880 --> 00:28:43,020 અને તે શું તારો ફૂદડી રજૂ 655 00:28:43,020 --> 00:28:46,690 એક સરનામું અન્યથા ઓળખાય છે, વધુ ટેકનિકલી નિર્દેશક છે. 656 00:28:46,690 --> 00:28:49,880 >> તેથી હું ઓ જાહેર કરે છે ત્યારે લાઈન 9 અને કોલસો બનાવો * ઓ કહે છે, 657 00:28:49,880 --> 00:28:52,160 કે મને શબ્દમાળા આપે અર્થ એ નથી. 658 00:28:52,160 --> 00:28:56,360 કે મને જેની ચલ આપી અર્થ એ થાય જીવનનો હેતુ એક સરનામું સ્ટોર છે. 659 00:28:56,360 --> 00:29:00,400 હું મૂકવા માટે વિશે છું તેને એક શબ્દમાળા સરનામું. 660 00:29:00,400 --> 00:29:03,500 અને ખરેખર, GetString હોઈ સ્પષ્ટ, શબ્દમાળા પાછા નથી. 661 00:29:03,500 --> 00:29:06,110 તે મમ્મીનું પાછા નથી બેકસ્લેશ શૂન્ય, સે દીઠ. 662 00:29:06,110 --> 00:29:10,005 ખાસ શું છે GetString નથી અને ચોક્કસપણે પાછા? 663 00:29:10,005 --> 00:29:10,880 AUDIENCE: [અશ્રાવ્ય] 664 00:29:10,880 --> 00:29:14,080 ડેવિડ જે MALAN: એક સરનામું પ્રથમ અક્ષર સરનામું 665 00:29:14,080 --> 00:29:16,070 કેટલાક શબ્દમાળા માં મેળવેલ છે. 666 00:29:16,070 --> 00:29:19,250 અને તેથી હવે અમે જોઈ રહ્યાં છો ફરી એક ખાસ શબ્દ. 667 00:29:19,250 --> 00:29:20,640 અને, હું આ અગાઉ જશ આપ્યો હતો. 668 00:29:20,640 --> 00:29:23,620 આ સારી રીત હોઈ ચાલે છે આપણે હવે ફરીથી અને ફરીથી જોશો કે. 669 00:29:23,620 --> 00:29:27,540 મને લાગે છે કે તેની ખાતરી કરવા માટે ચકાસણી છું ઓ નલ નથી અને ટી નલ નથી. 670 00:29:27,540 --> 00:29:30,100 ખરેખર મારા પર આધારિત છે કારણ ઝડપી ઉલ્લેખ અગાઉ, 671 00:29:30,100 --> 00:29:35,510 GetString નથી આપે તો અર્થ શકે એક સરનામું, પરંતુ ફરીથી, કે જે એન યુ એલ એલ, 672 00:29:35,510 --> 00:29:36,990 કેટલાક ખાસ કિંમત છે? 673 00:29:36,990 --> 00:29:37,890 >> પ્રેક્ષક: ભૂલ. 674 00:29:37,890 --> 00:29:38,600 >> ડેવિડ જે MALAN: તે એક ભૂલ છે. 675 00:29:38,600 --> 00:29:39,550 કંઈક ખોટું થયું. 676 00:29:39,550 --> 00:29:41,341 અને શું સામાન્ય ખાસ કરીને થાય છે શકે છે 677 00:29:41,341 --> 00:29:45,162 strings-- જેની સાથે હોઈ શકે છે advance-- અજ્ઞાત લંબાઈ 678 00:29:45,162 --> 00:29:46,870 કદાચ એન્જીનિયરિંગ ' મેમરી બહાર, કદાચ 679 00:29:46,870 --> 00:29:49,280 તમે આવા ટાઇપ લાંબા શબ્દ અથવા વાક્ય 680 00:29:49,280 --> 00:29:51,880 અથવા જેમ કે વિશાળ નિબંધ પેસ્ટ માત્ર પૂરતી મેમરી છે. 681 00:29:51,880 --> 00:29:55,340 અને તેથી GetString પરત ન કરી શકે સમગ્ર વસ્તુ ના સરનામું, 682 00:29:55,340 --> 00:29:56,620 તેથી તે માત્ર કંઈ આપે છે. 683 00:29:56,620 --> 00:30:00,580 અને તે એક ભૂલ થયું છે કહે છે ખાસ નલ કિંમત પરત દ્વારા. 684 00:30:00,580 --> 00:30:02,890 તેથી તે વાત કરવા માટે, શૂન્ય સરનામું છે. 685 00:30:02,890 --> 00:30:06,157 >> હવે તે બહાર વળે સી સાથે આવે છે કે પુનરાવૃત્તિ કરે છે કાર્ય. 686 00:30:06,157 --> 00:30:09,240 અમે સાથે આ અમલ કરવાની જરૂર નથી લૂપ અથવા જ્યારે લૂપ જાતને માટે. 687 00:30:09,240 --> 00:30:11,150 અમે એક કાર્ય ઉપયોગ કરી શકો છો સંક્ષિપ્તમાં કહેવાય છે, 688 00:30:11,150 --> 00:30:15,400 જેની કોમ્પ જગાડવો, અથવા શબ્દમાળા તુલના જીવનનો હેતુ બરાબર તે કરવા માટે છે. 689 00:30:15,400 --> 00:30:19,990 તમે તેને બે પોઇન્ટર, બે સરનામાં આપે છે, અને તે સરનામાં પર જશે 690 00:30:19,990 --> 00:30:23,130 અને પછી પત્ર તુલના ગુણવત્તા માટે અક્ષર માટે પત્ર, 691 00:30:23,130 --> 00:30:26,610 સાચું શું છે ત્યારે જ બંધ? 692 00:30:26,610 --> 00:30:31,540 તર્ક કોમ્પ જગાડવો જોઈએ માત્ર સ્પષ્ટ વારો હોઈ બંધ? 693 00:30:31,540 --> 00:30:35,400 તે એક બેકસ્લેશ 0 બનાવ્યા ત્યારે ક્યાં શબ્દમાળા છે, કે જે સમયે તે નક્કી કરી શકો છો 694 00:30:35,400 --> 00:30:38,910 બધું, મેળ ખાતી છે કે એક ફરક છે? 695 00:30:38,910 --> 00:30:42,740 >> અમે હવે આ ચલાવો અને તેથી જો, આનો પ્રયાસ કરો અમારા ઓછી કેપિટલાઈઝેશન રમત 696 00:30:42,740 --> 00:30:49,260 તેથી તુલના -1, ./compare-1 બનાવે છે, અને લોઅરકેસ બંને સમય Mom લખો. 697 00:30:49,260 --> 00:30:50,560 હવે તે જ વાત છે. 698 00:30:50,560 --> 00:30:54,080 અને હું સાથે તેને ફરીથી કરવા હોય તો લોઅરકેસ અને પછી કદાચ મોટા. 699 00:30:54,080 --> 00:30:56,720 હવે તે ખરેખર અલગ ઉપલા અને લોઅરકેસ વચ્ચે. 700 00:30:56,720 --> 00:31:00,440 તેથી કે જે બધી હાર્ડ અથવા જાદુઈ છે, પરંતુ તે હવે સમજાવે છે 701 00:31:00,440 --> 00:31:03,140 શું હૂડ નીચે ચાલી રહ્યું છે. 702 00:31:03,140 --> 00:31:07,640 >> તેથી વધુ અમે બહાર કાઢી શકો છો શું પાઠ આ પ્રકારની છે? 703 00:31:07,640 --> 00:31:08,980 તેથી આપણે આ પર એક નજર કરીએ. 704 00:31:08,980 --> 00:31:15,380 હું આગળ જાઓ અને લખવા જઈ રહ્યો છું ઝડપી કાર્યક્રમ અહીં કોપી 0 કહેવાય છે. 705 00:31:15,380 --> 00:31:21,594 અને હવે આપણે આગળ અને ખરેખર જવા દો ચાલો કોપી 0 આ કરવા દો 706 00:31:21,594 --> 00:31:23,010 હું અહીં મળી છે તે પર એક નજર. 707 00:31:23,010 --> 00:31:24,712 હું પ્રથમ વપરાશકર્તા કહેવું કંઈક કહે છે. 708 00:31:24,712 --> 00:31:26,420 પછી હું એક શબ્દમાળા વિચાર અને હું તે સંગ્રહિત. 709 00:31:26,420 --> 00:31:29,810 ઓ બરાબર તો પછી હું તપાસ નલ સમકક્ષ ફક્ત 1 આવો. 710 00:31:29,810 --> 00:31:31,590 તેથી આ માત્ર પ્રમાણભૂત ભૂલ ચકાસણી છે. 711 00:31:31,590 --> 00:31:33,112 રસપ્રદ કંઈ થયું છે. 712 00:31:33,112 --> 00:31:36,320 અને હકીકતમાં, અમે ભૂલ છુટકારો મળે તો ચકાસણી, આ અઠવાડિયે 1 કોડ જેવી લાગે છે 713 00:31:36,320 --> 00:31:36,985 આ ક્ષણે. 714 00:31:36,985 --> 00:31:39,110 પરંતુ હું એક વિચાર શરૂ કર્યું તે વિશે સારી થોડી. 715 00:31:39,110 --> 00:31:43,340 >> હવે લીટી 16, એક સપ્તાહ પહેલાં, કદાચ પણ થોડા દિવસ અથવા મિનિટ પહેલા 716 00:31:43,340 --> 00:31:46,720 તમે વાક્ય 16 કહી શકે એક ચલ કહેવાય ટી બનાવવા 717 00:31:46,720 --> 00:31:48,219 અને નકલ તેને છે. 718 00:31:48,219 --> 00:31:50,010 અને તે સંપૂર્ણપણે છે વાજબી takeaway. 719 00:31:50,010 --> 00:31:51,560 પરંતુ હવે વધુ ચોક્કસ હોય છે. 720 00:31:51,560 --> 00:31:54,190 રેખા 16 માં શું થઈ રહ્યું છે? 721 00:31:54,190 --> 00:31:56,170 શું નકલ મેળવવામાં આવે છે જમણેથી ડાબી? 722 00:31:56,170 --> 00:31:56,669 અરે વાહ? 723 00:31:56,669 --> 00:31:58,490 પ્રેક્ષક: ટી ઓ એક સરનામું રહ્યો છે? 724 00:31:58,490 --> 00:32:01,220 >> ડેવિડ જે MALAN: બરાબર, ટી ઓ સરનામું રહ્યો છે. 725 00:32:01,220 --> 00:32:05,170 હું જવા જો તેથી, હવે સ્પષ્ટ થઈ પાછા અગાઉ ઉદાહરણ 726 00:32:05,170 --> 00:32:08,520 અને હું લખ્યો કર્યું આ વસ્તુ બહાર કાઢે છે. 727 00:32:08,520 --> 00:32:11,640 અને હું લખ્યો છે તે વાહ અહીં એસ છે, અને અહીં 728 00:32:11,640 --> 00:32:15,830 હું ક્યાંક માં ટાઇપ કર્યું છે તે મેમરી, મોમ અને પછી એક બેકસ્લેશ 729 00:32:15,830 --> 00:32:17,840 મારા માટે ઉમેરવામાં આવ્યું છે કે 0. 730 00:32:17,840 --> 00:32:23,060 શું હું અહીં સંગ્રહિત, યાદ આ સ્થાન 1, 2, 3, 4 પર છે 731 00:32:23,060 --> 00:32:24,655 આ એસ હાલમાં શું છે. 732 00:32:24,655 --> 00:32:29,220 વાક્ય પર 16 તેથી, જો હું મને આપી કહે છે બીજા ચલ કહેવાય ટી અને સ્ટોર 733 00:32:29,220 --> 00:32:33,590 ઓ ની કિંમત પર શું અહીં સંગ્રહિત નહીં મોમ નહીં 734 00:32:33,590 --> 00:32:35,480 પરંતુ તેના બદલે માત્ર નંબર 1. 735 00:32:35,480 --> 00:32:38,520 >> અમે આ કાર્યક્રમ આગળ જુઓ, તેથી જો હવે, શું થવાનું છે? 736 00:32:38,520 --> 00:32:40,690 તેથી ત્યાં છે કે નોટિસ આ કાર્ય તમે કદાચ 737 00:32:40,690 --> 00:32:44,410 સીઝર માટે અમુક સમય પહેલા આ ઉપયોગ કર્યો છે, અથવા Vigenere, અથવા કદાચ તમામ નથી. 738 00:32:44,410 --> 00:32:48,170 હું છું, મારા printf સાથે દાવો નકલ ટી ઉઠાવે જઈ રહી છે. 739 00:32:48,170 --> 00:32:51,616 પ્રથમ વાક્ય 19, ઝડપી સેનીટી માં , ટી strlen તપાસમાં લંબાઈ તપાસો. 740 00:32:51,616 --> 00:32:53,740 હું નથી માંગતા કારણ કે કંઈક રોકડી કરવા માટે પ્રયાસ 741 00:32:53,740 --> 00:32:55,104 જો ત્યાં કોઈ શબ્દમાળા છે. 742 00:32:55,104 --> 00:32:57,520 વપરાશકર્તા માત્ર Enter દબાવો તો, રોકડી કરવા માટે કંઈ નથી. 743 00:32:57,520 --> 00:33:01,100 તેથી હું રેખા 21 કરવા માંગો છો નથી. 744 00:33:01,100 --> 00:33:05,758 તેથી રેખા 21 અક્ષરો છે જે દેખીતી રીતે પત્ર, ટી? 745 00:33:05,758 --> 00:33:06,514 >> પ્રેક્ષક: M? 746 00:33:06,514 --> 00:33:08,722 ડેવિડ જે MALAN: તે જુએ છે જેમ તે નકલ કે જે એક છે? 747 00:33:08,722 --> 00:33:09,486 પ્રેક્ષક: એમ. 748 00:33:09,486 --> 00:33:10,450 ડેવિડ જે MALAN: ઉહ, એમ. 749 00:33:10,450 --> 00:33:12,685 ઠીક છે, પ્રથમ એમ, જેથી હું છું કે નોટિસ કારણ કે 750 00:33:12,685 --> 00:33:14,935 , toupper પસાર જે તમે તેને ક્યારેય ન જોઈ હોય તો તે છે 751 00:33:14,935 --> 00:33:16,980 માત્ર એક કાર્ય તેની ઇનપુટ તરીકે ઉઠાવે છે. 752 00:33:16,980 --> 00:33:20,240 ટી કૌંસ શૂન્ય આપી અર્થ એ થાય મને ટી શૂન્ય પાત્ર. 753 00:33:20,240 --> 00:33:22,550 અને તેથી આ કેવી રીતે કરે છે ચિત્ર બદલો, સ્પષ્ટ કરવા? 754 00:33:22,550 --> 00:33:25,490 755 00:33:25,490 --> 00:33:29,160 શું ફરીથી લખી અથવા બદલી કરવા માટે જરૂર છે ઓ માટે માન અને ટી અને Mom સાથે 756 00:33:29,160 --> 00:33:30,097 બેકસ્લેશ શૂન્ય. 757 00:33:30,097 --> 00:33:31,470 >> AUDIENCE: [અશ્રાવ્ય] 758 00:33:31,470 --> 00:33:34,030 >> ડેવિડ જે MALAN: અરે વાહ, તેથી આ એક અહીં ફક્ત 759 00:33:34,030 --> 00:33:40,860 છે આ ઠીક રહ્યો બદલાઈ વિચાર કરવાની જરૂર છે મૂડી એમ બદલાઈ મેળવવા જરૂરી છે. 760 00:33:40,860 --> 00:33:44,330 પરંતુ હવે, પાછળથી જોવા કાર્યક્રમ, હું છાપે તો 761 00:33:44,330 --> 00:33:49,800 હું અહીં સાફ તરીકે એસ અને ટી, શું વોચ ઓ અને ટી બહાર છાપવા આમ થવાનું. 762 00:33:49,800 --> 00:33:54,310 તેથી કોપી 0, ./copy-0 બનાવે છે. 763 00:33:54,310 --> 00:33:57,140 મને આગળ વધો અને લખો બધા લોઅરકેસ મોમ છે. 764 00:33:57,140 --> 00:34:00,140 નોંધ બંને મૂળ અને નકલ મૂડીગત કરવામાં આવી છે. 765 00:34:00,140 --> 00:34:00,850 શા માટે? 766 00:34:00,850 --> 00:34:04,431 વેલ, S અને T બંને તરફ ઇશારો છે, જો તમે કરશે, મેમરી જ Chunk. 767 00:34:04,431 --> 00:34:06,930 અને પ્રમાણિકપણે, આ મેળવવામાં આવે છે ખરેખર હકીકત uninteresting-- 768 00:34:06,930 --> 00:34:09,150 અમે અહીં સરનામું શૂન્ય ઉપયોગ કરી રહ્યાં છો છે. 769 00:34:09,150 --> 00:34:11,719 હું તેનો અર્થ, હું ખરેખર પડી નથી જ્યાં સામગ્રી મેમરી છે. 770 00:34:11,719 --> 00:34:13,550 માફ કરશો હું ખૂબ ખૂબ દૂર રહ્યો છું. 771 00:34:13,550 --> 00:34:15,674 પરંતુ હું ખરેખર પડી નથી વસ્તુઓ મેમરી છે જ્યાં. 772 00:34:15,674 --> 00:34:18,510 અને તેથી, ખરેખર શું પ્રોગ્રામરો વિશે વિચારો હોય છે 773 00:34:18,510 --> 00:34:21,080 તમે વાત એ છે કે જ્યારે એક સરનામું, અથવા એક નિર્દેશક, 774 00:34:21,080 --> 00:34:22,679 તે મેમરી છે કે જ્યાં જે ધ્યાન આપતા. 775 00:34:22,679 --> 00:34:24,989 તે જો હું પડી નથી બાઇટ એક અથવા એક અબજ. 776 00:34:24,989 --> 00:34:27,920 હું ફક્ત આ છે કે જે કાળજી ચલ અસરકારક છે 777 00:34:27,920 --> 00:34:29,620 મેમરી કે ભાગ તરફ સંકેત. 778 00:34:29,620 --> 00:34:33,350 અને તેથી, અત્યારથી બદલે ગલ્લાંતલ્લાં મનસ્વી મેમરી સરનામાંઓ પર, ચાલો 779 00:34:33,350 --> 00:34:36,710 માત્ર પોઇન્ટર ડ્રો શરૂ તીર તરીકે પોઇન્ટર, તરીકે. 780 00:34:36,710 --> 00:34:39,340 તેથી અને ટી ખરેખર શું છે છે આ કાર્યક્રમ મુજબ, 781 00:34:39,340 --> 00:34:42,130 હું ટી બનાવવામાં કેવી રીતે કારણ કે તે માત્ર બે અલગ ચલો છે 782 00:34:42,130 --> 00:34:43,840 મેમરી જ Chunk નિર્દેશ કરતી. 783 00:34:43,840 --> 00:34:45,215 તેઓ આવે છે જ્યાં અમે કાળજી નથી. 784 00:34:45,215 --> 00:34:47,130 તેથી અમે એબ્સ્ટ્રેક્ટ દૂર કે વિગતવાર કરી શકો છો. 785 00:34:47,130 --> 00:34:48,780 >> તેથી હું કેવી રીતે આ ઠીક નથી? 786 00:34:48,780 --> 00:34:54,120 હું નકલ ની આવૃત્તિ લખવા માંગો છો, તો કાર્યક્રમ કે ખરેખર નકલો શબ્દમાળા 787 00:34:54,120 --> 00:34:56,840 અને માત્ર અક્ષરે નકલ, માત્ર તર્ક, 788 00:34:56,840 --> 00:34:59,766 શું મળ્યું છે એક હોઈ અમારા ઉકેલ માટે ઘટક? 789 00:34:59,766 --> 00:35:00,640 AUDIENCE: [અશ્રાવ્ય] 790 00:35:00,640 --> 00:35:01,420 ડેવિડ જે MALAN: અમે શું જરૂર છે? 791 00:35:01,420 --> 00:35:01,820 પ્રેક્ષક: મેમરી Chunk. 792 00:35:01,820 --> 00:35:03,280 ડેવિડ જે MALAN: અમે જરૂર મેમરી અન્ય ભાગ, અધિકાર? 793 00:35:03,280 --> 00:35:05,360 અમે નથી જાણતા કેવી રીતે જરૂરી છે, હજુ સુધી તે કરું છું. 794 00:35:05,360 --> 00:35:11,330 પરંતુ હું પ્રકારની જેથી થાય કરવાની જરૂર કે નીચલા કિસ્સામાં મૂળ મોમ 795 00:35:11,330 --> 00:35:14,170 મેમરી કે વધારાની Chunk માં અંત થાય છે. 796 00:35:14,170 --> 00:35:19,770 અને પછી હું નકલ બદલો છો, ત્યારે હું અહીં આ નકલ બદલવા માંગો છો નથી. 797 00:35:19,770 --> 00:35:26,020 હું બદલે માત્ર આ બદલવા માંગો છો નકલ કે જેથી મૂળ યથાવત છે. 798 00:35:26,020 --> 00:35:27,980 >> તેથી, ચાલો આપણે આવું કરી શકે છે તે જોવા દો. 799 00:35:27,980 --> 00:35:31,800 નકલ-1, પહેલેથી જ છે કે જે ટિપ્પણી તોડવામાં આવી, 800 00:35:31,800 --> 00:35:33,250 પરંતુ ઓનલાઇન ટિપ્પણી થયેલ છે. 801 00:35:33,250 --> 00:35:36,710 અમે તેના બદલે નીચેના આ શું લાઇન્સ સમાન છે, મને એક શબ્દમાળા વિચાર 802 00:35:36,710 --> 00:35:38,340 અને તે ઓ કૉલ કરો. 803 00:35:38,340 --> 00:35:43,500 પરંતુ હવે આપણે આપણા મોટા ભાગના એક જોવા દો જટિલ પરંતુ જટિલતા ના છેલ્લા 804 00:35:43,500 --> 00:35:47,340 ક્ષણભર માટે, લાઇન 16 બરાબર કરે છે. 805 00:35:47,340 --> 00:35:49,400 આ સાથે તમારા આરામપ્રદ તેથી જો ચિત્ર અમે માત્ર drew-- 806 00:35:49,400 --> 00:35:51,790 મને મેમરી એક નવી ભાગ આપી તેને બધું નકલ, 807 00:35:51,790 --> 00:35:53,730 અમે કોડ કે અનુવાદિત જુઓ કે કેવી રીતે કરીએ. 808 00:35:53,730 --> 00:35:59,400 >> તો રેખા 16, ડાબી બાજુ પર, ચાર રચે છે * ટી અહીં મને આ બોક્સ આપે છે. 809 00:35:59,400 --> 00:36:00,230 તે બધા કરે છે. 810 00:36:00,230 --> 00:36:03,240 જમણી બાજુ પર, એમ alloc, અથવા malloc છે, 811 00:36:03,240 --> 00:36:06,480 સુપર ફેન્સી મેમરી ફાળવણી છે, માત્ર કહીને એક ભેદી રીતે 812 00:36:06,480 --> 00:36:07,640 મને મેમરી એક ભાગ આપે છે. 813 00:36:07,640 --> 00:36:09,290 અમે કેટલી મેમરી જરૂર છે? 814 00:36:09,290 --> 00:36:10,910 વેલ, એક મોટી અભિવ્યક્તિ પ્રકારની છે. 815 00:36:10,910 --> 00:36:12,570 પરંતુ તે અહીં કહે છે તે જોવા દો. 816 00:36:12,570 --> 00:36:15,940 તેથી આ, અલબત્ત, આપે છે મને ઓ શબ્દમાળા લંબાઈ. 817 00:36:15,940 --> 00:36:19,094 તેથી, મોમ તે કેવો હોવો જોઇએ? 818 00:36:19,094 --> 00:36:21,010 તેથી માત્ર ત્રણ, અધિકાર? મોમ ત્રણ અક્ષરો છે. 819 00:36:21,010 --> 00:36:22,830 તમે ગણતરી નથી બેકસ્લેશ શૂન્ય જ્યારે તમે 820 00:36:22,830 --> 00:36:25,960 તે એક શબ્દમાળા લંબાઈ વિશે વાત ખરેખર માનવ દૃશ્યમાન અક્ષરો. 821 00:36:25,960 --> 00:36:28,020 જેથી મોમ, જેથી આ 3 મને આપે છે. 822 00:36:28,020 --> 00:36:31,170 પરંતુ હવે હું 1 ઉમેરીને છું, એક મિનિટ રાહ જુઓ. 823 00:36:31,170 --> 00:36:34,861 શા માટે હું ખરેખર કરવા માંગો છો 4 બાઇટ્સ અને માત્ર 3 ફાળવવા? 824 00:36:34,861 --> 00:36:35,360 અરે વાહ? 825 00:36:35,360 --> 00:36:36,910 >> પ્રેક્ષક: સંત્રી કિંમત છે? 826 00:36:36,910 --> 00:36:38,951 >> ડેવિડ જે MALAN: બરાબર છે, કે સંત્રી કિંમત છે. 827 00:36:38,951 --> 00:36:40,840 બેકસ્લેશ શૂન્ય, હું 4 બાઇટ્સ કુલ જરૂર છે. 828 00:36:40,840 --> 00:36:42,870 તેથી હું લંબાઈ જરૂર શબ્દમાળા વત્તા 1 છે. 829 00:36:42,870 --> 00:36:45,400 અને પછી માત્ર સારી measure-- માટે પણ આ સિસ્ટમ પર, છતાં 830 00:36:45,400 --> 00:36:49,390 તે હંમેશા હું કહી રહ્યો છું 1-- હશે એક કોલસો બનાવો કદ દ્વારા આ વધવું. 831 00:36:49,390 --> 00:36:51,552 Sizeof બહાર વળે સી એક ઓપરેટર કે 832 00:36:51,552 --> 00:36:53,260 તમે માત્ર કહે છે કે બાઇટ્સ સંખ્યા 833 00:36:53,260 --> 00:36:54,700 ચોક્કસ માહિતી પ્રકાર માટે જરૂરી છે. 834 00:36:54,700 --> 00:36:57,740 તે એરે માટે કામ કરતું નથી, ખાસ કરીને, ક્યારેક તે કરે છે. 835 00:36:57,740 --> 00:36:59,210 પરંતુ સામાન્ય કિસ્સામાં, નં. 836 00:36:59,210 --> 00:37:02,330 ઘણા બાઇટ્સ કેવી રીતે પરંતુ તે મને કહેશે બહાર વળે જે ચાર રચે છે, હંમેશા 1 હોય છે. 837 00:37:02,330 --> 00:37:04,080 તેથી આ 1 વડે ગુણાકાર જેવી છે. 838 00:37:04,080 --> 00:37:05,900 >> કોડ તેથી સુપર ભેદી શોધી લાઇન. 839 00:37:05,900 --> 00:37:09,320 પરંતુ બધા તે આપે છે મને મેમરી એક ભાગ. 840 00:37:09,320 --> 00:37:13,590 પરંતુ તે નકલ કરી લાગતું નથી કે મેમરીમાં કંઈપણ? 841 00:37:13,590 --> 00:37:14,560 હજી નહિં. 842 00:37:14,560 --> 00:37:22,040 અને તેથી 22 વાક્ય પર મારે શું કરવું, અને 23, 24, 25, સાથે સાથે, હું ફક્ત આવું. 843 00:37:22,040 --> 00:37:23,760 અને આ પ્રકારની છે હવે ઓલ્ડ સ્કૂલ સામગ્રી. 844 00:37:23,760 --> 00:37:26,010 આ pset 2, જ્યાં જેવી છે તમે માત્ર વસ્તુઓ ખસેડી રહ્યાં છો 845 00:37:26,010 --> 00:37:28,620 આસપાસ યાદમાં, અથવા બદલે શબ્દમાળાઓ. 846 00:37:28,620 --> 00:37:31,920 >> તેથી હું 0 થી વારો છું શબ્દમાળા ઓ લંબાઈ. 847 00:37:31,920 --> 00:37:37,820 અને હું હું મી અક્ષર નકલ છું ટી આઇ મી અક્ષર માં એસ. 848 00:37:37,820 --> 00:37:41,820 અને હું, કારણ કે પ્રોગ્રામર કરવામાં બરાબર ઘણા બાઇટ્સ ફાળવવા માટે ખાતરી કરો 849 00:37:41,820 --> 00:37:44,600 હું જરૂર છે, તે યોગ્ય છે એક થી એક સંબંધ. 850 00:37:44,600 --> 00:37:47,060 અને હું મોમ નકલ એક નવી લોઅરકેસ. 851 00:37:47,060 --> 00:37:50,170 અને પછી છેલ્લે, હું આ વાક્ય નથી. 852 00:37:50,170 --> 00:37:54,637 અને તેથી અસર માત્ર છે અહીં આ ટી ઉઠાવે. 853 00:37:54,637 --> 00:37:56,470 તેથી ઘણો શોષણ કરે છે, પરંતુ તમે માત્ર ધ્યાનમાં જો 854 00:37:56,470 --> 00:37:58,220 શું થઈ રહ્યું છે હૂડ નીચે 855 00:37:58,220 --> 00:38:00,880 માત્ર આ આગળ વધી રહી છે કે બધા આસપાસ બાઇટ્સ 856 00:38:00,880 --> 00:38:06,617 આ સમસ્યા ઉકેલવા માટે જરૂરી છે માત્ર અમને મેમરી આ ભાગ આપે છે. 857 00:38:06,617 --> 00:38:08,450 હવે જોખમ જબરજસ્ત મને બતાવવા દો 858 00:38:08,450 --> 00:38:13,200 લગભગ છે કે એક અન્ય ઉદાહરણ આ એક સિવાય સમાન 859 00:38:13,200 --> 00:38:14,350 કોડ વાક્ય. 860 00:38:14,350 --> 00:38:18,870 તેથી આ હેકર આવૃત્તિ છે આ કાર્યક્રમ, જો તમે કરશે. 861 00:38:18,870 --> 00:38:21,050 પરંતુ માત્ર distill દો તે શું થઈ રહ્યું છે માં. 862 00:38:21,050 --> 00:38:28,920 લાઇન 24 ટી હોઈ ઉપયોગ કૌંસ હું ઓ કૌંસ હું નહીં. 863 00:38:28,920 --> 00:38:33,370 હવે, હું આ બદલી રહ્યો છુ વધુ ભેદી સ્ટાર ટી 864 00:38:33,370 --> 00:38:36,280 વત્તા 1 સ્ટાર ઓ વત્તા 1 સમકક્ષ હોય છે. 865 00:38:36,280 --> 00:38:38,702 >> તેથી શું થઈ રહ્યું છે અને શા માટે આપણે એક તારો પાત્ર છે? 866 00:38:38,702 --> 00:38:41,410 અમે પહેલાં તારો જોવા મળે છે, અને કર્યું તે અલગ અહીં ઉપયોગ કરવામાં આવે છે. 867 00:38:41,410 --> 00:38:45,490 અમે અગાઉ હવે હું જોઈ રહ્યો છું, ઘરનાં પરચૂરણ કામો * જોયું એક શરૂઆતમાં સ્ટાર, અને તે બરાબર છે. 868 00:38:45,490 --> 00:38:48,190 તે અમે બહાર વળે છે, કારણ કે પ્રકારની માત્ર અટકળ બાંધવી કરી શકો છો 869 00:38:48,190 --> 00:38:50,280 તે પ્રથમ સિદ્ધાંતો પર શું થઈ રહ્યું છે. 870 00:38:50,280 --> 00:38:53,860 તેથી માત્ર સ્પષ્ટ કરવા, એસ શું છે? 871 00:38:53,860 --> 00:38:55,052 છેલ્લા અઠવાડિયે, અથવા તે સ્ટ્રિંગ હતી. 872 00:38:55,052 --> 00:38:56,260 હવે પૂરતો નથી. 873 00:38:56,260 --> 00:38:57,690 ખાસ કરીને, ઓ શું છે? 874 00:38:57,690 --> 00:38:58,590 >> AUDIENCE: [અશ્રાવ્ય] 875 00:38:58,590 --> 00:38:59,881 >> ડેવિડ જે MALAN: તે એક નિર્દેશક છે. 876 00:38:59,881 --> 00:39:02,610 તે સરનામું છે પ્રથમ અક્ષર અમે લખ્યો. 877 00:39:02,610 --> 00:39:04,780 ઠીક છે, ટી શું છે? 878 00:39:04,780 --> 00:39:05,660 >> AUDIENCE: [અશ્રાવ્ય] 879 00:39:05,660 --> 00:39:07,950 >> ડેવિડ જે MALAN: પ્રથમ બાઇટ ની સરનામું 880 00:39:07,950 --> 00:39:10,490 ટી, મેમરી કે ભાગ ફરીથી ફાળવેલ. 881 00:39:10,490 --> 00:39:14,720 તેથી તે તારણ આપે છે કે જ્યારે અમે શબ્દમાળા માટે આ બોલ પર 0 થી ફરી વળવું 882 00:39:14,720 --> 00:39:17,424 length-- સૌ પ્રથમ, હું કારણ કે, 0 અંતે બોલ શરૂ થાય છે 883 00:39:17,424 --> 00:39:18,840 લૂપ વસ્તુ માટે આ જૂના શાળા. 884 00:39:18,840 --> 00:39:22,400 તેથી માત્ર સરળતા માટે, ચાલો કોડ કે પ્રથમ વાક્ય ધારે 885 00:39:22,400 --> 00:39:23,760 ખરેખર માત્ર આ જ, અધિકાર છે. 886 00:39:23,760 --> 00:39:26,080 હું શૂન્ય ઉમેરી રહ્યા છે, શૂન્ય છે, તો કંઈક કદાચ 887 00:39:26,080 --> 00:39:27,540 અસર નથી જઈ રહ્યા છે. 888 00:39:27,540 --> 00:39:28,560 >> તેથી આ શું કહે છે? 889 00:39:28,560 --> 00:39:31,600 તે સ્ટાર કે બહાર વળે આ સંદર્ભમાં ઓપરેટર 890 00:39:31,600 --> 00:39:33,700 ડિરેફરન્સ છે માત્ર છે કે જે ઓપરેટર, 891 00:39:33,700 --> 00:39:37,530 જાઓ કહેતા ફેન્સી માર્ગ નીચેની સરનામા માટે. 892 00:39:37,530 --> 00:39:42,080 જેથી તો પ્રથમ સરનામું મેમરી આ ભાગ માં પાત્ર, 893 00:39:42,080 --> 00:39:43,630 * ઓ અર્થ ત્યાં જાઓ. 894 00:39:43,630 --> 00:39:45,630 અને અમે દોરવામાં કર્યું છે કારણ કે આ રીતે ચિત્ર, 895 00:39:45,630 --> 00:39:47,430 તમે અપનાવી શકે માનસિક મોડેલ નીચેની. 896 00:39:47,430 --> 00:39:51,030 આ s છે, અને તમે * ઓ * ઓ કહે છે, તો પ્રકારની વસ્તુઓ અને સીડી જેવા, 897 00:39:51,030 --> 00:39:54,540 તમે બાળપણના આ રમત યાદ રાખો કે, કે તીર અનુસરો છે અને જાય છે જેવી છે 898 00:39:54,540 --> 00:39:55,570 આ સંબોધવા. 899 00:39:55,570 --> 00:39:57,080 >> * ટી જ વસ્તુ છે. 900 00:39:57,080 --> 00:39:59,855 તેથી અહીં શરૂ કરવા માટે, તેની Chunk પર જાઓ. 901 00:39:59,855 --> 00:40:03,350 હું માત્ર પર ડ્રો કરી શકો છો આ સ્ક્રીન છે કે જે રીતે. 902 00:40:03,350 --> 00:40:05,560 * ટી અહીં જાઓ થાય છે. 903 00:40:05,560 --> 00:40:08,830 અને પછી, લૂપ માટે માત્ર છે અહીં આ પાત્ર ખસેડવા કહેતા 904 00:40:08,830 --> 00:40:11,330 અહીં આ અક્ષર ખસેડવા માટે, અહીં આ પાત્ર ખસેડો. 905 00:40:11,330 --> 00:40:12,890 પરંતુ કેવી રીતે હું કે incrementation કરવું? 906 00:40:12,890 --> 00:40:15,430 હું માત્ર કાઢી શું પૂર્વવત્ કરવાની જરૂર છે. 907 00:40:15,430 --> 00:40:18,140 આ સામાન્ય રીતે કહેવાય છે તે છે નિર્દેશક અંકગણિત, જે 908 00:40:18,140 --> 00:40:20,040 સરનામાં સાથે મઠ થાય છે. 909 00:40:20,040 --> 00:40:22,460 >> તો, આ લૂપ માટે, હું incrementing રાખો 910 00:40:22,460 --> 00:40:26,880 અને એસ એક સરનામું છે અને ટી એક છે સરનામું, હું ફક્ત 1 ઉમેરીને રાખવા હોય તો, 911 00:40:26,880 --> 00:40:31,406 કે જે હમણાં જ આગળ વધવા રાખવા અર્થ થાય છે, અને આગળ, અને મેમરી આગળ. 912 00:40:31,406 --> 00:40:34,030 તે ઓક્સફર્ડ સ્ટ્રીટ જેવા છે, સીએસ મકાન પર છે કે સ્ટ્રીટ. 913 00:40:34,030 --> 00:40:36,490 સીએસ ઇમારતો 33 ઓક્સફર્ડ સ્ટ્રીટ પર છે. 914 00:40:36,490 --> 00:40:39,870 તેથી જો તમે 33 કરવા હતા ઓક્સફર્ડ સ્ટ્રીટ વત્તા 1, 915 00:40:39,870 --> 00:40:42,870 34 ઓક્સફર્ડ પર લઈ આવે છે સ્ટ્રીટ, પછી 35 ઓક્સફર્ડ સ્ટ્રીટ, 916 00:40:42,870 --> 00:40:46,380 પછી 36 ઓક્સફર્ડ સ્ટ્રીટ, ગમે તે ઇમારતો ખરેખર છે - જો તેઓ અસ્તિત્વમાં હોય. 917 00:40:46,380 --> 00:40:50,540 અને તેથી, તે અમે કરી રહ્યા છીએ બધા છે અહીં નિર્દેશક અંકગણિત સાથે. 918 00:40:50,540 --> 00:40:53,820 >> તેથી તે સુપર Arcane માર્ગ છે જાતને વ્યક્ત. 919 00:40:53,820 --> 00:40:56,160 પરંતુ તે બધા શું થઈ રહ્યું છે હૂડ નીચે 920 00:40:56,160 --> 00:40:59,330 માત્ર આ સરનામાં અનુસરે છે, એક નકશો નીચેની જેમ, તમે કરશે જો, 921 00:40:59,330 --> 00:41:02,692 અથવા જેમ તીર નીચેના અમે સ્ક્રીન પર દોરવામાં કર્યું છે. 922 00:41:02,692 --> 00:41:04,910 ઠીક છે, ઘણો પાચન. 923 00:41:04,910 --> 00:41:10,410 સિન્ટેક્સ પર કોઈપણ પ્રશ્ન, વિભાવનાઓ, પોઇન્ટર, malloc, અથવા જેમ. 924 00:41:10,410 --> 00:41:11,480 અરે વાહ, અહીં પ્રથમ. 925 00:41:11,480 --> 00:41:13,755 >> પ્રેક્ષક: તેથી કે જ્યાં * ટી toupper * ટી બરાબર કહે છે 926 00:41:13,755 --> 00:41:15,575 ઉઠાવે ચાલુ છે બધા અક્ષરો અથવા just-- 927 00:41:15,575 --> 00:41:17,283 >> ડેવિડ જે MALAN: આહ, ખરેખર સારા પ્રશ્ન. 928 00:41:17,283 --> 00:41:19,805 અહીં આ વાક્ય તેથી, 31, આ ઉઠાવે રહ્યું છે 929 00:41:19,805 --> 00:41:21,430 પ્રથમ અક્ષર અથવા અક્ષરો તમામ. 930 00:41:21,430 --> 00:41:23,460 તેથી આપણે જઈને કે જવાબ દો પાછા પ્રથમ સિદ્ધાંત છે. 931 00:41:23,460 --> 00:41:26,168 અને અહીં પ્રથમ સિદ્ધાંત હું તેનો અર્થ માત્ર મૂળભૂત વ્યાખ્યાઓ પર જાઓ 932 00:41:26,168 --> 00:41:27,000 સામેલ છે તે છે. 933 00:41:27,000 --> 00:41:29,770 તેથી toupper એક કાર્ય છે કે ઘરનાં પરચૂરણ કામો અક્ષરે. 934 00:41:29,770 --> 00:41:30,530 કે બધા છે. 935 00:41:30,530 --> 00:41:36,740 * ટી first-- પર જાઓ છે ટી માં સરનામા પર જાઓ. 936 00:41:36,740 --> 00:41:40,350 તેથી, ચિત્ર, આ ભાગ છે, તો મેમરી અમે malloc સાથે ફાળવવામાં, 937 00:41:40,350 --> 00:41:43,310 અને આ ટી * ટી અહીં જાઓ અર્થ એ થાય છે. 938 00:41:43,310 --> 00:41:46,710 >> વચ્ચે, તમે પસાર કરી રહ્યાં છે તે કિંમત, લોઅરકેસ એમ 939 00:41:46,710 --> 00:41:50,040 toupper કરવા માટે, તમે પાછા મળી રહ્યાં કેપિટલ એમ, જ્યાં તમે તેને મૂકવા આવે છે? 940 00:41:50,040 --> 00:41:52,410 તમે તે જ સ્થાને આપી રહ્યા છીએ. 941 00:41:52,410 --> 00:41:55,540 અને તેથી તે કે તર્ક દ્વારા મૂળભૂત વ્યાખ્યાઓ તે માત્ર 942 00:41:55,540 --> 00:41:58,792 પ્રથમ અક્ષર અક્ષરો તમે મને અથવા સાથે ફરી વળવું જ્યાં સુધી 943 00:41:58,792 --> 00:42:02,000 લૂપ અથવા જ્યારે લૂપ માટે, તે ચાલી રહ્યું છે તમે તેને પૂછો કરતાં વધુ કંઇ કરવું. 944 00:42:02,000 --> 00:42:02,583 સારા પ્રશ્ન. 945 00:42:02,583 --> 00:42:03,237 અરે વાહ? 946 00:42:03,237 --> 00:42:05,369 >> પ્રેક્ષક: તમે શા માટે ઉપયોગ હતી પદ્ધતિ બદલે ખોટો સંદર્ભ 947 00:42:05,369 --> 00:42:05,979 એરે? 948 00:42:05,979 --> 00:42:07,395 >> ડેવિડ જે MALAN: આહ, સારો પ્રશ્ન. 949 00:42:07,395 --> 00:42:10,672 શા માટે તમે ડિરેફરન્સ ઉપયોગ કરશે તેના બદલે એરે પદ્ધતિ પદ્ધતિ? 950 00:42:10,672 --> 00:42:12,130 કોઈ ખાસ કારણ છે, પ્રમાણિક પ્રયત્ન. 951 00:42:12,130 --> 00:42:15,290 અને હકીકતમાં, આ માટે ઉદાહરણ કાઇન્ડ, અધિકાર, 952 00:42:15,290 --> 00:42:17,556 હું માત્ર બનાવવા એવી દલીલ કરે છે કરી રહ્યો છું વધુ જટિલ કાર્યક્રમ 953 00:42:17,556 --> 00:42:19,680 વધુ આંખો પર ચમક આવે છે લોકો બહાર તપાસ કરવામાં આવે છે 954 00:42:19,680 --> 00:42:22,830 આ સુપર Arcane લાગે છે કારણ કે, પરંતુ પણ તે એ જ વસ્તુ કરી છે છતાં. 955 00:42:22,830 --> 00:42:26,695 અને તેથી, પ્રમાણિકપણે, આ એક બિનજરૂરી દૃષ્ટિની જટિલ ઉકેલ 956 00:42:26,695 --> 00:42:27,320 સમસ્યા છે. 957 00:42:27,320 --> 00:42:29,580 >> તે હજુ પણ સારી ડિઝાઇન છે પાંચ ડિઝાઇન માટે ટપાલ બહાર 958 00:42:29,580 --> 00:42:33,140 તે કૌંસ છે કે શું સંકેત અથવા નિર્દેશક નોટેશનમાં. 959 00:42:33,140 --> 00:42:36,299 અમે વિચાર, ખાસ કરીને જ્યારે પરંતુ છે પાછળથી દરમિયાન pset 5 960 00:42:36,299 --> 00:42:39,340 અમે તે શબ્દકોશ અમલ કે જ્યારે હું times-- એક દંપતિ ઉલ્લેખ કર્યો છે 961 00:42:39,340 --> 00:42:42,300 અમે ખરેખર વિશે કાળજી કરીશું નીચા સ્તર મેમરી સરનામાંઓ 962 00:42:42,300 --> 00:42:44,140 અમે ખરેખર સમજે છે કે શું થઈ રહ્યું છે. 963 00:42:44,140 --> 00:42:48,300 >> પરંતુ, હવે માટે, તે આ છે કે જે બહાર વળે કોડ અહીં ચોરસ કૌંસ વાક્ય 964 00:42:48,300 --> 00:42:49,900 ખરેખર અસ્તિત્વમાં નથી. 965 00:42:49,900 --> 00:42:52,230 તેઓ કહે છે તે છે વાકયરચનામાં ખાંડ, જે 966 00:42:52,230 --> 00:42:58,390 આ માત્ર કહેતા એક weirdly ઠંડી માર્ગ છે કમ્પાઇલર ચોરસ કૌંસ હોઈ ફેરવે 967 00:42:58,390 --> 00:43:00,420 કે ગાણિતિક અભિવ્યક્તિ. 968 00:43:00,420 --> 00:43:02,660 તેથી તે માનવ સંમેલન છે માત્ર લખવા માટે સમર્થ થવા માટે 969 00:43:02,660 --> 00:43:04,220 આ ખૂબ વપરાશકર્તા મૈત્રીપૂર્ણ કૌંસ. 970 00:43:04,220 --> 00:43:06,850 પરંતુ શું કમ્પાઇલર, રણકાર, ખરેખર કોઈપણ સમયે કરી છે 971 00:43:06,850 --> 00:43:10,970 તમે વાક્ય પ્રકાશિત છે તે લખવા 24, હૂડ નીચે તે ખરેખર છે 972 00:43:10,970 --> 00:43:12,330 આ રૂપાંતરિત. 973 00:43:12,330 --> 00:43:16,200 તે માનવ તરીકે માત્ર વધારે આનંદદાયક છે વાંચી અને લાઇન 24 જેમ કોડ લખવા માટે. 974 00:43:16,200 --> 00:43:18,530 પરંતુ છેવટે તે તાલીમ વ્હીલ્સ ખૂબ છટકવું 975 00:43:18,530 --> 00:43:21,780 એક પોતાના આરામ મજબૂત મળે છે. 976 00:43:21,780 --> 00:43:27,240 >> બધા હક છે, તેથી તો પછી તે આ યાદ સૌથી મોટી સમસ્યા ના સૉર્ટ હતી 977 00:43:27,240 --> 00:43:27,807 અમે માં ચાલી હતી. 978 00:43:27,807 --> 00:43:30,640 અને તે આ સમગ્ર વેગ આપ્યો શું છે પોઇન્ટર વિશે ખરેખર વાતચીત, 979 00:43:30,640 --> 00:43:32,340 અને સરનામાંઓ, અને નકલ વસ્તુઓ. 980 00:43:32,340 --> 00:43:35,410 અમે ઉપર ટ્રિપ, કારણ કે તે હતી આ મૂર્ખ મૂર્ખ મુદ્દો છે જેમાં 981 00:43:35,410 --> 00:43:38,830 હું લોરેન સાથે logically-- અમલમાં અહીં ડેમો અને નારંગી રસ પર 982 00:43:38,830 --> 00:43:43,770 આ milk-- એક સંપૂર્ણપણે ઍલ્ગરિધમનો યોગ્ય કાર્ય 983 00:43:43,770 --> 00:43:47,010 બે ચલો 'જેઓ માટે મૂલ્યો, પરંતુ ખરેખર વાત 984 00:43:47,010 --> 00:43:50,550 કોઈપણ નિરંતર હોય છે, અથવા ન હતી મારા કોડ પર કાયમી અસર. 985 00:43:50,550 --> 00:43:51,820 >> અને શા માટે છે કે હતી? 986 00:43:51,820 --> 00:43:54,650 એક nutshell માં, આ શા માટે છે સ્વેપ અમલીકરણ 987 00:43:54,650 --> 00:43:58,740 તાર્કિક યોગ્ય છે, પરંતુ કોઈ અસર છે તે પસાર થાય છે કે ચલો પર 988 00:43:58,740 --> 00:44:01,119 મુખ્ય એક્સ અને વાય જેમ? 989 00:44:01,119 --> 00:44:02,410 આ મુદ્દો ભાવાર્થ શું હતો? 990 00:44:02,410 --> 00:44:02,909 અરે વાહ? 991 00:44:02,909 --> 00:44:05,532 પ્રેક્ષક: ચલ કરવામાં કારણ કે પાસ ચલ નકલો 992 00:44:05,532 --> 00:44:06,240 કાર્ય મારફતે. 993 00:44:06,240 --> 00:44:09,060 >> ડેવિડ જે MALAN: બરાબર છે, જ્યારે તમે પસાર એક કાર્ય માં ચલો, અથવા દલીલો 994 00:44:09,060 --> 00:44:11,030 એક કાર્ય માં, તેઓ છો નકલ દ્વારા પસાર જે 995 00:44:11,030 --> 00:44:14,770 તમે જોઈ એક સરખા વિચાર અર્થ એ થાય એક્સ અને વાય બંને માટે બીટ્સ પેટર્ન, 996 00:44:14,770 --> 00:44:15,955 A અને B અહીં કહેવામાં આવે છે. 997 00:44:15,955 --> 00:44:18,080 અને તમે કંઈપણ કરી શકો છો તમે તે નકલો સાથે માંગો છો, 998 00:44:18,080 --> 00:44:20,657 પરંતુ તેઓ કોઈ હોય રહ્યા છીએ ફોન કાર્ય પર અસર કરે છે. 999 00:44:20,657 --> 00:44:22,990 અને, હકીકતમાં, અમે તે દોર્યું સ્ક્રિનનાં રિકોલ પર ચિત્ર 1000 00:44:22,990 --> 00:44:25,520 છેલ્લા સમય, જેમાં તમે જો ખરેખર તે વિશે વિચારો 1001 00:44:25,520 --> 00:44:28,570 જો hood-- નીચે ચાલુ આ તમારા કમ્પ્યુટરની મેમરી છે 1002 00:44:28,570 --> 00:44:31,650 અને નીચે અહીં ના ભાગ છે મેમરી, મુખ્ય માટે ઉપયોગ થાય છે 1003 00:44:31,650 --> 00:44:34,020 આ ભાગ છે મેમરી, સ્વેપ માટે ઉપયોગ થાય છે 1004 00:44:34,020 --> 00:44:37,090 અને તેથી તો પણ મુખ્ય છે બે ચલો, એક્સ અને વાય, 1005 00:44:37,090 --> 00:44:41,840 સ્વેપ સમાન જોઈ હોય શકે છે 1 અને 2 છે, જે બંને કિંમતો, 1006 00:44:41,840 --> 00:44:44,520 પરંતુ તેઓ સંપૂર્ણપણે છો મેમરી વિવિધ હિસ્સામાં. 1007 00:44:44,520 --> 00:44:46,130 >> તેથી અમે આ માટે ઉકેલ જરૂર છે. 1008 00:44:46,130 --> 00:44:51,580 અને પ્રમાણિકપણે, તે હવે અમે તે લાગશે અધિકાર, આ સમસ્યા માટે ઉકેલ છે. 1009 00:44:51,580 --> 00:44:55,760 હવે અમે ક્ષમતા હોય સરનામાં માર્ગ દ્વારા વસ્તુઓ ચાલાકી 1010 00:44:55,760 --> 00:44:59,310 અને પ્રકારની વસ્તુઓ અને સીડી શૈલી, આ તીર અનુસરો 1011 00:44:59,310 --> 00:45:02,820 અને અમે માંગો છો ગમે ત્યાં જાઓ યાદમાં, અમે નથી કરી શકતો 1012 00:45:02,820 --> 00:45:06,220 દ્વારા આ સમસ્યા હલ મુખ્ય માંથી પસાર સ્વેપ 1013 00:45:06,220 --> 00:45:09,650 નથી કિંમતો અમે માંગો છો સ્વેપ, પરંતુ માત્ર તર્ક 1014 00:45:09,650 --> 00:45:11,630 અમે શું તેના બદલે સ્વેપ પસાર કરી શકે છે? 1015 00:45:11,630 --> 00:45:12,620 >> [અવાજો INTERPOSING] 1016 00:45:12,620 --> 00:45:15,244 >> ડેવિડ જે MALAN: શા માટે આપણે નથી તે હક, સરનામાં પસાર? 1017 00:45:15,244 --> 00:45:17,470 અમે શા માટે સ્વેપ આપતા નથી ટ્રેઝર નકશો, જો તમે કરશે, 1018 00:45:17,470 --> 00:45:20,950 કે તે તરફ દોરી જાય છે વાસ્તવિક કિંમતો એક્સ અને વાય. 1019 00:45:20,950 --> 00:45:24,340 ચાલો સ્વેપ, ખરેખર બદલી તે મૂળ બીટ્સ બદલે 1020 00:45:24,340 --> 00:45:26,797 માત્ર બિટ્સ નકલો પસાર. 1021 00:45:26,797 --> 00:45:29,130 અને તેથી, હકીકતમાં, કે શું છે જઈને ઉકેલ હોઈ શકે છે. 1022 00:45:29,130 --> 00:45:31,899 આ આવૃત્તિ અહીં છે સ્પષ્ટ ખરાબ અને અપૂર્ણ. 1023 00:45:31,899 --> 00:45:35,190 અને હવે, પ્રથમ નજરમાં, તે માત્ર જુએ જેમ આપણે રેન્ડમ તારા સમૂહ ઉમેર્યો 1024 00:45:35,190 --> 00:45:37,106 અને અમારા આંગળીઓ ઓળંગી તે કમ્પાઇલ કરશે. 1025 00:45:37,106 --> 00:45:38,460 પરંતુ, તે હવે કમ્પાઇલ આવશે. 1026 00:45:38,460 --> 00:45:40,090 >> પરંતુ આ વસ્તુઓ અર્થ તે જોવા દો. 1027 00:45:40,090 --> 00:45:43,990 અને કમનસીબે, લેખકો સી અન્ય પ્રતીક પસંદ કરી શકે છે 1028 00:45:43,990 --> 00:45:46,380 આ થોડો બનાવવા માટે સ્પષ્ટ છે, પરંતુ સ્ટાર ઓપરેટર 1029 00:45:46,380 --> 00:45:48,610 વિવિધ અર્થ હોય છે બે અલગ અલગ સંદર્ભમાં. 1030 00:45:48,610 --> 00:45:50,890 અને અમે બંને જોઇ છે, પરંતુ તફાવત દો. 1031 00:45:50,890 --> 00:45:55,310 >> ત્યાં ટોચ પર જેથી હું એ અને બી બદલાયેલ છે ત્યારે 1032 00:45:55,310 --> 00:46:00,470 ખરાબ માં પૂર્ણાંક માતાનો હોવા આવૃત્તિ તારાઓ, A અને B પૂર્ણાંક માટે, 1033 00:46:00,470 --> 00:46:01,740 પહેલાં, પૂર્ણાંકો હતા. 1034 00:46:01,740 --> 00:46:05,752 હવે એ અને બી શું છે સારા, લીલા આવૃત્તિ? 1035 00:46:05,752 --> 00:46:06,900 તેઓ સરનામાં છો. 1036 00:46:06,900 --> 00:46:09,610 શું સરનામાં સ્પષ્ટ કરવા? 1037 00:46:09,610 --> 00:46:10,770 પૂર્ણાંકો સંબોધે છે. 1038 00:46:10,770 --> 00:46:12,520 હું એ હકીકત છે કે તેથી પૂર્ણાંક સ્ટાર અર્થ એમ કહીને 1039 00:46:12,520 --> 00:46:15,440 આ સરનામું પૂર્ણાંક, ખાસ. 1040 00:46:15,440 --> 00:46:19,120 >> તેથી હવે કોડ લીટીઓ નોટિસ, કંઈક બીજું પણ બદલાઈ ગઈ છે. 1041 00:46:19,120 --> 00:46:22,770 tmp, કારણ કે એ જ રહે છે તે માત્ર કામચલાઉ પૂર્ણાંક છે, 1042 00:46:22,770 --> 00:46:24,110 ત્યાં કોઈ મેમરી જાદુ. 1043 00:46:24,110 --> 00:46:26,370 પરંતુ હવે સ્ટાર જરૂર છે. 1044 00:46:26,370 --> 00:46:28,560 અને, હકીકતમાં, દરેક એ, બી અને અન્ય ઉલ્લેખ 1045 00:46:28,560 --> 00:46:31,780 કે બધા છે કે નોટિસ લાલ થી લીલી બદલવા 1046 00:46:31,780 --> 00:46:34,209 હું prefixing છું કે છે તારાઓ સાથે તે ચલો. 1047 00:46:34,209 --> 00:46:35,750 હું એ અને બી નકલ કરવા માંગો છો નથી. 1048 00:46:35,750 --> 00:46:40,350 કારણ કે હું માત્ર એક અને બી અને સ્વેપ નકલ તો A અને B, હું ખરેખર શું જેઓ છું? 1049 00:46:40,350 --> 00:46:43,760 જસ્ટ સરનામાં, હું સ્વેપ કરવા માંગો છો શું તે સરનામાં પર છે. 1050 00:46:43,760 --> 00:46:44,860 હું ત્યાં જવા માંગો છો. 1051 00:46:44,860 --> 00:46:48,000 અને તેથી તારો ઓપરેટર મારા કાર્ય ની અંદર, 1052 00:46:48,000 --> 00:46:51,700 નથી પરિમાણ યાદી ની અંદર, તમે તે સરનામાં પર જાઓ છે 1053 00:46:51,700 --> 00:46:54,490 અને ખરેખર તે મૂલ્યો બદલી. 1054 00:46:54,490 --> 00:46:56,500 >> તેથી શું ચિત્ર છે હવે બદલે જેમ દેખાય છે. 1055 00:46:56,500 --> 00:47:03,250 વેલ, તેના બદલે જો હું પસાર છું એક માટે નથી અને 1 અને બી 2-- 1056 00:47:03,250 --> 00:47:05,790 હું ખરેખર ઉમેરવાની જરૂર છે અહીં એક અન્ય વ્યાખ્યા. 1057 00:47:05,790 --> 00:47:09,030 તેથી આ Chunk કે જે ધારવું મેમરી પાંચ આંકડાના US સ્થાન 10 છે. 1058 00:47:09,030 --> 00:47:12,960 >> આ સ્થાન 11 છે, પરંતુ આ એક સરળીકરણ એક બીટ છે, 1059 00:47:12,960 --> 00:47:18,900 હવે હું એક્સ બે પસંદગીઓ હું પસાર કરી છે અને વાય કે હું તેમના સરનામાં પસાર કરી શકું? 1060 00:47:18,900 --> 00:47:22,500 હું તેમના સરનામાં પાસ કરો તો આ જેમ, હું હમણાં જ 1061 00:47:22,500 --> 00:47:25,390 હવે અમલીકરણની જરૂર છે લીલા કોડ મુજબ સ્વેપ 1062 00:47:25,390 --> 00:47:29,080 તે જુએ છે તેથી જ્યારે એક અને જ્યારે તે બી, તે માત્ર એ અને બી નકલ નથી જુએ 1063 00:47:29,080 --> 00:47:30,540 અને દૂધ અને નારંગીના રસ ખસેડો. 1064 00:47:30,540 --> 00:47:32,664 દૂધ અને નારંગીનો રસ રૂપક હવે, નીચે તોડે 1065 00:47:32,664 --> 00:47:35,060 કારણ કે તે કપ છે પ્રવાહી નથી અને નકશા. 1066 00:47:35,060 --> 00:47:37,750 અમે તેના બદલે જવાની જરૂર 10 અને અમે સંબોધવા 1067 00:47:37,750 --> 00:47:42,420 11 સરનામા પર જાઓ જરૂર છે, અને પછી તે જેઓ તર્ક કરે છે. 1068 00:47:42,420 --> 00:47:45,580 >> તેથી તર્ક, એ જ છે, પરંતુ અમે થોડી અલગ રીતે જરૂર 1069 00:47:45,580 --> 00:47:47,160 તે ચલો ઍક્સેસ. 1070 00:47:47,160 --> 00:47:52,400 અને તેથી અંતે, શું કાર્યક્રમ આ છે જેમ દેખાય છે માટે છે. 1071 00:47:52,400 --> 00:47:56,610 Swap.c શાબ્દિક નકલ અને લીલા આવૃત્તિ પેસ્ટ. 1072 00:47:56,610 --> 00:47:58,450 પણ હું એક ફેરફાર કરવાની જરૂર છે. 1073 00:47:58,450 --> 00:48:00,180 તે માત્ર સ્વેપ બદલવા માટે પર્યાપ્ત નથી. 1074 00:48:00,180 --> 00:48:03,830 શું કોડના અન્ય વાક્ય હું બદલવા માટે જરૂર નથી? 1075 00:48:03,830 --> 00:48:04,330 અરે વાહ? 1076 00:48:04,330 --> 00:48:05,770 >> પ્રેક્ષક: તે દલીલો લે છે. 1077 00:48:05,770 --> 00:48:07,603 >> ડેવિડ જે MALAN: ક્યાંથી તે તેના દલીલ લે છે. 1078 00:48:07,603 --> 00:48:09,985 તેથી હું મુખ્ય સુધી સ્ક્રોલ કરો છો, તો હું માત્ર એક્સ અને વાય નથી પસાર કરી શકો છો, 1079 00:48:09,985 --> 00:48:12,820 અને, હું છેલ્લા વચન નવી વાક્યરચના ભાગ આજે. 1080 00:48:12,820 --> 00:48:17,200 હું નથી એક્સ પસાર કરવાની જરૂર છે અને વાય પરંતુ એક્સ અને વાય ના સરનામું. 1081 00:48:17,200 --> 00:48:20,400 અને તે પ્રતીક બહાર વળે સી ના લેખકો પસંદ કરો કે 1082 00:48:20,400 --> 00:48:23,860 તમે અહીં એક ચિન્હ ઉપયોગ જો નથી, છે આ bitwise ચિન્હ સાથે ભેળસેળ ન શકાય, 1083 00:48:23,860 --> 00:48:27,130 તમે એક ચિન્હ ઉપયોગ જો અહીં અને અહીં એક ચિન્હ, 1084 00:48:27,130 --> 00:48:29,570 આ તમારા માટે બહાર આધાર x ની સરનામું શું છે, 1085 00:48:29,570 --> 00:48:31,740 કદાચ તે 10 છે, શું છે વાય સરનામું, કદાચ તે છે 1086 00:48:31,740 --> 00:48:35,400 11, અને તેની જગ્યાએ તે પસાર થાય છે. 1087 00:48:35,400 --> 00:48:37,210 >> તેથી ઘણો જ સમયે બધા શોષણ. 1088 00:48:37,210 --> 00:48:40,190 પરંતુ ઝડપથી હવે જોવા દો અમારા બાકીના ચાર મિનિટ 1089 00:48:40,190 --> 00:48:42,150 જ્યાં વસ્તુઓ અવળું જઈ શકે છે. 1090 00:48:42,150 --> 00:48:45,120 અને એક કોરે, ખરેખર હું આ ચિત્ર લીધો, 1091 00:48:45,120 --> 00:48:46,920 ટીએફ એક અથવા બે વર્ષ પહેલા આ ચિત્ર લીધો હતો. 1092 00:48:46,920 --> 00:48:49,190 તેથી આ પાછા ખૂણે છે એલિયટ ડાઇનિંગ હોલ ઓફ. 1093 00:48:49,190 --> 00:48:52,310 પોઇન્ટર કદાચ ખૂબ સખત હોય છે અમે CS50 માં આવરી વિષય. 1094 00:48:52,310 --> 00:48:54,810 તમે સૉર્ટ ચિંતા તેથી જો કદાચ તે છે, જેમ કે ઢાળ છે 1095 00:48:54,810 --> 00:48:56,770 હોકી સ્ટીક વધુ આ જેમ ખ્યાલ 1096 00:48:56,770 --> 00:49:00,160 અમે પ્રકારની એક ટોચ માં આરે રહ્યાં છો વૈચારિક જટિલતા શરતો. 1097 00:49:00,160 --> 00:49:02,300 >> અને હું આ લાવવા ફોટો, હું શપથ લેવા કારણ કે 1098 00:49:02,300 --> 00:49:05,920 પતન 1996 માં દેવ, જ્યારે હું લીધો મારા શિક્ષણ સાથી સાથે CS50, 1099 00:49:05,920 --> 00:49:09,620 Nishat મહેતા, તેમણે મને નીચે બેઠા બપોરના ઉપર એલિયટ ડી હોલ ઓફ ખૂણે, 1100 00:49:09,620 --> 00:49:12,330 અથવા રાત્રિભોજન, અથવા કંઈક પ્રયાસ કરવા મને પોઇન્ટર સમજવા મદદ કરે છે. 1101 00:49:12,330 --> 00:49:16,520 હું અઠવાડિયા પછી હતી, જ્યાં અને આ છે તે વ્યાખ્યાન જ્યારે રજૂ કરવામાં આવ્યું હતું 1102 00:49:16,520 --> 00:49:18,170 હું છેલ્લે પોઇન્ટર સમજી. 1103 00:49:18,170 --> 00:49:20,590 અને હું આ કે આશાવાદી છું અત્યાર સુધી તમે વહેલા માટે ક્લિક કરો. 1104 00:49:20,590 --> 00:49:23,540 પરંતુ સંપૂર્ણપણે વચ્ચે આ ખ્યાલ વધુ વ્યવહારદક્ષ વિષયો 1105 00:49:23,540 --> 00:49:24,420 અમે જોવામાં કર્યું છે. 1106 00:49:24,420 --> 00:49:25,819 પરંતુ તે સૌથી શક્તિશાળી વચ્ચે છે. 1107 00:49:25,819 --> 00:49:28,860 તમે તેને મળે ત્યારે, તે ખરેખર બધા છે માત્ર છેલ્લે મળીને આવવા જવાનું. 1108 00:49:28,860 --> 00:49:31,460 તેથી બાકીના તે નથી ખાતરી આજે બધા સિંક કરવાની જરૂર છે. 1109 00:49:31,460 --> 00:49:32,980 >> તેથી અહીં છેલ્લા કાર્યક્રમ છે અમે જોવા માટે જઈ રહ્યાં છો. 1110 00:49:32,980 --> 00:49:35,605 અને અમે એક સાથે અંત જઈ રહ્યાં છો ક્લેમેશન ઝડપી ત્રણ મિનિટ 1111 00:49:35,605 --> 00:49:37,030 અમારા મિત્ર, નિક Parlante દ્વારા કરી હતી. 1112 00:49:37,030 --> 00:49:41,440 અહીં એક કાર્યક્રમ ટોચના બે પર છે, લાઇન્સ ચલ એક્સ અને વાય જાહેર. 1113 00:49:41,440 --> 00:49:44,780 જે બંને સરનામાં છે પૂર્ણાંકો, ઉર્ફ પોઇન્ટર. 1114 00:49:44,780 --> 00:49:48,125 અમે પછી પૂરતી ફાળવણી મેમરી પૂર્ણાંક સંગ્રહવા માટે 1115 00:49:48,125 --> 00:49:51,344 અને સરનામા સ્ટોર એક્સ કે મેમરી. 1116 00:49:51,344 --> 00:49:53,260 તેથી, તે પણ સરળ છે પહેલાં ઉદાહરણ કરતાં. 1117 00:49:53,260 --> 00:49:56,100 મને મેમરી ચાર બાઇટ્સ આપો કે પૂર્ણાંક માપ છે, 1118 00:49:56,100 --> 00:49:58,000 અને X કે સરનામું મૂકો. 1119 00:49:58,000 --> 00:50:01,070 આ વાક્ય અહીં અર્થ થાય છે X માં સરનામા પર જાઓ 1120 00:50:01,070 --> 00:50:05,270 અને અર્થ મૂકી જીવન, ત્યાં સંખ્યા 42. 1121 00:50:05,270 --> 00:50:07,710 પરંતુ આ વાક્ય મને ચિંતાઓનો. 1122 00:50:07,710 --> 00:50:12,620 વાય વાય માં સરનામા પર જાઓ અર્થ એ થાય તારો, અને ત્યાં કમનસીબ નંબર 13 મૂકો. 1123 00:50:12,620 --> 00:50:15,780 શા માટે આ બિંદુએ, તે ખતરનાક છે આ story-- યદ્યપિ ઝડપથી જણાવ્યું 1124 00:50:15,780 --> 00:50:17,980 અમારા અસ્ત મિનિટમાં અહીં શા માટે તે ખરાબ છે 1125 00:50:17,980 --> 00:50:19,660 મને કહે છે, વાય માં સરનામા પર જાઓ? 1126 00:50:19,660 --> 00:50:21,077 >> પ્રેક્ષક: તમે ન [અશ્રાવ્ય]. 1127 00:50:21,077 --> 00:50:22,910 ડેવિડ જે MALAN: હું નથી વાય કંઈપણ મૂકો. 1128 00:50:22,910 --> 00:50:25,520 તેથી વાય ની કિંમત શું છે, વાર્તામાં આ બિંદુએ? 1129 00:50:25,520 --> 00:50:26,570 અમે કોઈ વિચાર હોય છે. 1130 00:50:26,570 --> 00:50:29,190 તે કેટલાક કચરો કિંમત છે અને ન Binky ખબર નથી. 1131 00:50:29,190 --> 00:50:32,532 અમે આ નોંધ પર સમાપ્ત શકે છે. 1132 00:50:32,532 --> 00:50:34,832 >> [વિડિઓ પ્લેબેક] 1133 00:50:34,832 --> 00:50:36,500 >> -Hey, Binky, જાગે. 1134 00:50:36,500 --> 00:50:39,140 તે નિર્દેશક આનંદ માટે સમય છે. 1135 00:50:39,140 --> 00:50:40,210 >> -તે શું છે? 1136 00:50:40,210 --> 00:50:41,690 પોઇન્ટર વિશે જાણો! 1137 00:50:41,690 --> 00:50:43,570 ઓહ, ગુડી. 1138 00:50:43,570 --> 00:50:46,600 >> -વેલ, પ્રારંભ કરવા માટે, હું અમે છો ધારી એક દંપતિ પોઇન્ટર જરૂર જવાનું. 1139 00:50:46,600 --> 00:50:47,380 >> -ઠીક છે. 1140 00:50:47,380 --> 00:50:51,120 આ કોડ બે પોઇન્ટર ફાળવે જે પૂર્ણાંકો માટે નિર્દેશ કરી શકો છો. 1141 00:50:51,120 --> 00:50:53,557 >> -OK, હું સારી રીતે જુઓ બે પોઇન્ટર છે, પરંતુ તેઓ 1142 00:50:53,557 --> 00:50:55,140 કંઈપણ થઈ પોઇન્ટ કરવા લાગતું નથી. 1143 00:50:55,140 --> 00:50:55,970 >> -તે સાચું છે. 1144 00:50:55,970 --> 00:50:58,100 શરૂઆતમાં પોઇન્ટર કંઈપણ મૂકતા નથી. 1145 00:50:58,100 --> 00:51:00,950 તેઓ માટે નિર્દેશ વસ્તુઓ છે નિર્દેશ pointees કહેવામાં આવે છે અને તેમને સુયોજિત 1146 00:51:00,950 --> 00:51:02,330 એક અલગ પગલું છે. 1147 00:51:02,330 --> 00:51:03,210 >> અધિકાર, અધિકાર, -OH. 1148 00:51:03,210 --> 00:51:03,940 હું જાણતા હતા કે. 1149 00:51:03,940 --> 00:51:05,730 આ નિર્દેશ pointees અલગ હોય છે. 1150 00:51:05,730 --> 00:51:08,310 તેથી તમે કેવી રીતે એક pointee ફાળવી શકું? 1151 00:51:08,310 --> 00:51:11,960 >> -OK, સાથે સાથે આ કોડ ફાળવે નવી પૂર્ણાંક pointee, 1152 00:51:11,960 --> 00:51:15,050 અને આ ભાગ સેટ એક્સ તે નિર્દેશ કરે છે. 1153 00:51:15,050 --> 00:51:16,240 >> -Hey, કે સારી દેખાય છે. 1154 00:51:16,240 --> 00:51:17,743 તેથી તે કંઈક બનાવે છે. 1155 00:51:17,743 --> 00:51:23,580 >> -OK, હું પડશે નિર્દેશક એક્સ ડિરેફરન્સ તેના pointee માં 42 નંબર સ્ટોર કરે છે. 1156 00:51:23,580 --> 00:51:27,130 આ યુક્તિ માટે, હું જરૂર પડશે મારા dereferencing જાદુ લાકડી. 1157 00:51:27,130 --> 00:51:30,200 >> Dereferencing ના -તમારા જાદુ જાદુઈ લાકડી? 1158 00:51:30,200 --> 00:51:32,310 ઉહ, કે જે મહાન છે. 1159 00:51:32,310 --> 00:51:34,270 >> -આ કોડ જેવી દેખાય છે. 1160 00:51:34,270 --> 00:51:35,970 હું માત્ર નંબર સેટ કરશો and-- 1161 00:51:35,970 --> 00:51:37,070 >> [પોપ સાઉન્ડ] 1162 00:51:37,070 --> 00:51:39,140 >> -Hey, તે જાય ત્યાં જુઓ. 1163 00:51:39,140 --> 00:51:43,980 તેથી, X પર ડિરેફરન્સ કરી નીચે તીર તેના pointee ઍક્સેસ કરવા માટે. 1164 00:51:43,980 --> 00:51:46,150 આ કિસ્સામાં, ત્યાં 42 સંગ્રહવા માટે. 1165 00:51:46,150 --> 00:51:50,700 અરે, આ નંબર સ્ટોર કરવા માટે તેનો ઉપયોગ કરવાનો પ્રયાસ કરો અન્ય નિર્દેશક દ્વારા 13, વાય. 1166 00:51:50,700 --> 00:51:51,840 >> -ઠીક છે. 1167 00:51:51,840 --> 00:51:56,270 હું માત્ર વાય માટે અહીં પર જાઓ પડશે, અને નંબર 13 સમૂહ મેળવો. 1168 00:51:56,270 --> 00:52:00,380 અને પછી એ જાદુઈ લાકડી લે dereferencing અને just-- 1169 00:52:00,380 --> 00:52:01,646 >> [લાલબત્તી ધરનાર SOUND] 1170 00:52:01,646 --> 00:52:04,080 >> -OH હેય કે કામ ન હતી. 1171 00:52:04,080 --> 00:52:06,470 , Binky ઉહ, હું નથી, કહે છે dereferencing લાગે 1172 00:52:06,470 --> 00:52:10,850 સુયોજિત કારણ કે વાય, એક સારો વિચાર છે આ pointee એક અલગ પગલું છે. 1173 00:52:10,850 --> 00:52:12,480 અને હું અમે ક્યારેય તેને હતી નથી લાગતું નથી. 1174 00:52:12,480 --> 00:52:14,620 >> -Hmm, સારા બિંદુ. 1175 00:52:14,620 --> 00:52:19,810 >> અરે વાહ, અમે નિર્દેશક, વાય ફાળવવામાં, પરંતુ અમે એક pointee માટે નિર્દેશ તે સેટ નથી. 1176 00:52:19,810 --> 00:52:21,590 >> -Hmm ખૂબ જ સચેત. 1177 00:52:21,590 --> 00:52:23,215 -Hey, તમે ત્યાં Binky સારી શોધી રહ્યાં છે. 1178 00:52:23,215 --> 00:52:26,390 તમે કે જેથી તેને ઠીક કરી શકે વાય પોઇન્ટ X તરીકે જ pointee છે. 1179 00:52:26,390 --> 00:52:29,290 >> -Sure, હું મારા જાદુ જાદુઈ લાકડી ઉપયોગ નિર્દેશક સોંપણી. 1180 00:52:29,290 --> 00:52:31,970 >> એક પ્રયત્ન રહ્યું છે કે નબળી ગણાય છે સમસ્યા પહેલાં જેવું? 1181 00:52:31,970 --> 00:52:33,790 >> -કોઈ, આ નિર્દેશ pointees સ્પર્શતું નથી. 1182 00:52:33,790 --> 00:52:35,840 તે માત્ર એક નિર્દેશક બદલે એ જ વસ્તુ માટે નિર્દેશ 1183 00:52:35,840 --> 00:52:36,465 >> [અવાજ ધાણી] 1184 00:52:36,465 --> 00:52:37,450 અન્ય --as. 1185 00:52:37,450 --> 00:52:38,440 >> -OH, હું જુઓ. 1186 00:52:38,440 --> 00:52:41,200 X તરીકે જ જગ્યાએ હવે વાય નિર્દેશ કરે છે. 1187 00:52:41,200 --> 00:52:42,950 તેથી, હવે વાય સુધારેલ છે, રાહ જુઓ. 1188 00:52:42,950 --> 00:52:44,110 તે pointee છે. 1189 00:52:44,110 --> 00:52:47,779 તેથી તમે લાકડી પ્રયાસ કરી શકો છો 13 ઉપર મોકલવા માટે ફરીથી dereferencing. 1190 00:52:47,779 --> 00:52:51,110 >> -OH, ઠીક છે, અહીં જાય છે. 1191 00:52:51,110 --> 00:52:52,330 >> -Hey, કે જુઓ. 1192 00:52:52,330 --> 00:52:53,570 હવે વાય પર કામ કરે છે dereferencing. 1193 00:52:53,570 --> 00:52:57,900 અને પોઇન્ટર શેર કરી રહ્યાં છે, કારણ કે એક pointee, તેઓ બંને 13 જુઓ. 1194 00:52:57,900 --> 00:52:59,952 >> અરે વાહ, શેરિંગ, ઉહ, ગમે. 1195 00:52:59,952 --> 00:53:01,535 તેથી, અમે સ્થાનો હવે સ્વિચ જવું છે? 1196 00:53:01,535 --> 00:53:03,730 >> -OH, અમે સમય નથી જુઓ. 1197 00:53:03,730 --> 00:53:04,660 >> -But-- 1198 00:53:04,660 --> 00:53:06,520 >> ત્રણ નિર્દેશક નિયમો યાદ -Just. 1199 00:53:06,520 --> 00:53:09,550 નંબર 1, મૂળભૂત માળખું તમે એક નિર્દેશક હોય છે, 1200 00:53:09,550 --> 00:53:11,630 અને તે pointee પર નિર્દેશ કરે છે. 1201 00:53:11,630 --> 00:53:13,740 પરંતુ નિર્દેશક અને pointee અલગ હોય છે. 1202 00:53:13,740 --> 00:53:15,620 અને સામાન્ય ભૂલ એક નિર્દેશક સુયોજિત કરવા માટે છે 1203 00:53:15,620 --> 00:53:18,000 પરંતુ તે pointee આપી ભૂલી. 1204 00:53:18,000 --> 00:53:21,170 >> સંખ્યા 2, નિર્દેશક dereferencing નિર્દેશક પર શરૂ થાય છે 1205 00:53:21,170 --> 00:53:24,020 અને તેના પર તીર નીચે તેના pointee ઍક્સેસ કરવા માટે. 1206 00:53:24,020 --> 00:53:27,815 આપણે બધાં જ જાણીએ, આ માત્ર ત્યાં તો કામ કરે છે પ્રકારની પાછા નહીં કે જે pointee છે, 1207 00:53:27,815 --> 00:53:29,260 નંબર 1 શાસન છે. 1208 00:53:29,260 --> 00:53:31,990 >> નંબર 3, નિર્દેશક સોંપણી એક નિર્દેશક લે છે 1209 00:53:31,990 --> 00:53:35,330 અને નિર્દેશ કરવા માટે તે બદલે છે અન્ય નિર્દેશક તરીકે જ pointee. 1210 00:53:35,330 --> 00:53:37,150 સોંપણી પછી તેથી, બે પોઇન્ટર 1211 00:53:37,150 --> 00:53:40,927 જ pointee માટે નિર્દેશ કરશે, ક્યારેક શેરિંગ કહેવાય છે. 1212 00:53:40,927 --> 00:53:42,510 અને તે ખરેખર, તે ત્યાં છે બધા છે. 1213 00:53:42,510 --> 00:53:43,130 બાય બાય હવે. 1214 00:53:43,130 --> 00:53:43,475 >> [સમાપ્ત પ્લેબેક] 1215 00:53:43,475 --> 00:53:44,830 >> ડેવિડ જે MALAN: કે CS50 માટે છે. 1216 00:53:44,830 --> 00:53:46,246 પ્રોફેસર નિક Parlante માટે આભાર. 1217 00:53:46,246 --> 00:53:47,730 અમે આગામી સપ્તાહે તમે જોશો. 1218 00:53:47,730 --> 00:53:51,706 1219 00:53:51,706 --> 00:53:56,435 >> [ઇલેક્ટ્રોનિક સંગીત વગાડવાનો] 1220 00:53:56,435 --> 00:57:22,775