1 00:00:00,000 --> 00:00:01,110 >> [MUSIC ifa] 2 00:00:01,110 --> 00:00:10,567 3 00:00:10,567 --> 00:00:11,650 DAVID J. MALAN: B眉t眉n h眉ququ. 4 00:00:11,650 --> 00:00:15,610 Bu CS50 v蓹 bu H蓹ft蓹 d枚rd sonu. 5 00:00:15,610 --> 00:00:19,420 V蓹 m枚vzulardan biri bu g眉n digital Suclari ki, 6 00:00:19,420 --> 00:00:20,989 m蓹lumat b蓹rpa s蓹n蓹ti. 7 00:00:20,989 --> 00:00:22,780 V蓹 h蓹qiq蓹t蓹n, baxmayaraq Siz ortas谋nda ist蓹yirik 8 00:00:22,780 --> 00:00:25,070 陌ndi S眉lh 脺莽 da v蓹 Breakout, g蓹l蓹n h蓹ft蓹, 9 00:00:25,070 --> 00:00:27,880 diqq蓹t olacaq m蓹hz bu domain. 10 00:00:27,880 --> 00:00:30,686 >> Keyfiyy蓹tli i艧 bel蓹 bir m蓹n he莽 idi, geri m蓹kt蓹bin m蓹zunu idi 11 00:00:30,686 --> 00:00:33,560 M蓹n yerli i艧 zaman Middlesex County District Attorney Agentliyi 12 00:00:33,560 --> 00:00:34,950 ofis, bunu Suclari i艧. 13 00:00:34,950 --> 00:00:37,450 Bel蓹 ki, mahiyy蓹tc蓹, Massachusetts D枚vl蓹t Polis, m眉nasib蓹til蓹, 14 00:00:37,450 --> 00:00:40,100 hallarda i艧l蓹y蓹n zaman ki sabit diskler kimi 艧eyl蓹r g蓹tirm蓹k 15 00:00:40,100 --> 00:00:42,185 v蓹 disketleri v蓹 yadda艧 kartlar谋 v蓹 s. 16 00:00:42,185 --> 00:00:44,060 V蓹 onlar 蓹l ats谋nlar m蓹nim v蓹 mentoru, 17 00:00:44,060 --> 00:00:48,070 v蓹 bizim m蓹qs蓹dimiz d蓹lil tapmaq idi, Bu media h蓹r hans谋 bir var idi, 蓹g蓹r. 18 00:00:48,070 --> 00:00:50,700 陌ndi, siz g枚rd眉k bil蓹r qoyark蓹n Suclari bu d眉nya 19 00:00:50,700 --> 00:00:53,000 media, televiziya v蓹 film. 20 00:00:53,000 --> 00:00:55,730 Amma i艧 m蓹n v蓹 daresay ki, d眉nya, 21 00:00:55,730 --> 00:00:57,550 Siz onu g枚rm蓹k olard谋 kimi 莽ox deyil. 22 00:00:57,550 --> 00:01:00,794 Nin bir n蓹z蓹r salaq n蓹 Siz y蓹qin ki, g枚rd眉m. 23 00:01:00,794 --> 00:01:01,460 [Video playback] 24 00:01:01,460 --> 00:01:02,930 -Ok. 25 00:01:02,930 --> 00:01:05,380 陌ndi siz蓹 yax艧谋 bir n蓹z蓹r almaq ed蓹k. 26 00:01:05,380 --> 00:01:06,850 >> [MUSIC ifa] 27 00:01:06,850 --> 00:01:12,260 28 00:01:12,260 --> 00:01:12,932 >> Onu tutun. 29 00:01:12,932 --> 00:01:13,657 Geri Run. 30 00:01:13,657 --> 00:01:14,733 >> Bir d蓹qiq蓹 g枚zl蓹yin. 31 00:01:14,733 --> 00:01:15,233 Do臒ru getm蓹k. 32 00:01:15,233 --> 00:01:16,371 33 00:01:16,371 --> 00:01:16,870 -Var. 34 00:01:16,870 --> 00:01:17,369 Ki dondurmaq. 35 00:01:17,369 --> 00:01:17,930 Tam ekran. 36 00:01:17,930 --> 00:01:18,376 >> -Ok. 37 00:01:18,376 --> 00:01:18,875 Ki dondurmaq. 38 00:01:18,875 --> 00:01:20,160 Siz ki, up -Tighten? 39 00:01:20,160 --> 00:01:22,126 >> Ki, da -Vector geri t蓹k蓹r il蓹 o臒lan. 40 00:01:22,126 --> 00:01:24,435 >> Burada bu yerind蓹 -Zoom. 41 00:01:24,435 --> 00:01:28,580 >> Do臒ru avadanl谋q ile, image geni艧l蓹ndirilmi艧 v蓹 itil蓹nmi艧 bil蓹r. 42 00:01:28,580 --> 00:01:29,330 >> Ki, hans谋 var? 43 00:01:29,330 --> 00:01:30,780 >> -Bu Bir geni艧l蓹ndirilm蓹si proqram谋 var. 44 00:01:30,780 --> 00:01:32,170 >> Ki, h蓹r hans谋 ayd谋n bil蓹rsinizmi? 45 00:01:32,170 --> 00:01:33,070 >> M蓹n bilmir蓹m. 46 00:01:33,070 --> 00:01:34,150 Onu art谋rmaq ed蓹k. 47 00:01:34,150 --> 00:01:35,440 >> G眉cl蓹ndirilm蓹si B枚lm蓹 A6. 48 00:01:35,440 --> 00:01:36,570 49 00:01:36,570 --> 00:01:38,562 M蓹n 蓹trafl谋 etmi艧, and-- 50 00:01:38,562 --> 00:01:40,020 M蓹n art谋rmaq 眉莽眉n kifay蓹t q蓹d蓹r var edir蓹m. 51 00:01:40,020 --> 00:01:40,976 M蓹nim ekran 眉莽眉n burax谋n. 52 00:01:40,976 --> 00:01:42,559 >> M蓹n onun g枚z眉 蓹ks etmi艧. 53 00:01:42,559 --> 00:01:44,322 Let bu 莽al谋艧t谋rmak video geni艧l蓹ndirilm蓹si. 54 00:01:44,322 --> 00:01:45,210 >> -Edgar, Bu g眉cl蓹ndir蓹 bil蓹r? 55 00:01:45,210 --> 00:01:45,710 >> On Hang. 56 00:01:45,710 --> 00:01:47,570 57 00:01:47,570 --> 00:01:49,458 >> Bu 蓹ks 眉z蓹rind蓹 i艧l蓹yir -I've. 58 00:01:49,458 --> 00:01:50,402 >> -Var Kimins蓹 蓹ks. 59 00:01:50,402 --> 00:01:50,902 >> -Reflection. 60 00:01:50,902 --> 00:01:52,870 Insan谋n 眉z眉n眉 蓹ks -Var var. 61 00:01:52,870 --> 00:01:53,694 >> The 蓹ks! 62 00:01:53,694 --> 00:01:54,610 茝ks -Var var. 63 00:01:54,610 --> 00:01:55,880 G眉zg眉 眉zr蓹 Zoom. 64 00:01:55,880 --> 00:01:57,860 Siz 蓹ksini g枚r眉r眉k. 65 00:01:57,860 --> 00:01:59,630 >> Burada image art谋rmaq olarm谋? 66 00:01:59,630 --> 00:02:00,377 67 00:02:00,377 --> 00:02:01,210 Siz art谋rmaq olarm谋? 68 00:02:01,210 --> 00:02:02,190 Siz art谋rmaq olarm谋? 69 00:02:02,190 --> 00:02:03,066 Biz bu art谋rmaq olarm谋? 70 00:02:03,066 --> 00:02:03,898 Siz art谋rmaq olarm谋? 71 00:02:03,898 --> 00:02:04,740 Bir ikinci tutun. 72 00:02:04,740 --> 00:02:05,281 M蓹n art谋rmaq laz谋md谋r. 73 00:02:05,281 --> 00:02:06,470 Qap谋 眉zr蓹 Zoom. 74 00:02:06,470 --> 00:02:06,970 10 Times. 75 00:02:06,970 --> 00:02:08,009 Zoom. 76 00:02:08,009 --> 00:02:08,509 Da Move. 77 00:02:08,509 --> 00:02:09,340 Daha 莽ox. 78 00:02:09,340 --> 00:02:10,094 G枚zl蓹yin dayand谋rmaq. 79 00:02:10,094 --> 00:02:10,750 Stop. 80 00:02:10,750 --> 00:02:11,250 Onu -Pause. 81 00:02:11,250 --> 00:02:13,542 Biz蓹 75 d蓹r蓹c蓹 qay谋t 艧aquli 蓹traf谋nda edin. 82 00:02:13,542 --> 00:02:14,750 83 00:02:14,750 --> 00:02:16,127 >> Stop. 84 00:02:16,127 --> 00:02:19,330 Hiss蓹si geri d枚n qap谋 yenid蓹n. 85 00:02:19,330 --> 00:02:21,420 >> Bitmap bil蓹r ki, bir image G眉cl蓹ndirici Got? 86 00:02:21,420 --> 00:02:24,420 >> Biz Pradeep Singh istifad蓹 ed蓹 bil蓹rsiniz -B蓹lk蓹 眉sul Windows daxil g枚rm蓹k 眉莽眉n. 87 00:02:24,420 --> 00:02:25,902 >> Bu proqram s蓹n蓹tinin d枚vl蓹tdir. 88 00:02:25,902 --> 00:02:26,866 >> The eigenvalue off edir. 89 00:02:26,866 --> 00:02:29,758 >> Sa臒 -Il蓹 alqoritml蓹rin birl蓹艧m蓹si 90 00:02:29,758 --> 00:02:32,168 >> O g枚t眉r眉lm眉艧 i艧谋qland谋rma N枚vb蓹ti s蓹viyy蓹si alqoritml蓹r, 91 00:02:32,168 --> 00:02:34,110 v蓹 m蓹n onlar谋 istifad蓹 ed蓹 bil蓹rsiniz Bu foto艧蓹kil art谋rmaq. 92 00:02:34,110 --> 00:02:36,840 >> On Lock v蓹 z-ox geni艧l蓹ndirm蓹k. 93 00:02:36,840 --> 00:02:37,351 >> G眉cl蓹ndirilm蓹si. 94 00:02:37,351 --> 00:02:37,850 G眉cl蓹ndirilm蓹si. 95 00:02:37,850 --> 00:02:38,720 G眉cl蓹ndirilm蓹si. 96 00:02:38,720 --> 00:02:40,070 -Freeze V蓹 art谋rmaq. 97 00:02:40,070 --> 00:02:43,420 [END Video playback] 98 00:02:43,420 --> 00:02:45,830 DAVID J. MALAN: Y蓹ni h蓹min b眉t眉n s枚zl蓹r, lakin onlar deyil 99 00:02:45,830 --> 00:02:47,870 d眉zg眉n c眉ml蓹l蓹r istifad蓹. 100 00:02:47,870 --> 00:02:52,370 V蓹 h蓹qiq蓹t蓹n g蓹l蓹c蓹kd蓹, ist蓹nil蓹n vaxt, , kims蓹 s枚z dem蓹k e艧itm蓹k edin, 101 00:02:52,370 --> 00:02:54,250 Yaln谋z bir az k谋k谋rdama "art谋rmaq". 102 00:02:54,250 --> 00:02:57,190 Siz art谋rmaq 眉莽眉n c蓹hd zaman, M蓹s蓹l蓹n, bu n蓹 edir. 103 00:02:57,190 --> 00:02:58,580 >> Bel蓹 ki, burada bir parlaq 艧蓹kil var. 104 00:02:58,580 --> 00:02:59,720 Bu CS50 枚z Daven edir. 105 00:02:59,720 --> 00:03:03,740 V蓹 biz etm蓹k ist蓹yirdi ki, g眉man onun g枚z par谋ldamaq 眉zr蓹 diqq蓹t, 106 00:03:03,740 --> 00:03:05,870 v蓹 ya 蓹ks ayd谋n idi ki, pis o臒lan 107 00:03:05,870 --> 00:03:07,820 t蓹hl眉k蓹sizlik kamera t蓹r蓹find蓹n 蓹sir. 108 00:03:07,820 --> 00:03:10,330 Bu zaman n蓹 olar Bir image zoom 109 00:03:10,330 --> 00:03:14,060 yaln谋z m蓹hdud sayda var Bug眉n bit. 110 00:03:14,060 --> 00:03:15,420 >> Y蓹ni siz almaq n蓹 edir. 111 00:03:15,420 --> 00:03:19,190 V蓹 h蓹qiq蓹t蓹n, Daven g枚z , b蓹lk蓹 alt谋 piksel lakin d枚rd 112 00:03:19,190 --> 00:03:22,110 ki, m蓹hz n蓹 b蓹st蓹l蓹m蓹k orada glimmering edilib. 113 00:03:22,110 --> 00:03:25,890 Bel蓹 ki, Problem Set d枚rd n蓹tic蓹d蓹 olacaq x眉susil蓹, bu d眉nya ara艧d谋rmaq 114 00:03:25,890 --> 00:03:28,090 bir 艧ey t蓹bi蓹ti biz fayl i / o, harada z蓹ng 115 00:03:28,090 --> 00:03:31,000 i / o yaln谋z bir x眉lya yoludur giri艧 v蓹 莽谋x谋艧 etdi. 116 00:03:31,000 --> 00:03:34,280 >> Bel蓹 ki, indiy蓹d蓹k, qar艧谋l谋ql谋 b眉t眉n Biz bir komp眉ter ya艧ad谋臒谋n谋z 117 00:03:34,280 --> 00:03:36,770 il蓹 蓹sas蓹n olmu艧dur sizin klaviatura v蓹 ekran, 118 00:03:36,770 --> 00:03:40,770 lakin sabit disk il蓹 q蓹d蓹r deyil, v蓹 ya olanlar谋 k蓹narda fayllar谋 q蓹na蓹t 119 00:03:40,770 --> 00:03:41,620 枚z眉n眉z yaz谋n. 120 00:03:41,620 --> 00:03:44,570 Proqramlar谋 bu g眉n蓹 q蓹d蓹r deyil, yarad谋lmas谋 v蓹 q蓹na蓹t edilmi艧dir 121 00:03:44,570 --> 00:03:46,270 v蓹 枚z fayllar谋 yenil蓹nm蓹si. 122 00:03:46,270 --> 00:03:47,150 >> Yax艧谋, bir fayl var? 123 00:03:47,150 --> 00:03:48,105 Yax艧谋, bir JPEG kimi bir 艧ey. 124 00:03:48,105 --> 00:03:50,520 Bu g眉c bir resim deyil v蓹 ya Facebook y眉klemek, 125 00:03:50,520 --> 00:03:51,690 v蓹 ya h蓹r hans谋 web bax谋n. 126 00:03:51,690 --> 00:03:54,460 H蓹qiq蓹t蓹n, 艧蓹kil biz yaln谋z Daven v蓹 mi艧ar bir JPEG idi. 127 00:03:54,460 --> 00:03:57,570 V蓹 n蓹 maraql谋 JPEGs kimi fayllar谋 haqq谋nda 128 00:03:57,570 --> 00:04:02,170 Onlar m眉蓹yy蓹n edil蓹 bil蓹r ki, ad蓹t蓹n, bit m眉蓹yy蓹n n眉mun蓹l蓹ri il蓹. 129 00:04:02,170 --> 00:04:05,200 >> Ba艧qa s枚zl蓹, bu n蓹 bir GIF JPEG f蓹rql蓹ndirir 130 00:04:05,200 --> 00:04:08,109 Word bir PING'i olan bir Excel fayl s蓹n蓹d? 131 00:04:08,109 --> 00:04:09,900 B蓹li, yaln谋z m眉xt蓹lif var bit n眉mun蓹l蓹ri. 132 00:04:09,900 --> 00:04:12,820 V蓹 bu m眉xt蓹lif n眉mun蓹l蓹ri ad蓹t蓹n bu fayllar谋n 蓹vv蓹lind蓹. 133 00:04:12,820 --> 00:04:18,200 >> Sizin komp眉ter Word a莽谋r zaman, bel蓹 ki, doc, v蓹 ya komp眉ter JPEG a莽谋l谋r zaman, 134 00:04:18,200 --> 00:04:20,940 Bu ad蓹t蓹n g枚r眉n眉r fayl ilk bir ne莽蓹 bit. 135 00:04:20,940 --> 00:04:24,059 V蓹 bir model tan谋sa, Bu oh, bu, bir 艧蓹kil, deyir. 136 00:04:24,059 --> 00:04:25,850 M蓹n蓹 ke莽irm蓹k ed蓹k bir qrafik kimi istifad蓹莽i. 137 00:04:25,850 --> 00:04:27,870 V蓹 ya, oh, bu Word doc kimi g枚r眉n眉r. 138 00:04:27,870 --> 00:04:30,480 M蓹n蓹 bir esse kimi istifad蓹莽i onu g枚st蓹rm蓹k bildirin. 139 00:04:30,480 --> 00:04:33,020 >> Bel蓹 ki, m蓹s蓹l蓹n, JPEGs, Bu, 莽谋x谋r 140 00:04:33,020 --> 00:04:35,460 kifay蓹t q蓹d蓹r m眉r蓹kk蓹b ba艧l谋q alt谋nda. 141 00:04:35,460 --> 00:04:40,140 Amma 蓹n h蓹r ilk 眉莽 bytes JPEG bu 眉莽 蓹d蓹d il蓹 ba艧lay谋n. 142 00:04:40,140 --> 00:04:44,680 Bel蓹 ki, byte s谋f谋r, bir, iki, var 蓹n h蓹r JPEG, 255, sonra say谋 143 00:04:44,680 --> 00:04:46,675 216, sonra say谋 255. 144 00:04:46,675 --> 00:04:48,990 >> V蓹 siz ed蓹 bil蓹rsiniz n蓹 g蓹l蓹n h蓹ft蓹 bunu ba艧lamaq 眉莽眉n 145 00:04:48,990 --> 00:04:52,920 h蓹qiq蓹t蓹n alt谋nda poking olunur JPEGs kimi fayllar谋 ba艧l谋q 146 00:04:52,920 --> 00:04:57,210 v蓹 bitmap fayllar谋 kimi, v蓹 g枚r蓹n h蓹mi艧蓹 kimi uzun olub 147 00:04:57,210 --> 00:04:58,650 Bir komp眉ter istifad蓹 etdiyiniz kimi. 148 00:04:58,650 --> 00:05:01,860 >> Amma ad蓹t蓹n var deyil n蓹 ox艧ar decimal n枚mr蓹l蓹ri kimi yaz谋lm谋艧d谋r. 149 00:05:01,860 --> 00:05:04,620 Komp眉ter elm deyil ondal谋k dan谋艧maq edirl蓹r. 150 00:05:04,620 --> 00:05:06,139 Onlar, h蓹qiq蓹t蓹n, ikili dan谋艧maq deyil. 151 00:05:06,139 --> 00:05:07,930 Ad蓹t蓹n, biz ist蓹yirik n枚mr蓹l蓹ri ifad蓹 etm蓹k, 152 00:05:07,930 --> 00:05:10,710 Biz, h蓹qiq蓹t蓹n, hexadecimal istifad蓹, siz geri bil蓹r 153 00:05:10,710 --> 00:05:13,027 Problem Set, dem蓹k ki, Etiraz ed蓹n biri, 154 00:05:13,027 --> 00:05:14,610 Siz m眉xt蓹lif sistem haqq谋nda d眉艧眉nm蓹k. 155 00:05:14,610 --> 00:05:17,170 >> Biz, 蓹lb蓹tt蓹, tan谋艧 doqquz vasit蓹sil蓹 decimal s谋f谋r il蓹. 156 00:05:17,170 --> 00:05:18,215 Biz ikili dan谋艧d谋q. 157 00:05:18,215 --> 00:05:20,710 V蓹 biz, h蓹qiq蓹t蓹n, yoxdur 莽ox burada istifad蓹 etm蓹k 158 00:05:20,710 --> 00:05:22,470 out, komp眉ter istifad蓹 ed蓹c蓹k. 159 00:05:22,470 --> 00:05:24,900 Amma proqram莽谋lar 莽ox olacaq tez-tez, lakin h蓹mi艧蓹, 160 00:05:24,900 --> 00:05:29,360 yaln谋z dem蓹kdir, hexadecimal istifad蓹 Sizin 蓹lifbas谋 16 m蓹ktublar 161 00:05:29,360 --> 00:05:31,330 kimi iki v蓹 ya 10 f蓹rqli. 162 00:05:31,330 --> 00:05:34,530 >> Bel蓹 ki, nec蓹 y眉ks蓹k saymaq yoxdur hexadecimal doqquz daha 莽ox? 163 00:05:34,530 --> 00:05:41,120 Siz getm蓹k 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, yaln谋z konvensiya c, d, e, f, b. 164 00:05:41,120 --> 00:05:43,540 Amma n蓹 蓹sas var ki, h蓹r n蓹 bu bir r蓹mzidir. 165 00:05:43,540 --> 00:05:44,340 He莽 10 var. 166 00:05:44,340 --> 00:05:48,400 H蓹r 莽眉nki, he莽 bir 11, ba艧谋na se var Sizin r蓹q蓹m yaln谋z ondal谋k kimi 167 00:05:48,400 --> 00:05:51,940 yaln谋z ikili kimi, yaln谋z olmal谋d谋r Konvensiya il蓹 bir xarakter olmas谋. 168 00:05:51,940 --> 00:05:55,280 >> Sonra biz 蓹lifbas谋 Bel蓹 ki, Hexadecimal 眉莽眉n bizim s蓹r蓹ncam谋nda. 169 00:05:55,280 --> 00:05:58,600 Bel蓹 ki, bir JPEG, 蓹g蓹r kimi g枚r眉n眉r o ilk 眉莽 yazmaq idi 170 00:05:58,600 --> 00:06:01,980 , ondal谋k kimi bayt lakin M蓹s蓹l蓹n, hexadecimal kimi? 171 00:06:01,980 --> 00:06:03,640 V蓹 n蓹 hex ki, faydal谋 h蓹tta b眉t眉n var? 172 00:06:03,640 --> 00:06:05,290 >> Yax艧谋, M蓹s蓹l蓹n bir g枚z at谋n谋z. 173 00:06:05,290 --> 00:06:09,030 M蓹n bit yazmaq 蓹g蓹r Bel蓹 ki, bu k蓹sir numbers-- etdirir 174 00:06:09,030 --> 00:06:12,450 bu bir az pasl谋 ola bil蓹r 陌ndi bir ne莽蓹 h蓹ft蓹, 175 00:06:12,450 --> 00:06:14,820 sol bir v蓹 ancaq sa臒 olduqca asand谋r. 176 00:06:14,820 --> 00:06:17,990 255 蓹n b枚y眉k say谋 biz idi s蓹kkiz bit il蓹 t蓹msil ed蓹 bil蓹r. 177 00:06:17,990 --> 00:06:18,820 Bu, b眉t眉n olanlar oldu. 178 00:06:18,820 --> 00:06:21,320 Bel蓹 ki, yum艧aq var ki, yaln谋z bir maraql谋 orta biridir. 179 00:06:21,320 --> 00:06:24,700 V蓹 c眉r h蓹yata 蓹g蓹r riyaziyyat, siz, h蓹qiq蓹t蓹n, anlamak ed蓹c蓹k 180 00:06:24,700 --> 00:06:27,949 bir o model v蓹 adet s谋f谋r 216 t蓹msil edir. 181 00:06:27,949 --> 00:06:30,240 Bel蓹 ki, yaln谋z m眉蓹yy蓹n ed蓹k 陌ndi bu do臒ru oldu臒unu. 182 00:06:30,240 --> 00:06:31,730 Amma niy蓹 bu maraql谋d谋r? 183 00:06:31,730 --> 00:06:33,970 >> Yax艧谋, bir byte, 蓹lb蓹tt蓹, s蓹kkiz bit edir. 184 00:06:33,970 --> 00:06:38,980 V蓹 hesab edir蓹m ki, 蓹g蓹r 莽谋x谋r ki, d枚rd bit iki chunks olaraq bir byte, 185 00:06:38,980 --> 00:06:39,500 bu kimi. 186 00:06:39,500 --> 00:06:41,000 M蓹n蓹 yaln谋z bir yer 蓹lav蓹 ed蓹k. 187 00:06:41,000 --> 00:06:42,550 Bel蓹 ki, 蓹vv蓹l, sonra. 188 00:06:42,550 --> 00:06:46,520 M蓹n yaln谋z b蓹zi a臒 kosmik 蓹lav蓹 etdik Burada vizual xatirin蓹. 189 00:06:46,520 --> 00:06:51,840 Biz nec蓹 t蓹msil ed蓹 bil蓹r, dem蓹k, hexadecimal bit h蓹r d枚rd, 190 00:06:51,840 --> 00:06:52,880 d枚rd bit h蓹r set? 191 00:06:52,880 --> 00:06:56,420 >> M蓹s蓹l蓹n, sol bel蓹 indi biz ikili 1111 var. 192 00:06:56,420 --> 00:07:00,420 Ondal谋k ki say谋 n蓹dir, Siz riyaziyyat h蓹yata 蓹g蓹r? 193 00:07:00,420 --> 00:07:03,780 Siz is蓹 yer var, ikil蓹r yer, d枚rd ayaq yer, v蓹 s蓹kkizinci yer. 194 00:07:03,780 --> 00:07:04,341 >> Auditoriya: 15. 195 00:07:04,341 --> 00:07:05,340 DAVID J. MALAN: Bu 15 var. 196 00:07:05,340 --> 00:07:08,340 Bel蓹 ki, biz s蓹kkiz plus d枚rd 蓹g蓹r 眉st蓹g蓹l iki plus bir, biz 15 almaq. 197 00:07:08,340 --> 00:07:11,790 M蓹n a艧a臒谋da 15 yazmaq 1111, lakin burada b眉t眉n point 198 00:07:11,790 --> 00:07:13,190 hexadecimal decimal deyil. 199 00:07:13,190 --> 00:07:17,310 Bel蓹 ki, 蓹v蓹zin蓹 a艧a臒谋 yaz谋l谋 15, 1-5, M蓹n hex ki, yazmaq 眉莽眉n gedir蓹m 200 00:07:17,310 --> 00:07:22,311 Siz 蓹g蓹r, geri hesab 蓹g蓹r f vasit蓹sil蓹 s谋f谋r, n蓹 15 olacaq? 201 00:07:22,311 --> 00:07:22,810 Auditoriya: f. 202 00:07:22,810 --> 00:07:24,434 DAVID J. MALAN: Bel蓹 ki, onun f 莽谋x谋r. 203 00:07:24,434 --> 00:07:29,140 V蓹 s枚yl蓹y蓹r蓹k i艧l蓹y蓹 bil蓹r, 10 茝g蓹r yax艧谋, sonra OK, f 15. 204 00:07:29,140 --> 00:07:33,250 Bel蓹 ki, h蓹qiq蓹t蓹n, biz yenid蓹n yazmaq bil蓹r f f kimi n枚mr蓹l蓹ri bu eyni. 205 00:07:33,250 --> 00:07:35,750 V蓹 sonra biz riyaziyyat bir az 蓹g蓹r, biz d ki, anlamak laz谋md谋r. 206 00:07:35,750 --> 00:07:38,650 S蓹kkiz olduqca asand谋r, 莽眉nki biz s蓹kkizinci yerd蓹 bir var. 207 00:07:38,650 --> 00:07:40,620 V蓹 sonra, biz f f-nin bir ne莽蓹 daha 莽ox var. 208 00:07:40,620 --> 00:07:44,669 >> Bel蓹 ki, n蓹 insanlar Konvensiya il蓹 n蓹 edirl蓹r Onlar istifad蓹 ed蓹rk蓹n hexadecimal onlar yaln谋z 209 00:07:44,669 --> 00:07:47,710 daha m眉f蓹ss蓹l 艧蓹kild蓹 bu bir az yazmaq, a臒 kosmik 蓹n qurtarmaq. 210 00:07:47,710 --> 00:07:50,890 V蓹 yaln谋z super ayd谋n olmal谋d谋r Bu hexadecimal ki, oxucu, 211 00:07:50,890 --> 00:07:54,670 aras谋nda sad蓹 konqres insanlar s谋f谋r yazmaq 212 00:07:54,670 --> 00:07:58,000 ba艧qa bir m蓹nas谋 olan x, vizual identifikatoru 莽ox, 213 00:07:58,000 --> 00:07:59,590 Burada hex say谋 g蓹lir. 214 00:07:59,590 --> 00:08:04,210 >> V蓹 sonra, siz f iki r蓹q蓹m qoymaq bu halda f, sonra d a, sonra f f. 215 00:08:04,210 --> 00:08:06,700 Bel蓹 ki, uzun hekay蓹 q谋sa, hexadecimal yaln谋z 莽al谋艧谋r 216 00:08:06,700 --> 00:08:11,990 faydal谋 ola h蓹r 莽眉nki onun r蓹q蓹m, f vasit蓹sil蓹 s谋f谋r, m眉k蓹mm蓹l x蓹tl蓹ri 217 00:08:11,990 --> 00:08:13,880 d枚rd bit model il蓹. 218 00:08:13,880 --> 00:08:18,080 >> Iki hexadecimal r蓹q蓹m var Bel蓹 ki, s谋f谋r t蓹krar F vasit蓹sil蓹, 219 00:08:18,080 --> 00:08:20,256 ki, m眉k蓹mm蓹l verir s蓹kkiz bit v蓹 ya bir byte. 220 00:08:20,256 --> 00:08:22,380 Bu 莽al谋艧谋r n蓹 ki, var 艧蓹rti faydal谋 ola bil蓹r. 221 00:08:22,380 --> 00:08:24,990 He莽 bir intellektual var h蓹qiq蓹t蓹n k蓹narda content, 222 00:08:24,990 --> 00:08:27,010 onun faktiki kommunal ba艧qa. 223 00:08:27,010 --> 00:08:29,310 >> 陌ndi JPEGs yaln谋z deyil qrafik 眉莽眉n format fayl. 224 00:08:29,310 --> 00:08:33,230 Siz var ki, xat谋rlay谋ram bil蓹r D眉nyada bu kimi fayllar谋, 225 00:08:33,230 --> 00:08:34,830 蓹n az谋 bir ne莽蓹 il. 226 00:08:34,830 --> 00:08:37,580 >> Bel蓹 ki, bu h蓹qiq蓹t蓹n Windows XP y眉kl眉 227 00:08:37,580 --> 00:08:39,960 D眉nyada komp眉ter milyonlarla. 228 00:08:39,960 --> 00:08:43,000 V蓹 bu bitmap fayl, BMP idi. 229 00:08:43,000 --> 00:08:47,690 V蓹 bitmap fayl kimi n枚vb蓹ti g枚r蓹c蓹ksiniz h蓹ft蓹, yaln谋z n枚qt蓹l蓹r bir model dem蓹kdir, 230 00:08:47,690 --> 00:08:51,710 onlar deyilir kimi piksel, h蓹qiq蓹t蓹n, bit x蓹rit蓹si. 231 00:08:51,710 --> 00:08:55,160 >> Bel蓹 ki, n蓹 olsa da, maraql谋, bu fayl format谋, BMP haqq谋nda deyil, 232 00:08:55,160 --> 00:08:58,590 ki, ba艧l谋q alt谋nda, onu Yaln谋z 眉莽 bayt daha var 233 00:08:58,590 --> 00:09:01,020 ki, onun m枚vzu b蓹st蓹l蓹m蓹k , ilk bir ne莽蓹 sokmas谋 dan谋艧maq. 234 00:09:01,020 --> 00:09:03,330 Bu, h蓹qiq蓹t蓹n bir az g枚r眉n眉r ilk bax谋艧da 莽蓹tin. 235 00:09:03,330 --> 00:09:04,704 V蓹 siz P set bu g枚r蓹c蓹ksiniz. 236 00:09:04,704 --> 00:09:06,810 V蓹 bir 艧ey 蓹ld蓹 Bu x眉susil蓹 indi 237 00:09:06,810 --> 00:09:10,720 yaln谋z fakt kimi, bel蓹 ki, vacib deyil h蓹r bitmap ba艧谋nda 238 00:09:10,720 --> 00:09:13,823 fayl, bir qrafik format, 蓹d蓹d b眉t枚v bir d蓹st蓹 var. 239 00:09:13,823 --> 00:09:14,980 240 00:09:14,980 --> 00:09:16,720 >> 陌ndi Microsoft, bu formatda m眉蓹llifi, 241 00:09:16,720 --> 00:09:18,820 o z蓹ng etm蓹k 眉莽眉n 莽al谋艧谋r 艧eyi ints v蓹 chars 242 00:09:18,820 --> 00:09:22,259 v蓹 眉z眉b gedirdi amma s枚z v蓹 d s枚z v蓹 longs v蓹 bytes. 243 00:09:22,259 --> 00:09:23,800 Bel蓹 ki, onlar yaln谋z m眉xt蓹lif data n枚vl蓹ri ist蓹yirik. 244 00:09:23,800 --> 00:09:25,170 Onlar m眉xt蓹lif adlar edirik eyni 艧ey. 245 00:09:25,170 --> 00:09:26,740 Amma P Set D枚rdl眉 ki, g枚r眉rs眉n眉z. 246 00:09:26,740 --> 00:09:31,450 >> Amma bu dem蓹k deyil ki, bir insan 蓹g蓹r b蓹zi BMP fayl谋 c眉t klik onun 247 00:09:31,450 --> 00:09:35,015 v蓹 ya onun sabit, v蓹 bir p蓹nc蓹r蓹 a莽谋l谋r ona ki, image g枚st蓹r蓹n up, 248 00:09:35,015 --> 00:09:38,500 ki, 蓹m蓹liyyat, 莽眉nki ba艧 Sistem ehtimalla yaln谋z f蓹rq 249 00:09:38,500 --> 00:09:41,460 Bu BMP fayl uzant谋s谋 fayl ad谋, 250 00:09:41,460 --> 00:09:45,010 h蓹m d蓹 fakt var ki, b蓹zi bit model konvensiya 251 00:09:45,010 --> 00:09:47,490 莽ox ba艧谋nda ki, bitmap fayl. 252 00:09:47,490 --> 00:09:50,270 >> Amma indi diqq蓹t ed蓹k Bel蓹 bir m眉r蓹kk蓹b fayl, 253 00:09:50,270 --> 00:09:52,120 lakin 蓹v蓹zin蓹 bu kimi bir 艧ey. 254 00:09:52,120 --> 00:09:55,190 M蓹n gedit burada d眉艧眉n蓹k yaln谋z 蓹vv蓹lin蓹 var 255 00:09:55,190 --> 00:09:57,070 olduqca sad蓹 bir proqram. 256 00:09:57,070 --> 00:09:58,860 M蓹n b蓹zi 眉st daxildir var. 257 00:09:58,860 --> 00:10:02,120 陌ndi m蓹n var #include "structs.h", lakin M蓹n bir anda geri g蓹lm蓹k laz谋md谋r. 258 00:10:02,120 --> 00:10:03,974 Amma indi bu faydal谋d谋r. 259 00:10:03,974 --> 00:10:05,890 Bel蓹 ki, bu proqram ki, h蓹yata olacaq 260 00:10:05,890 --> 00:10:07,335 , qeydiyyat莽谋n谋n bazas谋 kimi. 261 00:10:07,335 --> 00:10:09,710 Bel蓹 ki, t蓹l蓹b蓹 bir veril蓹nl蓹r bazas谋, v蓹 d眉nyan谋n h蓹r t蓹l蓹b蓹 262 00:10:09,710 --> 00:10:13,190 y蓹qin ki, bir ad v蓹 bir ev var v蓹 dig蓹r m蓹hsullar谋, lakin biz sad蓹 saxlamaq laz谋md谋r. 263 00:10:13,190 --> 00:10:15,140 H蓹r t蓹l蓹b蓹 bir ad v蓹 bir ev var. 264 00:10:15,140 --> 00:10:17,700 >> M蓹n yazmaq ist蓹yirdi 蓹g蓹r Bel蓹 ki, kimin m蓹qs蓹di h蓹yat proqram谋 265 00:10:17,700 --> 00:10:19,860 yaln谋z t蓹krarlamaq oldu 眉莽 q蓹d蓹r s谋f谋r, 266 00:10:19,860 --> 00:10:22,070 眉莽 t蓹l蓹b蓹 蓹g蓹r Harvard Universiteti. 267 00:10:22,070 --> 00:10:25,350 M蓹n yaln谋z GetString istifad蓹 ed蓹r蓹k, almaq ist蓹yir蓹m, h蓹r bir t蓹l蓹b蓹 ad谋 v蓹 ev, 268 00:10:25,350 --> 00:10:26,600 v蓹 sonra yaln谋z 莽ap. 269 00:10:26,600 --> 00:10:28,630 >> Bu sort h蓹ft蓹si kimi One, h蓹ft蓹 iki stuff indi, 270 00:10:28,630 --> 00:10:30,810 M蓹n yaln谋z bir ist蓹diyiniz loop v蓹 ya kimi bir 艧ey. 271 00:10:30,810 --> 00:10:34,500 M蓹n GetString bir ne莽蓹 z蓹ng etm蓹k ist蓹yir蓹m d蓹f蓹, v蓹 sonra bir ne莽蓹 d蓹f蓹 f 莽ap. 272 00:10:34,500 --> 00:10:37,340 M蓹n baxmayaraq ki, bunu nec蓹, bir ad谋 v蓹 bir ev h蓹m 273 00:10:37,340 --> 00:10:39,070 H蓹r bir t蓹l蓹b蓹 眉莽眉n c蓹lb olunur? 274 00:10:39,070 --> 00:10:42,830 >> Bel蓹 ki, m蓹nim ilk instinkt bil蓹r bu kimi bir 艧ey ola bil蓹r. 275 00:10:42,830 --> 00:10:49,620 M蓹n ilk d蓹 m蓹n蓹 ver, dem蓹k olar ki, , adlar谋 strings bir s谋ra deyirl蓹r. 276 00:10:49,620 --> 00:10:51,530 M蓹n bir Hardcode 眉莽 burada ist蓹mir蓹m. 277 00:10:51,530 --> 00:10:53,064 M蓹n orada qoymaq ist蓹yirsiniz? 278 00:10:53,064 --> 00:10:55,730 Yaln谋z 莽眉nki, STUDENTS bel蓹 眉st elan daimi, 279 00:10:55,730 --> 00:10:57,860 M蓹n hardcode yoxdur, yaln谋z bel蓹 莽ox yerl蓹rd蓹 眉莽. 280 00:10:57,860 --> 00:11:00,859 Bu yolla, I, bir yerini d蓹yi艧蓹 bil蓹rsiniz v蓹 h蓹r yerd蓹 bir d蓹yi艧iklik t蓹sir g枚st蓹rir. 281 00:11:00,859 --> 00:11:04,470 V蓹 sonra, m蓹n n蓹 ed蓹 bil蓹r string T茝L茝B茝L茝R陌 yerl蓹艧ir. 282 00:11:04,470 --> 00:11:10,250 >> V蓹 indi m蓹n kimi bir 艧ey ola bil蓹r i 艦AG陌RDL茝R陌N茝 <; (i = 0 int i ++. 283 00:11:10,250 --> 00:11:14,390 M蓹n s眉r蓹tli yazaraq al谋ram, lakin bu 陌ndi y蓹qin ki, tan谋艧 syntax. 284 00:11:14,390 --> 00:11:17,030 >> V蓹 indi, bu daha son idi. 285 00:11:17,030 --> 00:11:22,890 M蓹n i-ci qoymaq ist蓹yirsinizs蓹 t蓹l蓹b蓹 ad谋, m蓹n bunu edir蓹m. 286 00:11:22,890 --> 00:11:26,480 V蓹 sonra, adlar谋 amma evl蓹r i bracket. 287 00:11:26,480 --> 00:11:29,930 M蓹n bu GetString v蓹 imkan m蓹ni geri getm蓹k v蓹 bu x蓹tti d眉zeltmek. 288 00:11:29,930 --> 00:11:30,430 Raz谋yam? 289 00:11:30,430 --> 00:11:31,200 Raz谋 deyil蓹m? 290 00:11:31,200 --> 00:11:32,366 Bu, 莽ox istifad蓹莽i dostu deyil. 291 00:11:32,366 --> 00:11:33,890 M蓹n n蓹 istifad蓹莽i s枚yl蓹di. 292 00:11:33,890 --> 00:11:36,520 >> Amma indi, m蓹n 蓹g蓹r d蓹 sonra, ed蓹k ist蓹di 293 00:11:36,520 --> 00:11:40,060 dem蓹k, bu 艧eyi 莽ap yazaraq bel蓹 TODO sonra. 294 00:11:40,060 --> 00:11:42,330 M蓹n daha gedir蓹m m眉zakir蓹siz bu H蓹l蓹 295 00:11:42,330 --> 00:11:45,970 do臒ru bir t蓹tbiq adlar谋 v蓹 ev, 眉莽 almaq 296 00:11:45,970 --> 00:11:48,870 bir istifad蓹莽i h蓹r onlar谋n 眉mumi. 297 00:11:48,870 --> 00:11:51,280 >> Amma bu 莽ox yax艧谋 dizayn do臒ru deyil? 298 00:11:51,280 --> 00:11:55,220 N蓹 t蓹l蓹b蓹 yaln谋z bir ad谋 var 蓹g蓹r v蓹 ev, h蓹m d蓹 艧蓹xsiyy蓹t n枚mr蓹si, 299 00:11:55,220 --> 00:11:57,770 v蓹 bir telefon n枚mr蓹si, v蓹 bir e-po莽t 眉nvan谋, 300 00:11:57,770 --> 00:12:00,280 v蓹 b蓹lk蓹 bir ev s蓹hif蓹 v蓹 b蓹lk蓹 bir Twitter sap谋, 301 00:12:00,280 --> 00:12:03,730 v蓹 dig蓹r m蓹lumat h蓹r hans谋 bir say谋 Bir t蓹l蓹b蓹 v蓹 ya bir 艧蓹xs il蓹 ba臒l谋, 302 00:12:03,730 --> 00:12:04,610 眉mumiyy蓹tl蓹. 303 00:12:04,610 --> 00:12:07,720 Biz 蓹lav蓹 ba艧lamaq olard谋 nec蓹 Bu proqram funksionall谋臒谋? 304 00:12:07,720 --> 00:12:14,080 >> B蓹li, m蓹n bil蓹r sad蓹 yolu kimi hiss , kimi bir 艧ey dem蓹k imkan ola, 305 00:12:14,080 --> 00:12:16,490 kimlikleri T茝L茝B茝L茝R陌 int. 306 00:12:16,490 --> 00:12:18,380 M蓹n orada b眉t眉n kimlikleri bil蓹r. 307 00:12:18,380 --> 00:12:22,240 V蓹 sonra, bir 艧ey 眉莽眉n telefon n枚mr蓹l蓹ri kimi, 308 00:12:22,240 --> 00:12:24,400 M蓹n nec蓹 蓹min deyil蓹m yaln谋z h蓹l蓹 ki, t蓹msil edir. 309 00:12:24,400 --> 00:12:30,280 Bel蓹 nin ir蓹li v蓹 yaln谋z z蓹ng gidelim Bu 艦AG陌RDL茝R陌N茝, Twitters olan 310 00:12:30,280 --> 00:12:33,550 bir az q蓹rib蓹, ancaq edir v蓹 sah蓹l蓹ri bir d蓹st蓹 daha 莽ox. 311 00:12:33,550 --> 00:12:36,360 >> M蓹n s蓹m蓹r蓹li ba艧lam谋艧d谋r etdik sur蓹ti v蓹 burada yap谋艧d谋r谋b. 312 00:12:36,360 --> 00:12:39,416 V蓹 bu olduqca artmaqda davam edir olduqca tez y枚nd蓹msiz, sa臒? 313 00:12:39,416 --> 00:12:42,290 Var idi, 蓹g蓹r g枚z蓹l olmazd谋 d眉nyada data strukturu m蓹lum 314 00:12:42,290 --> 00:12:45,600 bir int v蓹 ya bir string, lakin bir 艧ey kimi y眉ks蓹k s蓹viyy蓹li abstraksiya, bel蓹 ki, 315 00:12:45,600 --> 00:12:47,570 Bir t蓹l蓹b蓹 kimi tan谋nan, dan谋艧maq? 316 00:12:47,570 --> 00:12:50,220 C in艧a il蓹 g蓹lm蓹di t蓹l蓹b蓹l蓹r 眉莽眉n funksionall谋臒谋, 317 00:12:50,220 --> 00:12:52,260 amma bu c眉r verm蓹k ist蓹yirdi n蓹? 318 00:12:52,260 --> 00:12:55,640 >> B蓹li, m蓹n gedir蓹m 莽谋x谋r , structs.h burada adl谋 bir fayl a莽maq 319 00:12:55,640 --> 00:12:57,090 v蓹 m蓹hz bunu ed蓹 bil蓹rsiniz. 320 00:12:57,090 --> 00:12:58,290 V蓹 biz indi bunu ba艧lamaq 眉莽眉n olacaq. 321 00:12:58,290 --> 00:13:01,490 V蓹 P Set 眉莽 ba艧l谋q alt谋nda, 茝g蓹r siz art谋q indi bunu etdik. 322 00:13:01,490 --> 00:13:05,920 Bir g rect kimi bir 艧ey yoxdur v蓹 ya proqramla艧d谋rma dili C. bir g oval 323 00:13:05,920 --> 00:13:10,570 >> Stanford Folks o h蓹yata Burada bu yana艧ma istifad蓹 ed蓹r蓹k, data n枚vl蓹ri, 324 00:13:10,570 --> 00:13:13,900 枚z yeni m蓹lumatlar elan yeni bir s枚z istifad蓹 ed蓹r蓹k n枚vl蓹ri 325 00:13:13,900 --> 00:13:16,744 adl谋 struct v蓹 dig蓹r bir adl谋 typedef. 326 00:13:16,744 --> 00:13:19,660 V蓹 h蓹qiq蓹t蓹n, baxmayaraq syntax m蓹hsullar谋 bir az f蓹rqli g枚r眉n眉r 327 00:13:19,660 --> 00:13:23,550 biz 蓹vv蓹l g枚rd眉m prinsipi, bu super sad蓹. 328 00:13:23,550 --> 00:13:25,297 >> Bu yaln谋z "bir n枚v眉 m眉蓹yy蓹n" dem蓹kdir. 329 00:13:25,297 --> 00:13:27,255 Ki, bir olacaq strukturu v蓹 qurulu艧u 330 00:13:27,255 --> 00:13:29,400 yaln谋z bir konteyner kimi 脟ox 艧eyl蓹r 眉莽眉n. 331 00:13:29,400 --> 00:13:31,780 V蓹 strukturu gedir ad谋n谋 bir simli var, 332 00:13:31,780 --> 00:13:33,210 v蓹 simli ev 莽a臒谋r谋b. 333 00:13:33,210 --> 00:13:37,520 V蓹 yaln谋z rahatl谋臒谋 眉莽眉n, z蓹ng ed蓹k, B眉t眉n bu data structure t蓹l蓹b蓹. 334 00:13:37,520 --> 00:13:40,320 >> Bel蓹 ki, an almaq n枚qt蓹li verg眉l, indi var 335 00:13:40,320 --> 00:13:43,280 脰z yarad谋lan m蓹lumatlar adlan谋r t蓹l蓹b蓹 336 00:13:43,280 --> 00:13:46,420 ki, indi, int yana艧谋 durur v蓹 float v蓹 char, v蓹 simli, 337 00:13:46,420 --> 00:13:50,270 v蓹 g rect v蓹 g oval, v蓹 h蓹r hans谋 bir say谋 dig蓹r 艧eyl蓹r insanlar icad. 338 00:13:50,270 --> 00:13:53,340 >> Bel蓹 ki, bu bar蓹d蓹 faydal谋 n蓹 indi geri getm蓹k 蓹g蓹r ki, 339 00:13:53,340 --> 00:13:57,430 0 struct v蓹 bu ba艧a M蓹n yazd谋臒谋 h蓹yata ke莽irilm蓹si, 340 00:13:57,430 --> 00:14:02,080 Burada 蓹vv蓹lc蓹d蓹n, b眉t眉n fark qa莽谋n谋lmaz messiness ki 341 00:14:02,080 --> 00:14:05,490 M蓹n 蓹lav蓹 kimi ba艧 ba艧lamaq haqq谋nda idi telefon n枚mr蓹l蓹ri v蓹 Twitters v蓹 b眉t眉n 342 00:14:05,490 --> 00:14:07,370 bu ba艧qa 艧eyl蓹r Bir 艧agirdin m眉蓹yy蓹n, 343 00:14:07,370 --> 00:14:11,810 indi m眉f蓹ss蓹l 艧蓹kild蓹 b眉k眉lm眉艧 t蓹l蓹b蓹 yaln谋z bir s谋ra kimi. 344 00:14:11,810 --> 00:14:15,500 >> V蓹 bu t蓹l蓹b蓹l蓹rin h蓹r indi Bunun i莽蓹risind蓹 莽ox 艧eyl蓹r var. 345 00:14:15,500 --> 00:14:16,930 Bel蓹 ki, yaln谋z bir sual yarad谋r. 346 00:14:16,930 --> 00:14:19,700 Nec蓹 ad谋 almaq, v蓹 ev v蓹 ID, 347 00:14:19,700 --> 00:14:21,640 v蓹 ba艧qa h蓹r hans谋 t蓹l蓹b蓹 i莽蓹rid蓹? 348 00:14:21,640 --> 00:14:22,930 Super sad蓹, h蓹m莽inin. 349 00:14:22,930 --> 00:14:25,730 Yeni sintaksis, lakin sad蓹 fikir. 350 00:14:25,730 --> 00:14:29,239 >> Bu array daxil Sadece index, Ke莽蓹n h蓹ft蓹 bu kimi. 351 00:14:29,239 --> 00:14:31,030 V蓹 n蓹 ayd谋n deyil sintaksis yeni bir par莽a? 352 00:14:31,030 --> 00:14:32,590 353 00:14:32,590 --> 00:14:35,880 Just., Dem蓹kdir "daxili getm蓹k strukturu v蓹 sah蓹sind蓹 莽a臒谋rd谋 354 00:14:35,880 --> 00:14:39,030 ad谋, ev adl谋 sah蓹sind蓹 almaq t蓹l蓹b蓹 adl谋 sah蓹sind蓹 almaq. " 355 00:14:39,030 --> 00:14:41,940 >> Bel蓹 ki, P Set 脺莽, siz 蓹g蓹r h蓹l蓹 ki, i艧, 356 00:14:41,940 --> 00:14:44,020 h蓹l蓹 蓹n insanlar , sizin kimi ki, h蓹yata olunur 357 00:14:44,020 --> 00:14:46,130 kimi 艧eyl蓹r istifad蓹 ed蓹r蓹k ba艧lamaq g rects v蓹 g ovals 358 00:14:46,130 --> 00:14:50,201 v蓹 ba艧qa 艧eyl蓹r 眉莽眉n g枚r眉nm眉yor ki, H蓹ft蓹 Zero, One, v蓹 ya iki g蓹l蓹n, 359 00:14:50,201 --> 00:14:52,950 ki, Stanford, 莽眉nki ki, h蓹yata b蓹zi yeni m蓹lumat n枚vl蓹ri elan etdi. 360 00:14:52,950 --> 00:14:56,160 >> And olsun ki, m蓹hz n蓹 biz will P Set d枚rd, el蓹c蓹 d蓹, n蓹 zaman 361 00:14:56,160 --> 00:14:59,880 biz h蓹r 艧eyi il蓹 m蓹艧臒ul ba艧lamaq 艧蓹kill蓹r, bitmaps, v蓹 daha 莽ox kimi. 362 00:14:59,880 --> 00:15:02,882 Bel蓹 ki, yaln谋z bir iltifat v蓹 var g蓹lm蓹k n蓹 眉莽眉n 蓹qli model. 363 00:15:02,882 --> 00:15:04,590 陌ndi m蓹n procrastinated bir az bu s蓹h蓹r. 364 00:15:04,590 --> 00:15:09,560 M蓹n n蓹 g枚rm蓹k c眉r maraql谋 idi Microsoft divar ka臒谋z谋 h蓹qiq蓹t蓹n 365 00:15:09,560 --> 00:15:10,310 g眉n kimi g枚r眉n眉r. 366 00:15:10,310 --> 00:15:15,200 V蓹 2006-c谋 ild蓹 kims蓹 莽谋x谋r h蓹qiq蓹t蓹n dem蓹k olar ki, d蓹qiq getdi 367 00:15:15,200 --> 00:15:19,210 eyni spot 蓹slind蓹 foto艧蓹kil n蓹 bu g眉n kimi g枚r眉n眉r. 368 00:15:19,210 --> 00:15:21,380 Bu sah蓹d蓹 indi bir az basmaq deyil. 369 00:15:21,380 --> 00:15:24,850 >> Bel蓹 ki, images indi dan谋艧an, Burada Daven geri g蓹tirm蓹k imkan 370 00:15:24,850 --> 00:15:26,890 ekran v蓹 Nicholas, v蓹 yaln谋z siz蓹 xat谋rlatmaq 371 00:15:26,890 --> 00:15:30,540 ki, nahar 眉莽眉n biz蓹 qo艧ulmaq ist蓹yirsinizs蓹 adi URL bu c眉m蓹, ba艧 372 00:15:30,540 --> 00:15:31,440 burada. 373 00:15:31,440 --> 00:15:33,530 >> Bel蓹likl蓹, biz bazar ert蓹si off t蓹rk etdiniz? 374 00:15:33,530 --> 00:15:35,140 Biz, bu problemin t蓹qdim? 375 00:15:35,140 --> 00:15:37,610 Bu zahir蓹n do臒ru idi svop h蓹yata ke莽irilm蓹si, 376 00:15:37,610 --> 00:15:40,460 vasit蓹si, iki ints alaraq bir, b adl谋 bir, deyil蓹n 377 00:15:40,460 --> 00:15:44,130 Laura burada etdiyiniz kimi, onlar谋 d蓹yi艧dirm蓹k s眉d v蓹 su il蓹 s蓹hn蓹d蓹, 378 00:15:44,130 --> 00:15:46,820 m眉v蓹qq蓹ti istifad蓹 ed蓹r蓹k d蓹yi艧蓹n v蓹 ya bo艧 fincan, 379 00:15:46,820 --> 00:15:50,540 bir v蓹 in-ci ild蓹 b qoymaq bil蓹r ki, h蓹r 艧eyi bir mess etm蓹d蓹n b. 380 00:15:50,540 --> 00:15:51,560 Biz d蓹yi艧蓹n istifad蓹. 381 00:15:51,560 --> 00:15:52,870 Bu temp deyirl蓹r. 382 00:15:52,870 --> 00:15:55,520 >> Amma fundamental n蓹 idi bazar ert蓹si g眉n眉 bu kodu il蓹 problem? 383 00:15:55,520 --> 00:15:57,700 384 00:15:57,700 --> 00:15:58,870 Burada problem n蓹 idi? 385 00:15:58,870 --> 00:16:00,106 386 00:16:00,106 --> 00:16:00,605 B蓹li. 387 00:16:00,605 --> 00:16:01,970 >> Auditoriya: Bu daha 莽ox yer tutur. 388 00:16:01,970 --> 00:16:04,719 >> DAVID J. MALAN: daha Takes space, m蓹n bir d蓹yi艧蓹n kullan谋yorum 莽眉nki, 389 00:16:04,719 --> 00:16:05,400 ki, OK. 390 00:16:05,400 --> 00:16:07,300 Ki, do臒rudur, lakin m蓹n deyil蓹m ki, OK dem蓹k olacaq. 391 00:16:07,300 --> 00:16:10,030 Bu m枚ht蓹艧蓹m yaln谋z 32 bit 艧eyi sxemi, bel蓹 bir b枚y眉k. 392 00:16:10,030 --> 00:16:10,655 Dig蓹r fikir? 393 00:16:10,655 --> 00:16:12,572 Auditoriya: Bu, yaln谋z svoplar谋 yerli d蓹yi艧蓹nl蓹r. 394 00:16:12,572 --> 00:16:13,571 DAVID J. MALAN: Exactly. 395 00:16:13,571 --> 00:16:15,090 Bu, yaln谋z yerli d蓹yi艧蓹nl蓹rin svoplar谋. 396 00:16:15,090 --> 00:16:18,173 He莽 bir zaman bir funksiyas谋 z蓹ng 脟眉nki M蓹n Annenberg olan qablar idi 397 00:16:18,173 --> 00:16:19,840 son d蓹f蓹, siz alt谋ndak谋 蓹sas var. 398 00:16:19,840 --> 00:16:23,560 Kimi tezlikl蓹 adl谋 bir funksiyas谋 z蓹ng kimi svop, svop x v蓹 y almaq deyil, 399 00:16:23,560 --> 00:16:24,400 orijinal d蓹y蓹rl蓹r. 400 00:16:24,400 --> 00:16:26,392 Biz n蓹 iddia etdi, swap almaq edir? 401 00:16:26,392 --> 00:16:27,100 Auditoriya: N眉sx蓹l蓹r. 402 00:16:27,100 --> 00:16:28,090 DAVID J. MALAN: onlar谋n sur蓹tl蓹rini Bel蓹. 403 00:16:28,090 --> 00:16:31,120 Bel蓹 ki, 蓹g蓹r, bir v蓹 iki olur son d蓹f蓹 n眉mun蓹 geri, 404 00:16:31,120 --> 00:16:34,730 lakin bir v蓹 iki sur蓹ti u臒urla d蓹yi艧dirildikd蓹. 405 00:16:34,730 --> 00:16:38,550 Amma t蓹蓹ss眉f ki, sonunda, h蓹min d蓹y蓹rl蓹ri h蓹l蓹 d蓹 eynidir. 406 00:16:38,550 --> 00:16:41,880 Bel蓹likl蓹, biz bu ed蓹 bil蓹rsiniz bizim yeni dost, in艧allah gdb, 407 00:16:41,880 --> 00:16:45,180 Siz v蓹 ya TFS v蓹 Ca nin var a艧a臒谋dak谋 kimi do臒ru r蓹hb蓹r edilmi艧dir. 408 00:16:45,180 --> 00:16:51,210 >> Bel蓹 ki, he莽 swap geri ed蓹k q蓹d蓹rdir g枚r眉n眉r ox艧ar H蓹l蓹 g枚r眉n眉r a莽maq. 409 00:16:51,210 --> 00:16:54,160 Biz iki, bir y x ba艧lat谋lm谋艧. 410 00:16:54,160 --> 00:16:55,620 脟ap f-nin bir d蓹st蓹 idi. 411 00:16:55,620 --> 00:16:58,080 Amma sonra, 蓹sas z蓹ng edin burada d蓹yi艧dirm蓹k 眉莽眉n olan 412 00:16:58,080 --> 00:17:00,260 tam code biz yaln谋z bir an 蓹vv蓹l g枚rd眉m. 413 00:17:00,260 --> 00:17:03,180 Hans谋 ilk do臒ru n蓹z蓹r, lakin funksional, 414 00:17:03,180 --> 00:17:06,800 Bu proqram, 莽眉nki i艧 deyil daimi x v蓹 y d蓹yi艧dirm蓹k deyil. 415 00:17:06,800 --> 00:17:10,190 >> Bel蓹 ki, tez isti bu g枚r蓹k Burada gdb, bir ./noswap il蓹. 416 00:17:10,190 --> 00:17:11,867 417 00:17:11,867 --> 00:17:15,200 B枚y眉k informasiya bir d蓹st蓹 ki, M蓹n indi Control L qurtarmaq laz谋md谋r. 418 00:17:15,200 --> 00:17:17,516 V蓹 indi m蓹n gedir蓹m ir蓹li getm蓹k v蓹 bu run. 419 00:17:17,516 --> 00:17:19,349 V蓹 t蓹蓹ss眉f ki, ki, faydal谋 deyil. 420 00:17:19,349 --> 00:17:22,355 Bu daxili proqram qa莽d谋 proqram, gdb, ay谋klama adl谋 421 00:17:22,355 --> 00:17:23,730 lakin m蓹n蓹 蓹traf谋nda soxmaq imkan verm蓹di. 422 00:17:23,730 --> 00:17:26,229 >> M蓹n, h蓹qiq蓹t蓹n, fasil蓹 bil蓹r nec蓹 Bu proqram daxilind蓹 icra? 423 00:17:26,229 --> 00:17:27,410 424 00:17:27,410 --> 00:17:28,329 Bel蓹 ki, q谋rmaq. 425 00:17:28,329 --> 00:17:32,340 M蓹n h蓹r hans谋 q谋ra bil蓹r line say谋 bir, 10, 15. 426 00:17:32,340 --> 00:17:35,530 Amma m蓹n d蓹 simvolik q谋ra bil蓹r break 蓹sl dey蓹r蓹k. 427 00:17:35,530 --> 00:17:38,980 Ki, bir fasil蓹 m眉蓹yy蓹n olacaq point, y蓹qin 蓹sas x蓹tt 16. 428 00:17:38,980 --> 00:17:40,050 V蓹 line 16? 429 00:17:40,050 --> 00:17:42,960 Nin kodu ged蓹k v蓹 noswap q蓹d蓹r getm蓹k. 430 00:17:42,960 --> 00:17:46,930 V蓹 h蓹qiq蓹t蓹n, line 16 edir 莽ox ilk proqram. 431 00:17:46,930 --> 00:17:52,130 >> Bel蓹 ki, indi, M蓹n ir蓹li getm蓹k v蓹 n枚v眉 bu d蓹f蓹 run daxil edin, bu durduruldu. 432 00:17:52,130 --> 00:17:53,080 Bel蓹 ki, 蓹traf谋nda soxmaq ed蓹k. 433 00:17:53,080 --> 00:17:55,716 Niy蓹 x s谋f谋r x-- 莽ap? 434 00:17:55,716 --> 00:17:56,705 435 00:17:56,705 --> 00:17:57,830 V蓹 dollar i艧ar蓹si ignore. 436 00:17:57,830 --> 00:17:59,725 Ki merakl谋s谋 眉莽眉n yaln谋z var Proqram谋n istifad蓹. 437 00:17:59,725 --> 00:18:00,780 438 00:18:00,780 --> 00:18:03,140 Niy蓹 bu anda x s谋f谋r? 439 00:18:03,140 --> 00:18:03,640 B蓹li. 440 00:18:03,640 --> 00:18:07,061 >> Auditoriya: Bu 蓹vv蓹l sa臒 durdurulmu艧 line 16, h蓹qiq蓹t蓹n line 16. 441 00:18:07,061 --> 00:18:08,060 DAVID J. MALAN: Exactly. 442 00:18:08,060 --> 00:18:11,630 Gdb, ismar谋clar谋, durdurulmu艧 etmi艧dir yaln谋z line 16 蓹vv蓹l icra. 443 00:18:11,630 --> 00:18:14,820 Bel蓹 ki, icra ed蓹n B蓹zi unknown d蓹y蓹r x dem蓹kdir. 444 00:18:14,820 --> 00:18:17,150 V蓹 biz bu u臒urlu var s谋f谋r kimi t蓹miz bir 艧ey. 445 00:18:17,150 --> 00:18:20,310 Bel蓹 ki, indi m蓹n n枚vb蓹ti yaz谋n 蓹g蓹r, indi 16 icra. 446 00:18:20,310 --> 00:18:22,000 M蓹n蓹 17 icra etm蓹k 眉莽眉n g枚zl蓹yir. 447 00:18:22,000 --> 00:18:23,400 M蓹n蓹 davam v蓹 莽ap x ged蓹k. 448 00:18:23,400 --> 00:18:24,094 Bu biri. 449 00:18:24,094 --> 00:18:25,260 M蓹n蓹 davam v蓹 莽ap y ged蓹k. 450 00:18:25,260 --> 00:18:26,176 陌ndi m蓹n n蓹 g枚r眉rs眉n眉z? 451 00:18:26,176 --> 00:18:27,660 452 00:18:27,660 --> 00:18:28,560 >> Auditoriya: [i艧itilemez] 453 00:18:28,560 --> 00:18:29,165 >> DAVID J. MALAN: Bir az louder. 454 00:18:29,165 --> 00:18:30,040 >> Auditoriya: [i艧itilemez] 455 00:18:30,040 --> 00:18:30,537 456 00:18:30,537 --> 00:18:32,120 DAVID J. MALAN: Not olduqca konsensus. 457 00:18:32,120 --> 00:18:34,760 Bel蓹 ki, b蓹li, biz b蓹zi zibil d蓹y蓹r bax. 458 00:18:34,760 --> 00:18:37,862 陌ndi y yoxdur 134514064 edir. 459 00:18:37,862 --> 00:18:39,320 B蓹li, yaln谋z b蓹zi zibil d蓹y蓹ri. 460 00:18:39,320 --> 00:18:41,350 M蓹nim proqram RAM istifad蓹 edir m眉xt蓹lif m蓹qs蓹dl蓹r 眉莽眉n. 461 00:18:41,350 --> 00:18:42,350 Dig蓹r funksiyalar谋 var. 462 00:18:42,350 --> 00:18:44,040 Dig蓹r insanlar m蓹nim komp眉ter daxilind蓹 yazd谋. 463 00:18:44,040 --> 00:18:46,789 Bel蓹 ki, h蓹min bit 眉莽眉n istifad蓹 edilmi艧dir dig蓹r d蓹y蓹rl蓹ri, v蓹 m蓹n n蓹 g枚r眉yorum 464 00:18:46,789 --> 00:18:49,470 b蓹zi qal谋qlar谋 edir ki, yadda艧 蓹vv蓹l istifad蓹. 465 00:18:49,470 --> 00:18:53,350 >> Bel蓹 ki, he莽 bir b枚y眉k, 莽眉nki tezlikl蓹 M蓹n n枚vb蓹ti yaz谋n v蓹 sonra y 莽ap kimi, 466 00:18:53,350 --> 00:18:55,640 Bu ba艧lat谋lm谋艧 M蓹n ist蓹yir蓹m ki, d蓹y蓹ri. 467 00:18:55,640 --> 00:18:57,400 Bel蓹 ki, indi bir az daha s眉r蓹tli davam ed蓹k. 468 00:18:57,400 --> 00:18:58,540 N枚vb蓹ti N. 469 00:18:58,540 --> 00:18:59,570 Yen蓹 bunu ed蓹k. 470 00:18:59,570 --> 00:19:00,530 Yen蓹 bunu ed蓹k. 471 00:19:00,530 --> 00:19:02,404 Amma hit ist蓹mir蓹m burada, 莽眉nki m蓹n 蓹g蓹r 472 00:19:02,404 --> 00:19:05,110 daxili neler g枚rm蓹k ist蓹yir蓹m svop, komanda n蓹 var? 473 00:19:05,110 --> 00:19:05,520 >> Auditoriya: add谋mlar. 474 00:19:05,520 --> 00:19:06,436 >> DAVID J. MALAN: add谋mlar. 475 00:19:06,436 --> 00:19:09,800 Bel蓹 ki, bu m蓹ni add谋mlar deyil, art谋q 莽ox funksiyas谋. 476 00:19:09,800 --> 00:19:12,270 陌ndi, bir az sirli vicdanla, lakin bu yaln谋z 477 00:19:12,270 --> 00:19:14,581 M蓹n indi line 33 oldum m蓹n蓹. 478 00:19:14,581 --> 00:19:15,580 V蓹 yen蓹 bunu bildirin. 479 00:19:15,580 --> 00:19:16,080 Print temp. 480 00:19:16,080 --> 00:19:17,129 481 00:19:17,129 --> 00:19:20,170 Zibil d蓹y蓹ri, m蓹nfi bu d蓹f蓹, lakin yaln谋z h蓹l蓹 bir zibil d蓹y蓹ri. 482 00:19:20,170 --> 00:19:22,810 Bel蓹 ki, n枚vb蓹ti, 莽ap temp ed蓹k. 483 00:19:22,810 --> 00:19:27,130 Bu, 1 ba艧lat谋lm谋艧 olan bir aka x d蓹y蓹ri idi. 484 00:19:27,130 --> 00:19:29,110 >> 陌ndi bizim bir v蓹 g蓹l蓹n x? 485 00:19:29,110 --> 00:19:32,510 Yax艧谋, biz 蓹sas bildiri艧 bu d蓹y蓹rl蓹r x v蓹 y 莽a臒谋r谋b. 486 00:19:32,510 --> 00:19:34,740 Biz a艧a臒谋dak谋 kimi onlara d蓹yi艧dirm蓹k ke莽di. 487 00:19:34,740 --> 00:19:37,010 X verg眉l y, ilk g蓹ldi. 488 00:19:37,010 --> 00:19:40,020 V蓹 sonra, svop onlara x v蓹 y z蓹ng ed蓹 bil蓹r. 489 00:19:40,020 --> 00:19:42,630 Lakin ayd谋nl谋q 眉莽眉n, bu bir v蓹 b onlara z蓹ng. 490 00:19:42,630 --> 00:19:45,970 Amma v蓹 b indi olacaq m眉vafiq olaraq x v蓹 y, sur蓹ti. 491 00:19:45,970 --> 00:19:50,660 >> M蓹n temp geri gdb getm蓹k 蓹g蓹r Bel蓹 ki, indi bir v蓹 indi biridir. 492 00:19:50,660 --> 00:19:56,130 M蓹n indi n枚vb蓹ti n蓹 v蓹 蓹g蓹r 莽ap etm蓹k a, bir art谋q k枚莽眉r眉l眉b. 493 00:19:56,130 --> 00:20:00,030 S眉d ke莽mi艧 t枚k眉l眉r edilmi艧dir porta臒al 艧ir蓹si 艧眉艧蓹, v蓹 ya 蓹ksin蓹. 494 00:20:00,030 --> 00:20:04,750 >> V蓹 m蓹n indi daha sonrak谋, v蓹 蓹g蓹r M蓹n bir a臒l谋 ba艧谋nda olma 莽ek kimi 莽ap 蓹g蓹r, 495 00:20:04,750 --> 00:20:07,687 h蓹l蓹 iki, lakin b indi biridir. 496 00:20:07,687 --> 00:20:08,770 A莽谋臒谋, h蓹l蓹 var. 497 00:20:08,770 --> 00:20:10,670 M蓹n n蓹 temp qay臒谋 yoxdur. 498 00:20:10,670 --> 00:20:16,850 Amma tezlikl蓹 m蓹n indi yaz谋n kimi, dey蓹k indi sonunda edir蓹m, geri getm蓹k davam 499 00:20:16,850 --> 00:20:17,480 proqram. 500 00:20:17,480 --> 00:20:20,730 V蓹 t蓹蓹ss眉f ki, x h蓹l蓹 bir v蓹 y h蓹l蓹 iki. 501 00:20:20,730 --> 00:20:22,272 >> Bel蓹 ki, orada gdb kommunal n蓹 idi? 502 00:20:22,272 --> 00:20:23,980 Bu, m蓹nim d眉zeltmek k枚m蓹k etm蓹di Bu problem 枚zl眉y眉nd蓹, 503 00:20:23,980 --> 00:20:26,265 lakin o, 眉mid m蓹n蓹 k枚m蓹k h蓹yata t蓹r蓹find蓹n ba艧a 504 00:20:26,265 --> 00:20:30,000 ki, b蓹li, m蓹nim m蓹ntiq do臒ru, lakin M蓹nim kodu n蓹tic蓹d蓹 olan deyil 505 00:20:30,000 --> 00:20:31,450 daimi t蓹sir. 506 00:20:31,450 --> 00:20:34,570 Bel蓹 ki, biz ist蓹yirik problem var 陌ndi bu g眉n h蓹ll etm蓹k niyy蓹tind蓹dir. 507 00:20:34,570 --> 00:20:37,870 >> Amma bu yolu il蓹 almaq imkan verir. 508 00:20:37,870 --> 00:20:39,230 String yaland谋r. 509 00:20:39,230 --> 00:20:41,860 Bu, 莽ox deyil, bir veri n枚v眉 ki, Bu C. var 510 00:20:41,860 --> 00:20:44,750 b蓹zi sinonimi olmu艧dur ba艧qa bir 艧ey 眉莽眉n vaxt, 511 00:20:44,750 --> 00:20:47,300 v蓹 biz a艧a臒谋dak谋 a艧kar ed蓹 bil蓹rsiniz. 512 00:20:47,300 --> 00:20:53,282 >> M蓹n蓹 ir蓹li getm蓹k v蓹 a莽maq ed蓹k bir proqram m眉qayis蓹 0 莽a臒谋r谋b. 513 00:20:53,282 --> 00:20:56,240 V蓹 bu bir n枚v眉 deyil, biz kod vasit蓹sil蓹 g蓹zm蓹k ba艧lamaq laz谋md谋r 514 00:20:56,240 --> 00:20:58,040 M蓹n art谋q yazm谋艧d谋r, lakin Bu yaln谋z bir ne莽蓹 x蓹tl蓹ri var. 515 00:20:58,040 --> 00:20:59,570 Bel蓹 ki, bu m眉qayis蓹 0 olunur. 516 00:20:59,570 --> 00:21:02,380 V蓹 ilk 艧ey edir蓹m m蓹tn x蓹tti olur. 517 00:21:02,380 --> 00:21:05,610 >> Amma m蓹n n蓹 g枚r眉rs眉n眉z ilk d蓹f蓹 edirik. 518 00:21:05,610 --> 00:21:07,910 N蓹 ayd谋n line 21 haqq谋nda m眉xt蓹lif n蓹dir? 519 00:21:07,910 --> 00:21:10,020 520 00:21:10,020 --> 00:21:11,402 茝slind蓹, bir d蓹qiq蓹 g枚zl蓹yin. 521 00:21:11,402 --> 00:21:12,110 Bu sur蓹ti iki. 522 00:21:12,110 --> 00:21:13,568 H蓹tta do臒ru proqram deyil. 523 00:21:13,568 --> 00:21:14,780 B眉t眉n sa臒, spoyler alert. 524 00:21:14,780 --> 00:21:16,890 B眉t眉n h眉quqlar, bel蓹 ki, a臒la he莽. 525 00:21:16,890 --> 00:21:18,520 Ki, g蓹l蓹c蓹k suala cavab var. 526 00:21:18,520 --> 00:21:21,450 >> Burada-0 m眉qayis蓹, v蓹 m蓹n olunur m蓹tn x蓹tti almaq 眉莽眉n. 527 00:21:21,450 --> 00:21:22,435 Proqram 莽ox sad蓹. 528 00:21:22,435 --> 00:21:23,560 Bel蓹 ki, bu sad蓹 deyil. 529 00:21:23,560 --> 00:21:28,070 Bu h蓹ft蓹 biri h蓹ft蓹 iki m蓹hsullar谋 kimi haz谋rda. string s = GetString. 530 00:21:28,070 --> 00:21:29,700 陌ndi m蓹n a艧a臒谋 burada yen蓹 deyir蓹m. 531 00:21:29,700 --> 00:21:31,830 string t = GetString. 532 00:21:31,830 --> 00:21:35,300 Bu, sonra, son 艧ey proqram, onun ad谋 t蓹klif kimi, 533 00:21:35,300 --> 00:21:37,090 M蓹n onlar谋 m眉qayis蓹 etm蓹k 眉莽眉n c蓹hd gedir蓹m olunur. 534 00:21:37,090 --> 00:21:40,709 >> Bel蓹 ki, s varsa, ilk simli, = t, onda m蓹n b蓹rab蓹rdir 535 00:21:40,709 --> 00:21:42,250 Siz eyni 艧ey yaz谋n dem蓹y蓹c蓹k. 536 00:21:42,250 --> 00:21:44,291 Ba艧qa, m蓹n dem蓹k gedir蓹m m眉xt蓹lif 艧eyl蓹r yaz谋n. 537 00:21:44,291 --> 00:21:45,880 Bel蓹 ki, bu proqram谋 t蓹rtib v蓹 run bildirin. 538 00:21:45,880 --> 00:21:48,481 Bel蓹 ki, s谋f谋r m眉qayis蓹 ed蓹. 539 00:21:48,481 --> 00:21:48,980 Yax艧谋 g枚r眉n眉r. 540 00:21:48,980 --> 00:21:50,490 No t蓹rtib s蓹hvl蓹r. 541 00:21:50,490 --> 00:21:52,386 >> M蓹n蓹 indi davam ed蓹k v蓹 ./compare-0 yaz谋n. 542 00:21:52,386 --> 00:21:55,230 543 00:21:55,230 --> 00:21:59,220 M蓹n蓹 ir蓹li getm蓹k v蓹 bir 艧ey dem蓹k qoy : Daven bir 艧ey: Rob. 544 00:21:59,220 --> 00:22:00,450 M蓹n f蓹rqli 艧eyl蓹r yaz谋n. 545 00:22:00,450 --> 00:22:01,250 陌ndiy蓹 q蓹d蓹r bel蓹 yax艧谋. 546 00:22:01,250 --> 00:22:02,680 Proqram d眉zg眉n g枚r眉n眉r. 547 00:22:02,680 --> 00:22:03,880 >> Amma yenid蓹n run bildirin. 548 00:22:03,880 --> 00:22:05,800 Bir 艧ey dem蓹k: Gabe. 549 00:22:05,800 --> 00:22:07,140 Bir 艧ey dem蓹k: Gabe. 550 00:22:07,140 --> 00:22:08,520 551 00:22:08,520 --> 00:22:09,020 B眉t眉n h眉quqlar. 552 00:22:09,020 --> 00:22:10,851 B蓹lk蓹 space bar hit v蓹 ya funky bir 艧ey. 553 00:22:10,851 --> 00:22:11,600 Yen蓹 bunu ed蓹k. 554 00:22:11,600 --> 00:22:13,020 Zamyla bel蓹. 555 00:22:13,020 --> 00:22:13,970 556 00:22:13,970 --> 00:22:14,470 Zamyla. 557 00:22:14,470 --> 00:22:15,740 558 00:22:15,740 --> 00:22:17,330 F蓹rqli 艧eyl蓹r. 559 00:22:17,330 --> 00:22:19,430 Bel蓹 ki, n蓹 gedir? 560 00:22:19,430 --> 00:22:23,200 >> Bel蓹likl蓹, biz bu iki x蓹tl蓹ri var kodu, GetString iki d蓹f蓹 莽a臒谋r谋lan. 561 00:22:23,200 --> 00:22:25,760 V蓹 sonra, m蓹n sad蓹c蓹 deyil蓹m s v蓹 t m眉qayis蓹 眉莽眉n 莽al谋艧谋r谋q. 562 00:22:25,760 --> 00:22:28,370 Lakin gedir sonra, h蓹qiq蓹t蓹n, n蓹? 563 00:22:28,370 --> 00:22:31,180 Yax艧谋, m蓹nim yaz谋 bar蓹d蓹 q蓹d蓹r bu n眉mun蓹 q蓹ssab. 564 00:22:31,180 --> 00:22:34,630 V蓹 h蓹qiq蓹t蓹n atmaq imkan Bu q蓹d蓹r burada, h蓹m莽inin. 565 00:22:34,630 --> 00:22:37,390 566 00:22:37,390 --> 00:22:45,712 >> Bel蓹likl蓹, biz bir x蓹tt kimi var string s = GetString. 567 00:22:45,712 --> 00:22:48,295 Bel蓹 ki, sad蓹c蓹 ilk var proqram maraql谋 line. 568 00:22:48,295 --> 00:22:49,920 569 00:22:49,920 --> 00:22:52,974 Lakin b眉t眉n bu zaman olmu艧dur n蓹 ba艧l谋q alt谋nda gedir? 570 00:22:52,974 --> 00:22:55,890 Yax艧谋, sol t蓹r蓹fd蓹n yan simli, olan d蓹yi艧蓹n bir n枚v眉, 571 00:22:55,890 --> 00:22:56,785 v蓹 s deyirl蓹r. 572 00:22:56,785 --> 00:23:00,019 M蓹n bu yadda艧 istifad蓹 bilirik ki, v蓹 ya RAM, el蓹 m蓹nim komp眉ter. 573 00:23:00,019 --> 00:23:02,060 M蓹n m眉c蓹rr蓹d gedir蓹m bir kvadrat kimi 莽蓹km蓹k. 574 00:23:02,060 --> 00:23:04,820 32 bit, bu 莽谋x谋r, lakin g蓹l蓹c蓹kd蓹 daha 莽ox. 575 00:23:04,820 --> 00:23:06,410 V蓹 sonra, n蓹 burada olub? 576 00:23:06,410 --> 00:23:08,700 >> B蓹li, a莽谋q-ayd谋n GetString istifad蓹莽i bir string al谋r. 577 00:23:08,700 --> 00:23:11,360 V蓹 GetString var Zamyla ya Gabe v蓹 ya Daven. 578 00:23:11,360 --> 00:23:14,640 Bel蓹 ki, ilk se莽in bildirin o, Daven idi. 579 00:23:14,640 --> 00:23:19,174 Bel蓹 ki, s蓹m蓹r蓹li, n蓹 GetString var M蓹n蓹 birinci halda D-a-v-e-n idi. 580 00:23:19,174 --> 00:23:22,690 581 00:23:22,690 --> 00:23:25,045 V蓹 sonra, ba艧qa n蓹 etdi m蓹n蓹 gizli verir? 582 00:23:25,045 --> 00:23:25,920 Auditoriya: [i艧itilemez] 583 00:23:25,920 --> 00:23:28,720 DAVID J. MALAN: B蓹li, Bu / 0 v蓹 ya null xarakter. 584 00:23:28,720 --> 00:23:30,550 Bel蓹 ki, s蓹m蓹r蓹li M蓹n蓹 bir string verdi. 585 00:23:30,550 --> 00:23:34,550 Amma biz art谋q 蓹vv蓹lki bilirik bir string yaln谋z bir s谋ra oldu臒unu g枚r眉n眉r 586 00:23:34,550 --> 00:23:37,895 simvol, v蓹 onu l蓹臒v edir Bu x眉susi sentinel xarakter / 0. 587 00:23:37,895 --> 00:23:39,220 588 00:23:39,220 --> 00:23:42,310 >> Amma bu do臒ru 蓹g蓹r bu bir kvadrat, 589 00:23:42,310 --> 00:23:44,160 Bu ayd谋n daha b枚y眉k d眉zbucaql谋 edir. 590 00:23:44,160 --> 00:23:46,830 V蓹 h蓹qiq蓹t蓹n, bu, M蓹n yaln谋z 32 bit t蓹sdiq. 591 00:23:46,830 --> 00:23:49,500 V蓹 bu ayd谋n daha 32 bit, bu y蓹qin ki, 莽眉nki 592 00:23:49,500 --> 00:23:51,583 s蓹kkiz plus s蓹kkiz plus s蓹kkiz plus s蓹kkiz plus s蓹kkiz, 593 00:23:51,583 --> 00:23:53,320 yaln谋z ASCII bayt 莽眉nki. 594 00:23:53,320 --> 00:23:57,030 Nec蓹 heck biz uy臒un gedir Burada bu ki莽ik qutusuna Daven? 595 00:23:57,030 --> 00:23:59,880 >> Yax艧谋, n蓹 h蓹qiq蓹t蓹n GetString edir? 596 00:23:59,880 --> 00:24:03,680 B蓹li, bu grid burada t蓹msil m蓹nim komp眉ter yadda艧 v蓹 ya RAM. 597 00:24:03,680 --> 00:24:07,564 Bel蓹 ki, 枚zba艧谋na ki, 蓹g蓹r dey蓹k Bu h蓹r bir byte t蓹msil 598 00:24:07,564 --> 00:24:09,730 sonra biz h蓹r hesab ed蓹 bil蓹r byte bir 眉nvan olan kimi, 599 00:24:09,730 --> 00:24:13,830 33 Oxford Street, v蓹 ya 34 kimi Oxford Street, v蓹 ya 35 Oxford Street. 600 00:24:13,830 --> 00:24:16,700 >> Bel蓹 ki, evl蓹ri 眉nvanlar谋 kimi v蓹 binalar 眉nvanlar谋 var, 601 00:24:16,700 --> 00:24:19,810 bel蓹 f蓹rdi bayt ed蓹 yadda艧 眉nvanlar谋 v蓹 ya n枚mr蓹l蓹ri var 602 00:24:19,810 --> 00:24:21,042 ki, benzersiz onlara m眉蓹yy蓹n. 603 00:24:21,042 --> 00:24:22,000 陌ndi, bu 蓹sass谋z deyil. 604 00:24:22,000 --> 00:24:25,370 Amma m蓹n gedir蓹m, sad蓹 saxlamaq 眉莽眉n yaln谋z konvensiya hexadecimal istifad蓹, 605 00:24:25,370 --> 00:24:28,200 lakin 0x ba艧qa bir 艧ey dem蓹kdir daha "Bu hexadecimal edir." 606 00:24:28,200 --> 00:24:31,030 v蓹 m蓹n iddia gedir蓹m "D" yadda艧 Byte One q蓹d蓹r 莽at谋r. 607 00:24:31,030 --> 00:24:34,210 >> M蓹n he莽 bir 艧ey ba艧qa ged蓹n var yadda艧, bel蓹 Daven ilk spot var 608 00:24:34,210 --> 00:24:35,509 Byte One at. 609 00:24:35,509 --> 00:24:36,800 Bu, sonra, 0x2 olacaq. 610 00:24:36,800 --> 00:24:37,831 611 00:24:37,831 --> 00:24:38,705 Bu 0x3 gedir. 612 00:24:38,705 --> 00:24:39,840 613 00:24:39,840 --> 00:24:41,800 Bu 0x4 olacaq. 614 00:24:41,800 --> 00:24:43,025 Bu 0x5 gedir. 615 00:24:43,025 --> 00:24:44,025 Bu 0x6 olacaq. 616 00:24:44,025 --> 00:24:45,560 617 00:24:45,560 --> 00:24:48,290 >> Amma bir d蓹f蓹 d眉艧眉n眉r ba艧lamaq n蓹 komp眉ter etdikl蓹rini haqq谋nda 618 00:24:48,290 --> 00:24:50,710 ba艧l谋q alt谋nda, Siz 莽谋xarmaq 眉莽眉n ba艧laya bil蓹rsiniz 619 00:24:50,710 --> 00:24:54,960 nec蓹, bir ne莽蓹 il 蓹vv蓹l, ki 枚z眉 C h蓹yata ke莽irdik. 620 00:24:54,960 --> 00:24:58,360 Y蓹qin ki, GetString n蓹dir returning-- 莽眉nki 621 00:24:58,360 --> 00:25:00,946 deyil kimi hiss qaytar谋lmas谋 Daven, 枚zl眉y眉nd蓹, 622 00:25:00,946 --> 00:25:03,320 o, 艧眉bh蓹siz niyy蓹tind蓹 deyil, 莽眉nki Bu ki莽ik box-- uy臒un 623 00:25:03,320 --> 00:25:05,090 bel蓹 ki, n蓹 GetString y蓹qin qaytar谋lmas谋? 624 00:25:05,090 --> 00:25:07,958 625 00:25:07,958 --> 00:25:08,920 >> Auditoriya: [i艧itilemez] 626 00:25:08,920 --> 00:25:10,540 >> DAVID J. MALAN: Daven yeri. 627 00:25:10,540 --> 00:25:12,770 V蓹 bunu edilmi艧dir He莽 H蓹ft蓹 One ild蓹n. 628 00:25:12,770 --> 00:25:16,150 N蓹 GetString h蓹qiq蓹t蓹n qaytar谋lmas谋 simli ba艧谋na se deyil. 629 00:25:16,150 --> 00:25:17,780 Ki, az a臒 yalan biri. 630 00:25:17,780 --> 00:25:22,520 Bu 眉nvan谋 qaytar谋lmas谋 yadda艧 string, unikal 眉nvan谋. 631 00:25:22,520 --> 00:25:24,820 Daven 33 Oxford k眉莽蓹sind蓹 ya艧ay谋r. 632 00:25:24,820 --> 00:25:29,310 Amma daha m眉f蓹ss蓹l, Gavin ya艧ay谋r 0x1 da, Number One 脺nvan. 633 00:25:29,310 --> 00:25:32,280 >> Bel蓹 ki, n蓹 bu qoymaq olur az box sonra, ayd谋n olmaq 634 00:25:32,280 --> 00:25:35,930 ki, simli yaln谋z 眉nvan谋. 635 00:25:35,930 --> 00:25:38,110 Bel蓹 ki, b眉t眉n bu vaxt, bu var davam. 636 00:25:38,110 --> 00:25:41,650 Amma bu g枚st蓹ri艧l蓹r n蓹 陌ndi b眉t眉n 蓹g蓹r var ki 637 00:25:41,650 --> 00:25:44,710 Bunun i莽蓹risind蓹 bir s谋ra kim edir siz dayand谋rmaq 眉莽眉n, proqram莽谋, 638 00:25:44,710 --> 00:25:47,970 h蓹r hans谋 bir say谋 qoyaraq h蓹r hans谋 bir d蓹yi艧蓹n v蓹 yaln谋z jumping 639 00:25:47,970 --> 00:25:49,080 yadda艧 ki, y谋臒谋n? 640 00:25:49,080 --> 00:25:51,320 V蓹 h蓹qiq蓹t蓹n, biz g枚r蓹c蓹ksiniz ki, bir t蓹hl眉k蓹 n枚vb蓹ti d蓹f蓹 var. 641 00:25:51,320 --> 00:25:53,500 >> Amma indi, bu, kifay蓹t hiss edir. 642 00:25:53,500 --> 00:25:55,630 M蓹n dem蓹k, m蓹n蓹 almaq string, siz m蓹ni Daven verir. 643 00:25:55,630 --> 00:25:57,230 Amma h蓹qiq蓹t蓹n m蓹n蓹 Daven vermir. 644 00:25:57,230 --> 00:25:59,310 M蓹n蓹 ver蓹 B眉t眉n Daven 眉nvan. 645 00:25:59,310 --> 00:26:04,310 M蓹n sonra 蓹min bilirik harada Daven ba艧lay谋r v蓹 ends-- 646 00:26:04,310 --> 00:26:07,140 Bu hekay蓹 to 蓹ld蓹 Daven ba艧lay谋r v蓹 bitir oldu臒u, 647 00:26:07,140 --> 00:26:10,435 v蓹, n枚vb蓹ti sonra yadda艧 string ba艧lay谋r? 648 00:26:10,435 --> 00:26:11,520 649 00:26:11,520 --> 00:26:13,620 >> Yax艧谋, siz t蓹hvil edirsinizs蓹 M蓹n蓹 Daven ba艧lan臒谋c谋, 650 00:26:13,620 --> 00:26:17,230 mahiyy蓹tc蓹, nec蓹 M蓹n bilmir蓹m onun ad谋 sonu harada? 651 00:26:17,230 --> 00:26:20,550 X眉susi null xarakteri, hans谋 b眉t眉n daha 蓹h蓹miyy蓹tli indi 652 00:26:20,550 --> 00:26:23,040 The alt谋nda strings 蓹g蓹r ba艧l谋q sad蓹c蓹 m眉蓹yy蓹n edilir 653 00:26:23,040 --> 00:26:25,820 benzersiz xatir蓹sin蓹 枚z yeri. 654 00:26:25,820 --> 00:26:28,130 Bel蓹 ki, b眉t眉n bu d蓹f蓹 ki n蓹 gedir. 655 00:26:28,130 --> 00:26:32,470 >> Bel蓹likl蓹, biz indi baxd谋臒谋m谋z zaman Burada code izah 656 00:26:32,470 --> 00:26:35,790 Siz line 26 s蓹hv ki, 蓹g蓹r. 657 00:26:35,790 --> 00:26:39,560 Niy蓹 Zamyla v蓹 Zamyla f蓹rqlidir? 658 00:26:39,560 --> 00:26:41,330 Niy蓹 Gabe v蓹 Gabe f蓹rqlidir? 659 00:26:41,330 --> 00:26:42,154 B蓹li, geri. 660 00:26:42,154 --> 00:26:43,390 >> Auditoriya: Onlar m眉xt蓹lif 眉nvanlar谋 var. 661 00:26:43,390 --> 00:26:45,931 >> DAVID J. MALAN: Sad蓹c蓹 onlar m眉xt蓹lif 眉nvanlar谋 var. 662 00:26:45,931 --> 00:26:48,820 Siz GetString z蓹ng 脟眉nki yen蓹 m蓹n tez ed蓹c蓹yik ki, 663 00:26:48,820 --> 00:26:52,870 Bu ikinci x蓹tt string 蓹g蓹r t, m蓹n proqram kimi, 664 00:26:52,870 --> 00:26:55,030 GetString ba艧qa bir z蓹ng b蓹rab蓹rdir. 665 00:26:55,030 --> 00:26:56,370 666 00:26:56,370 --> 00:26:58,670 M蓹n z蓹ng n枚vb蓹ti d蓹f蓹 GetString, gedir蓹m 667 00:26:58,670 --> 00:27:00,190 yadda艧 m眉xt蓹lif y谋臒谋n almaq 眉莽眉n. 668 00:27:00,190 --> 00:27:02,220 >> GetString icaz蓹 Bu 蓹m蓹liyyat xahi艧 669 00:27:02,220 --> 00:27:03,800 daha yadda艧 sistemi. 670 00:27:03,800 --> 00:27:07,894 Bu eyni t蓹krar etm蓹k niyy蓹tind蓹 deyil alt谋 bytes h蓹r bir zaman. 671 00:27:07,894 --> 00:27:09,810 Bu yeni olacaq yadda艧 y谋臒谋n, olan 672 00:27:09,810 --> 00:27:12,780 t almaq 眉莽眉n gedir dem蓹kdir burada b蓹zi dig蓹r d蓹y蓹r. 673 00:27:12,780 --> 00:27:15,380 >> M蓹n bunu bel蓹 s = b蓹rab蓹rdir t, siz m眉qayis蓹 deyilik 674 00:27:15,380 --> 00:27:17,880 Bu v蓹 A qar艧谋 qar艧谋 D bu v蓹 bu qar艧谋 V. 675 00:27:17,880 --> 00:27:19,588 Bu m眉qayis蓹 edirik , bu qar艧谋 676 00:27:19,588 --> 00:27:24,020 s蓹mimi olduqca useful-- useless-- edir olduqca 蓹h蓹miyy蓹tsizdir h蓹qiq蓹t蓹n kim 莽眉nki 677 00:27:24,020 --> 00:27:25,830 strings yadda艧谋nda oldu臒u umurunda? 678 00:27:25,830 --> 00:27:26,850 >> Biz, h蓹qiq蓹t蓹n, yoxdur. 679 00:27:26,850 --> 00:27:28,980 V蓹 biz fikrind蓹 deyilik x眉susil蓹 qay臒谋ke艧 ba艧lay谋n. 680 00:27:28,980 --> 00:27:34,180 Yaln谋z bugs yarana bil蓹r d蓹r蓹c蓹d蓹 v蓹 t蓹hl眉k蓹sizlik irad蓹sini yarana bil蓹r 681 00:27:34,180 --> 00:27:36,100 biz, h蓹qiq蓹t蓹n, bu bar蓹d蓹 qay臒谋 ba艧lay谋n. 682 00:27:36,100 --> 00:27:37,230 Bel蓹 ki, bu problemi h蓹ll ed蓹k. 683 00:27:37,230 --> 00:27:39,650 Siz super sad蓹c蓹 bunu d眉zeltmek 莽谋x谋r. 684 00:27:39,650 --> 00:27:42,600 >> V蓹 I 蓹vv蓹l, 蓹slind蓹 ed蓹k daha a艧kar, n蓹 ed蓹c蓹kl蓹rini 685 00:27:42,600 --> 00:27:47,170 bir CS50 sinif 蓹g蓹r, bunu v蓹 h蓹yata idi 686 00:27:47,170 --> 00:27:48,600 iki strings qar艧谋 m眉qayis蓹. 687 00:27:48,600 --> 00:27:51,440 Siz ayd谋n yaln谋z s = t b蓹rab蓹rdir istifad蓹 ed蓹 bilm蓹z. 688 00:27:51,440 --> 00:27:54,090 Amma yaln谋z m蓹ntiqi nec蓹 Bu simli m眉qayis蓹 ed蓹rdiniz 689 00:27:54,090 --> 00:27:56,370 C kodu istifad蓹 ed蓹r蓹k, bu simli qar艧谋? 690 00:27:56,370 --> 00:27:56,880 B蓹li. 691 00:27:56,880 --> 00:27:58,780 >> Auditoriya: Just n蓹 loop 眉莽眉n [I艧itilemez] 692 00:27:58,780 --> 00:28:00,670 693 00:28:00,670 --> 00:28:01,670 DAVID J. MALAN: Perfect. 694 00:28:01,670 --> 00:28:02,900 Auditoriya: [i艧itilemez] 695 00:28:02,900 --> 00:28:03,310 DAVID J. MALAN: B蓹li. 696 00:28:03,310 --> 00:28:05,390 Just loop v蓹 ya a 眉莽眉n istifad蓹 loop v蓹 ya h蓹r hans谋 is蓹. 697 00:28:05,390 --> 00:28:08,710 Ancaq 蓹sas fikir m眉raci蓹t ki, 蓹g蓹r Bu yadda艧 v蓹 ya bir s谋ra y谋臒谋n 698 00:28:08,710 --> 00:28:11,590 v蓹 bu, 眉z蓹rind蓹 t蓹krarlamaq eyni zamanda. 699 00:28:11,590 --> 00:28:12,960 V蓹 yaln谋z m蓹ktublar谋 m眉qayis蓹. 700 00:28:12,960 --> 00:28:14,260 >> V蓹 siz bir olmaq var az ehtiyatl谋, 莽眉nki 701 00:28:14,260 --> 00:28:16,247 Bir barmaq ist蓹mir蓹m Dig蓹r ke莽mi艧 getm蓹k 眉莽眉n 702 00:28:16,247 --> 00:28:18,080 bir string 莽眉nki dig蓹r art谋q. 703 00:28:18,080 --> 00:28:21,380 Bel蓹 ki, check ist蓹diyiniz olacaq sonunda bu x眉susi d蓹y蓹ri, null. 704 00:28:21,380 --> 00:28:24,017 Amma h蓹qiq蓹t蓹n d蓹, edir end ki, kimi sad蓹. 705 00:28:24,017 --> 00:28:26,100 V蓹 s蓹mimi, biz laz谋m deyil ki, tam yenid蓹n k蓹艧f. 706 00:28:26,100 --> 00:28:27,960 Burada Version iki edir. 707 00:28:27,960 --> 00:28:32,910 V蓹 n蓹 m蓹n burada dem蓹k gedir蓹m ki, 蓹v蓹zin蓹 s m眉qayis蓹 = t b蓹rab蓹rdir 708 00:28:32,910 --> 00:28:38,964 String 蓹g蓹r m蓹n 蓹v蓹zin蓹, dem蓹k gedir蓹m s verg眉l t m眉qayis蓹 = 0 b蓹rab蓹rdir. 709 00:28:38,964 --> 00:28:40,130 陌ndi string n蓹 m眉qayis蓹 olunur? 710 00:28:40,130 --> 00:28:43,046 >> Bu bir funksiyas谋 var, 莽谋x谋r ki, kimin m蓹qs蓹di h蓹yat C il蓹 g蓹lir 711 00:28:43,046 --> 00:28:44,650 iki strings m眉qayis蓹 edir. 712 00:28:44,650 --> 00:28:48,300 Biz oxumaq v蓹 m眉qayis蓹 bulamaq onun man s蓹hif蓹 v蓹 ya s蓹n蓹dl蓹r v蓹 ya CS50 713 00:28:48,300 --> 00:28:50,630 aray谋艧, o, sad蓹c蓹 ki, h蓹y蓹can dem蓹k 714 00:28:50,630 --> 00:28:55,730 m蓹nfi v蓹 ya qaytar谋r m眉qayis蓹 say谋 v蓹 ya m眉sb蓹t say谋 v蓹 ya s谋f谋r, 715 00:28:55,730 --> 00:28:57,660 s谋f谋r dem蓹kdir onlar b蓹rab蓹r ist蓹yirik. 716 00:28:57,660 --> 00:28:58,570 >> Bel蓹 ki, yaln谋z z蓹nn蓹 qap谋l谋rlar. 717 00:28:58,570 --> 00:29:00,390 N蓹 蓹g蓹r dem蓹k bil蓹r m眉qayis蓹 yekunlar谋 t蓹rp蓹nm蓹k 718 00:29:00,390 --> 00:29:02,110 m蓹nfi d蓹y蓹r v蓹 ya m眉sb蓹t d蓹y蓹r? 719 00:29:02,110 --> 00:29:02,785 720 00:29:02,785 --> 00:29:04,285 Auditoriya: B枚y眉kd眉r v蓹 ya daha az. 721 00:29:04,285 --> 00:29:05,570 DAVID J. MALAN: B蓹li, v蓹 ya daha 莽ox azd谋r. 722 00:29:05,570 --> 00:29:08,640 Bel蓹 ki, bir b眉t眉n d眉zm蓹k 眉莽眉n ist蓹yirdi bir dictionary-- strings d蓹st蓹 723 00:29:08,640 --> 00:29:12,975 biz n蓹hay蓹t road-- a艧a臒谋 olacaq kimi m眉k蓹mm蓹l funksiyas谋 potensial istifad蓹 etm蓹k, 724 00:29:12,975 --> 00:29:15,850 bunu olacaq, 莽眉nki sizin 眉莽眉n strings m眉qayis蓹, v蓹 dem蓹k 725 00:29:15,850 --> 00:29:20,060 Bir b 蓹vv蓹l g蓹lir yoxdur, ya yoxdur b a 蓹lifba s谋ras谋 蓹vv蓹l g蓹lib. 726 00:29:20,060 --> 00:29:21,490 Biz m蓹hz bunu ed蓹 bil蓹rsiniz. 727 00:29:21,490 --> 00:29:23,620 >> M蓹n dig蓹r biri idi x蓹b蓹r Bu misalda 艧ey. 728 00:29:23,620 --> 00:29:26,870 N蓹 ali d蓹yi艧ib Bu 蓹sas funksiyas谋 q蓹d蓹r? 729 00:29:26,870 --> 00:29:28,500 730 00:29:28,500 --> 00:29:29,350 Char *. 731 00:29:29,350 --> 00:29:31,150 V蓹 bu ki, dig蓹r a臒 yaland谋r. 732 00:29:31,150 --> 00:29:33,750 B眉t眉n bu vaxt, zaman var simli yaz谋l谋 edilmi艧dir, 733 00:29:33,750 --> 00:29:38,350 biz gizli yeniden edilmi艧dir char kimi string * bel蓹 ki, h蓹qiq蓹t蓹n cingilti 734 00:29:38,350 --> 00:29:39,270 ba艧a d眉艧眉r. 735 00:29:39,270 --> 00:29:42,450 >> Ba艧qa s枚zl蓹, cs50.h v蓹 biz n蓹hay蓹t g枚r蓹c蓹ksiniz kimi, 736 00:29:42,450 --> 00:29:45,950 biz bir sinonimi adl谋 simli ki, char * kimi eyni 艧ey. 737 00:29:45,950 --> 00:29:49,910 V蓹 indi 眉莽眉n, yaln谋z bilm蓹k * Bu 莽蓹r莽iv蓹d蓹, 蓹n az谋, 738 00:29:49,910 --> 00:29:51,286 眉nvan谋 dem蓹kdir. 739 00:29:51,286 --> 00:29:52,210 >> N蓹 眉nvan谋? 740 00:29:52,210 --> 00:29:56,390 Yax艧谋, bu fakt dedim ki, char * v蓹 * int v蓹 ya * sal 741 00:29:56,390 --> 00:30:00,820 char * o dem蓹kdir ki, bir char 眉nvan谋. 742 00:30:00,820 --> 00:30:06,770 Bel蓹 ki, burada bu ki莽ik box, aka string h蓹qiq蓹t蓹n n枚v眉 char * edir, 743 00:30:06,770 --> 00:30:10,490 olan dey蓹r蓹k sad蓹c蓹 bir x眉lya yoludur, Bu qutusuna 眉nvan ged蓹c蓹k. 744 00:30:10,490 --> 00:30:12,430 V蓹 n蓹 bir 眉nvan aid deyil? 745 00:30:12,430 --> 00:30:13,780 G枚r眉n眉r, bir char. 746 00:30:13,780 --> 00:30:16,410 >> Amma biz tamamil蓹 ola bil蓹r int * v蓹 ba艧qa 艧eyl蓹r var. 747 00:30:16,410 --> 00:30:20,790 Amma indi, char * h蓹qiq蓹t蓹n 蓹n 莽ox sad蓹 v蓹 faiz biridir. 748 00:30:20,790 --> 00:30:23,310 Bel蓹 ki, bu problem davam edir yen蓹 d蓹 y眉ks蓹l蓹c蓹k. 749 00:30:23,310 --> 00:30:24,830 >> Bu proqram a莽maq d眉艧眉n蓹k. 750 00:30:24,830 --> 00:30:27,670 Indi biz proqnozla艧d谋rmaq bil蓹rsiniz 蓹g蓹r in g枚r蓹k n蓹 bu kodu il蓹 yanl谋艧. 751 00:30:27,670 --> 00:30:31,140 Bu proqram bel蓹, sur蓹ti-0, m蓹n ir蓹li getm蓹k v蓹 daha z蓹ng gedir 752 00:30:31,140 --> 00:30:34,190 GetString v蓹 s d蓹y蓹rini saxlamaq. 753 00:30:34,190 --> 00:30:38,800 >> V蓹 sonra, niy蓹, bunu edir蓹m yaln谋z h蓹ft蓹 son bir 枚y眉d-n蓹sih蓹t kimi? 754 00:30:38,800 --> 00:30:40,960 Biz GetString dem蓹k idi b蓹z蓹n null qaytar谋r. 755 00:30:40,960 --> 00:30:42,793 N蓹 蓹g蓹r dem蓹kdir GetString null qaytar谋r? 756 00:30:42,793 --> 00:30:45,040 757 00:30:45,040 --> 00:30:46,034 Bir 艧ey yanl谋艧 getdi. 758 00:30:46,034 --> 00:30:48,950 Bu y蓹qin ki, simli 莽ox dem蓹kdir b枚y眉k, yadda艧 komp眉ter h蓹yata. 759 00:30:48,950 --> 00:30:51,724 Bu super, super, super olur nadir hallarda, lakin ola bil蓹r. 760 00:30:51,724 --> 00:30:53,890 Biz onu yoxlamaq ist蓹yirsinizs蓹, v蓹 biz bunu edirik b眉t眉n var. 761 00:30:53,890 --> 00:30:57,910 >> 茝g蓹r deyils蓹, biz indi g枚rm蓹k laz谋md谋r, 莽眉nki 艧eyl蓹r 眉莽眉n ad蓹t蓹n yoxlan谋lmas谋 ba艧lamaq 762 00:30:57,910 --> 00:31:00,870 null kimi, g眉c h蓹qiq蓹t蓹n getm蓹k ba艧lamaq 763 00:31:00,870 --> 00:31:03,106 yadda艧 眉nvanlar谋 etibars谋z ki. 764 00:31:03,106 --> 00:31:05,980 V蓹 fahi艧蓹liy蓹 c蓹lb edilm蓹si madd蓹l蓹ri ba艧lamaq olacaq daha seqmentasiya 莽at谋艧mazl谋qlar. 765 00:31:05,980 --> 00:31:08,360 V蓹 ya Mac v蓹 ya PC, yaln谋z komp眉ter s蓹b蓹b asmaq 眉莽眉n 766 00:31:08,360 --> 00:31:10,340 v蓹 ya proqram potensial dondurmaq. 767 00:31:10,340 --> 00:31:14,930 >> Bel蓹 ki, indi m蓹n, sur蓹ti-0.c iddia I ki, 艧蓹kild蓹 bu strings sur蓹ti gedir蓹m 768 00:31:14,930 --> 00:31:15,685 28 girdi. 769 00:31:15,685 --> 00:31:16,850 770 00:31:16,850 --> 00:31:18,750 V蓹 sonra, m蓹n gedir蓹m alt谋ndak谋 t蓹sdiq etm蓹k 771 00:31:18,750 --> 00:31:21,430 burada m蓹n gedir蓹m ki, onlardan biri d蓹yi艧dirm蓹k 眉莽眉n. 772 00:31:21,430 --> 00:31:22,330 >> Bel蓹 ki, bu bildiri艧. 773 00:31:22,330 --> 00:31:24,370 M蓹n bizim k枚hn蓹 dost strlen z蓹ng edir蓹m. 774 00:31:24,370 --> 00:31:28,960 V蓹 yaln谋z 陌ngilis izah Bu x蓹tt 34 n蓹 edir? 775 00:31:28,960 --> 00:31:32,480 N蓹 t bracket 0 yoxdur sol 蓹ks etdirir. 776 00:31:32,480 --> 00:31:32,980 B蓹li. 777 00:31:32,980 --> 00:31:34,339 >> Auditoriya: t birinci xarakter? 778 00:31:34,339 --> 00:31:35,880 DAVID J. MALAN: t birinci xarakter. 779 00:31:35,880 --> 00:31:36,379 V蓹ssalam. 780 00:31:36,379 --> 00:31:40,024 T ilk xarakteri, M蓹n ist蓹yir蓹m Bu b枚y眉k versiyas谋 t蓹yin etm蓹k 781 00:31:40,024 --> 00:31:41,190 t ilk xarakteri. 782 00:31:41,190 --> 00:31:43,200 Bel蓹 ki, bu h蓹rfl蓹 ilk m蓹ktubu. 783 00:31:43,200 --> 00:31:46,340 V蓹 sonra, son 艧ey yoxdur Bu proqram m蓹n burada t蓹sdiq 784 00:31:46,340 --> 00:31:50,340 orijinal, var, v蓹 burada sur蓹ti, t var. 785 00:31:50,340 --> 00:31:54,610 >> Amma hekay蓹 蓹sas谋nda biz yaln谋z , strings h蓹qiq蓹t蓹n n蓹 bar蓹d蓹 786 00:31:54,610 --> 00:31:57,520 h蓹qiq蓹t蓹n line 28 n蓹 bunu, v蓹 n蓹 787 00:31:57,520 --> 00:31:59,405 ged蓹n n蓹tic蓹sind蓹 s蓹hv ekranda olacaq? 788 00:31:59,405 --> 00:32:01,300 789 00:32:01,300 --> 00:32:03,500 >> Bel蓹 ki, ilk, ilk sual, 28. 790 00:32:03,500 --> 00:32:09,040 String t = h蓹qiq蓹t蓹n n蓹 edir? 791 00:32:09,040 --> 00:32:16,430 Biz sol t蓹r蓹fd蓹n varsa burada yan string t = s; 792 00:32:16,430 --> 00:32:19,400 ki, m蓹n蓹 bir qutu verir burada v蓹 bir qutu burada. 793 00:32:19,400 --> 00:32:25,530 V蓹 bu 眉nvan谋 0x g眉man G蓹lin 枚zba艧谋na, bu d蓹f蓹 dem蓹k 50 bildirin. 794 00:32:25,530 --> 00:32:28,847 N蓹 string t = s yoxdur ba艧l谋q alt谋nda n蓹? 795 00:32:28,847 --> 00:32:30,340 >> Auditoriya: [i艧itilemez] 796 00:32:30,340 --> 00:32:34,100 >> DAVID J. MALAN: Bu yadda艧 saklar orada h蓹ll, bel蓹 ki, 0x50 orada gedir. 797 00:32:34,100 --> 00:32:37,980 陌ndi 蓹g蓹r, m蓹n ilk getm蓹k t xarakteri v蓹 onu b枚y眉k, 798 00:32:37,980 --> 00:32:39,535 M蓹n s蓹m蓹r蓹li s n蓹 edir蓹m? 799 00:32:39,535 --> 00:32:41,300 800 00:32:41,300 --> 00:32:43,450 M蓹n, h蓹qiq蓹t蓹n, do臒ru, eyni 艧eyi edir蓹m? 801 00:32:43,450 --> 00:32:47,680 脟眉nki 蓹g蓹r 脺nvan 0x50-- v蓹 yaln谋z m蓹n Burada board 莽ox otaq yoxdur, 802 00:32:47,680 --> 00:32:51,750 lakin, burada a艧a臒谋 0x50 g眉man m蓹nim komp眉ter yadda艧 haradasa. 803 00:32:51,750 --> 00:32:55,825 >> M蓹n, m蓹s蓹l蓹n, Gabe var bu kimi, burada ki莽ik edir. 804 00:32:55,825 --> 00:32:57,120 805 00:32:57,120 --> 00:33:01,980 M蓹n demi艧蓹m t bracket 0 kapitalla艧d谋r谋l谋r olur. 806 00:33:01,980 --> 00:33:04,860 Yax艧谋, t bracket 0 t ilk m蓹ktubu. 807 00:33:04,860 --> 00:33:07,840 Bel蓹 ki, az g gedir olmaq b枚y眉k G. Lakin problem 808 00:33:07,840 --> 00:33:09,410 , n蓹 d蓹 i艧ar蓹 edir edir? 809 00:33:09,410 --> 00:33:10,300 >> Auditoriya: eyni. 810 00:33:10,300 --> 00:33:11,841 >> DAVID J. MALAN: The eyni d蓹qiq 艧ey. 811 00:33:11,841 --> 00:33:16,342 Bel蓹 ki, b蓹lk蓹 bir sad蓹 izah谋, sintaksis bir az q蓹rib蓹 olsa da. 812 00:33:16,342 --> 00:33:17,050 Bel蓹 ki, bunu ed蓹k. 813 00:33:17,050 --> 00:33:20,210 ./copy-0 onda sur蓹ti-0 olun. 814 00:33:20,210 --> 00:33:21,820 815 00:33:21,820 --> 00:33:24,110 Bir 艧ey dem蓹k: Gabe. 816 00:33:24,110 --> 00:33:26,760 V蓹 t蓹蓹ss眉f ki, h蓹m Onlara art谋q kapitalla艧d谋r谋lm谋艧 edilmi艧dir, 817 00:33:26,760 --> 00:33:29,500 amma ki, 蓹sas biz sad蓹c蓹 ist蓹yirik ki, s蓹b蓹b 818 00:33:29,500 --> 00:33:32,350 陌ndi 眉nvanlar谋 il蓹 m蓹艧臒ul. 819 00:33:32,350 --> 00:33:36,470 >> Bel蓹 ki, nec蓹 biz ba艧lamaq yoxdur address-- he莽 bir cinas intended-- 820 00:33:36,470 --> 00:33:39,270 biz h蓹ll etm蓹k 眉莽眉n ba艧lamaq nec蓹 bu problem? 821 00:33:39,270 --> 00:33:44,400 Yax艧谋, copy1.c, h蓹r 艧eyi gedir bir az daha m眉r蓹kk蓹b almaq 眉莽眉n. 822 00:33:44,400 --> 00:33:49,310 Amma bir iddia konseptual sad蓹 h蓹ll. 823 00:33:49,310 --> 00:33:50,852 >> Ilk bax谋艧da almaq 眉莽眉n bel蓹 莽蓹tindir. 824 00:33:50,852 --> 00:33:53,560 Ilk asan olacaq deyil vaxt, b蓹lk蓹 d蓹, onu yaz谋n 825 00:33:53,560 --> 00:33:57,440 lakin problem ki, 蓹g蓹r sad蓹c蓹 t = s yaln谋z bunu 826 00:33:57,440 --> 00:33:59,694 n眉sx蓹 眉nvan谋, n蓹, yen蓹 siz蓹 se莽蓹 bil蓹rsiniz, 蓹g蓹r, 827 00:33:59,694 --> 00:34:02,110 h蓹ll olacaq h蓹qiq蓹t蓹n bir string 莽谋xarmaq 眉莽眉n? 828 00:34:02,110 --> 00:34:04,906 829 00:34:04,906 --> 00:34:06,770 >> Auditoriya: Biz y蓹qin ki, laz谋md谋r yen蓹 bir loop istifad蓹 edin. 830 00:34:06,770 --> 00:34:06,890 >> DAVID J. MALAN: B蓹li. 831 00:34:06,890 --> 00:34:08,390 Y蓹ni biz yenid蓹n bir loop ehtiyac olacaq. 832 00:34:08,390 --> 00:34:11,800 V蓹 biz sur蓹ti ist蓹yirsinizs蓹, 莽眉nki ba艧qa simli bir string s, 833 00:34:11,800 --> 00:34:14,120 biz y蓹qin ki, bunu ist蓹yir蓹m xarakteri il蓹 xarakter. 834 00:34:14,120 --> 00:34:17,199 Amma problem halda, Bu, ilk s 835 00:34:17,199 --> 00:34:22,159 indi biz ayd谋n 艧蓹kild蓹 ba艧lamaq laz谋md谋r t 眉莽眉n yadda艧 ayr谋lmas谋. 836 00:34:22,159 --> 00:34:24,320 >> Ba艧qa s枚zl蓹, ed蓹k Bu son bir d蓹f蓹 yenid蓹n. 837 00:34:24,320 --> 00:34:28,659 Bu string s = GetString edir. 838 00:34:28,659 --> 00:34:30,956 839 00:34:30,956 --> 00:34:32,455 V蓹 h蓹m莽inin, burada bu q蓹d蓹r qoymaq bildirin. 840 00:34:32,455 --> 00:34:36,639 841 00:34:36,639 --> 00:34:37,420 Bu GetString edir. 842 00:34:37,420 --> 00:34:39,070 843 00:34:39,070 --> 00:34:43,860 Bir 艧ey v蓹 sonra 艧蓹kil kimi 蓹vv蓹lki kimi olacaq, 844 00:34:43,860 --> 00:34:44,360 g-a-b-e- / 0. 845 00:34:44,360 --> 00:34:47,294 846 00:34:47,294 --> 00:34:48,960 Ki, bu kimi bir az bir 艧ey g枚r眉n眉r. 847 00:34:48,960 --> 00:34:53,650 V蓹 s buna g枚r蓹 d蓹, biz bu 0x50 z蓹ng v蓹 51, 52 olacaq. 848 00:34:53,650 --> 00:34:54,409 >> Bel蓹 ki, bu 0x50 edir. 849 00:34:54,409 --> 00:34:55,679 850 00:34:55,679 --> 00:34:59,690 V蓹 sonra, m蓹n string t yoxdur. 851 00:34:59,690 --> 00:35:02,450 Yadda艧, yaln谋z olacaq Bu kimi bir ki莽ik kvadrat verir. 852 00:35:02,450 --> 00:35:04,080 Bel蓹 ki, 蓹sas add谋m indi n蓹 var? 853 00:35:04,080 --> 00:35:09,870 M蓹n t daxil s kopyalamak etm蓹k ist蓹yirsinizs蓹, n蓹 bo艧 biz burada doldurmaq laz谋md谋r? 854 00:35:09,870 --> 00:35:12,050 Yoxsa biz 眉莽眉n n蓹 laz谋md谋r y眉ks蓹k s蓹viyy蓹d蓹 edirsiniz? 855 00:35:12,050 --> 00:35:14,101 856 00:35:14,101 --> 00:35:14,600 B蓹li? 857 00:35:14,600 --> 00:35:16,200 858 00:35:16,200 --> 00:35:17,020 Biri? 859 00:35:17,020 --> 00:35:17,690 B蓹li. 860 00:35:17,690 --> 00:35:19,214 >> Auditoriya: Biz [I艧itilemez] laz谋md谋r. 861 00:35:19,214 --> 00:35:21,380 DAVID J. MALAN: B蓹li, biz bu bo艧 doldurmaq laz谋md谋r. 862 00:35:21,380 --> 00:35:24,340 M蓹n sonra sur蓹ti bilm蓹z Gabe ad谋 kapitalla艧d谋rmaq 863 00:35:24,340 --> 00:35:28,120 M蓹n 蓹m蓹liyyat sistemi xahi艧 q蓹d蓹r yadda艧 bir y谋臒谋n 864 00:35:28,120 --> 00:35:30,640 ki, orijinal kimi 蓹n az谋 b枚y眉k deyil. 865 00:35:30,640 --> 00:35:32,130 Bel蓹 ki, bir m蓹s蓹l蓹 il蓹 biz蓹 yarad谋r. 866 00:35:32,130 --> 00:35:36,080 >> M蓹n 蓹m蓹liyyat sistemi xahi艧 n蓹 yaln谋z bir sad蓹 az pointer 眉莽眉n 867 00:35:36,080 --> 00:35:38,530 bu adlan谋r kimi, 眉nvan谋, bir pointer deyil 868 00:35:38,530 --> 00:35:40,980 sad蓹 bir az qutusu bu kimi bir string adlan谋r? 869 00:35:40,980 --> 00:35:44,200 Nec蓹 蓹m蓹liyyat ist蓹mir蓹m yadda艧 b枚y眉k bir y谋臒谋n sistemi? 870 00:35:44,200 --> 00:35:48,430 Bu g眉n蓹 q蓹d蓹r, M蓹n yaln谋z geri kazan谋lm谋艧 dolay谋 GetString z蓹ng. 871 00:35:48,430 --> 00:35:50,740 Bel蓹 ki, nec蓹 GetString edir onun yadda艧 蓹ld蓹 h蓹tta? 872 00:35:50,740 --> 00:35:53,430 >> B蓹li, bu var 莽谋x谋r ki, Burada bu dig蓹r funksiyas谋 873 00:35:53,430 --> 00:35:55,160 ki, biz indi istifad蓹 etm蓹k ba艧lamaq laz谋md谋r. 874 00:35:55,160 --> 00:35:59,780 陌ndi, bu yol daha sirli than-- g枚r眉n眉r v蓹 m蓹n it-- bil蓹rsiniz olan yaln谋z bir am 875 00:35:59,780 --> 00:36:03,150 Bu x蓹tt yol daha sirli g枚r眉n眉r o, ilk bax谋艧dan olmal谋d谋r. 876 00:36:03,150 --> 00:36:04,650 Amma onu ayr谋 tease bildirin. 877 00:36:04,650 --> 00:36:07,950 >> Sol t蓹r蓹fd蓹, m蓹n char * t var. 878 00:36:07,950 --> 00:36:13,280 陌ngilis Bel蓹 ki, formala艧d谋rmaq ba艧lamaq ed蓹k texniki jargon m眉vafiq c眉ml蓹l蓹r. 879 00:36:13,280 --> 00:36:19,757 Bel蓹 ki, bu ayr谋lmas谋 bir tipli char d蓹yi艧蓹n t adl谋 *. 880 00:36:19,757 --> 00:36:21,090 陌ndi h蓹qiq蓹t蓹n n蓹 dem蓹kdir? 881 00:36:21,090 --> 00:36:23,881 >> Yax艧谋, o dem蓹kdir ki, m蓹n n蓹 gedir蓹m t adlanan bu d蓹yi艧蓹n qoymaq? 882 00:36:23,881 --> 00:36:24,780 883 00:36:24,780 --> 00:36:26,402 Bir char bir 眉nvan. 884 00:36:26,402 --> 00:36:28,360 Bel蓹 ki, yaln谋z sad蓹 var daha a臒labatan 艧蓹kild蓹 885 00:36:28,360 --> 00:36:29,930 sol 蓹l 眉z眉n眉 izah. 886 00:36:29,930 --> 00:36:32,890 Bel蓹 ki, burada yaln谋z bu box yarad谋r. 887 00:36:32,890 --> 00:36:34,760 Bel蓹 ki, sa臒 t蓹r蓹find蓹, ehtimalla gedir 888 00:36:34,760 --> 00:36:37,170 ki, daha b枚y眉k ayr谋lmas谋 yadda艧 nec蓹 y谋臒谋n? 889 00:36:37,170 --> 00:36:38,340 Bel蓹 ki, bu ayr谋 tease bildirin. 890 00:36:38,340 --> 00:36:41,131 >> Bu, ilk bax谋艧da b枚y眉k oldu lakin daxili burada n蓹 olub? 891 00:36:41,131 --> 00:36:43,740 Birincisi, malloc var olan yeni dost, y蓹qin 892 00:36:43,740 --> 00:36:45,450 "Yadda艧 ayr谋lmas谋." 893 00:36:45,450 --> 00:36:49,560 Bel蓹 ki, bu q蓹bul olunan d蓹lil onu, bel蓹 ki, olduqca b枚y眉k d蓹lil var. 894 00:36:49,560 --> 00:36:50,970 Bel蓹 ki, bu ayr谋 tease bildirin. 895 00:36:50,970 --> 00:36:53,410 >> s strlen, 蓹lb蓹tt蓹, t蓹msil the-- 896 00:36:53,410 --> 00:36:54,142 897 00:36:54,142 --> 00:36:55,600 Auditoriya: simvollar谋n say谋. 898 00:36:55,600 --> 00:36:56,710 DAVID J. MALAN: Yaln谋z s simvol say谋. 899 00:36:56,710 --> 00:36:59,040 Bel蓹 ki, s uzunlu臒u, orijinal string. 900 00:36:59,040 --> 00:37:00,350 Bel蓹 ki, G-a-b-e. 901 00:37:00,350 --> 00:37:02,320 Bel蓹 ki, y蓹qin ki, bu d枚rd halda var. 902 00:37:02,320 --> 00:37:05,485 Niy蓹 sonra +1 edir蓹m s strlen z蓹ng? 903 00:37:05,485 --> 00:37:06,360 Auditoriya: [i艧itilemez] 904 00:37:06,360 --> 00:37:07,590 DAVID J. MALAN: Bunun 眉莽眉n x眉susi null xarakteri. 905 00:37:07,590 --> 00:37:11,260 M蓹n蓹 qalsa uzunlu臒u n蓹 Gabe ad谋, m蓹n d枚rd dem蓹k gedir蓹m. 906 00:37:11,260 --> 00:37:14,480 Ba艧l谋q alt谋nda, baxmayaraq ki, m蓹n laz谋m null xarakteri 眉莽眉n be艧inci byte. 907 00:37:14,480 --> 00:37:16,100 M蓹n +1 edir蓹m n蓹 ki, var. 908 00:37:16,100 --> 00:37:21,730 >> 陌ndi yaln谋z halda bu 莽al谋艧an ba艧qa bir komp眉ter proqram谋, dem蓹k 909 00:37:21,730 --> 00:37:24,610 CS50 cihaz, bir char h蓹cmi 910 00:37:24,610 --> 00:37:26,350 m眉xt蓹lif ola bil蓹r 枚z komp眉ter 眉莽眉n olan 911 00:37:26,350 --> 00:37:30,590 M蓹n bu z蓹ng ed蓹 bil蓹rsiniz 莽谋x谋r ki, operator sizeof, yaln谋z komp眉ter xahi艧 912 00:37:30,590 --> 00:37:32,870 bir 枚l莽眉s眉 n蓹dir bu komp眉terd蓹 char? 913 00:37:32,870 --> 00:37:37,400 >> V蓹 bu be艧 莽arparaq bir char 枚l莽眉s眉 il蓹 n眉mun蓹 914 00:37:37,400 --> 00:37:40,440 蓹n komp眉ter olacaq yaln谋z bir, malloc ola 915 00:37:40,440 --> 00:37:44,830 M蓹n蓹 bu b枚y眉k v蓹sait ay谋rmaq niyy蓹tind蓹dir Burada sa臒 眉z蓹rind蓹 yadda艧 y谋臒谋n. 916 00:37:44,830 --> 00:37:47,140 V蓹 d枚nm蓹k olacaq Bu, bel蓹 ki, bir funksiyas谋 edir 917 00:37:47,140 --> 00:37:48,265 n蓹 m蓹n蓹 qay谋tmaq 眉莽眉n gedir? 918 00:37:48,265 --> 00:37:50,914 919 00:37:50,914 --> 00:37:51,830 Auditoriya: The 眉nvan谋? 920 00:37:51,830 --> 00:37:53,709 DAVID J. MALAN: n蓹 眉nvan谋? 921 00:37:53,709 --> 00:37:55,250 Auditoriya: xatir蓹sin蓹 Of ayr谋lan? 922 00:37:55,250 --> 00:37:56,450 DAVID J. MALAN: 蓹n yadda艧 ay谋r谋b. 923 00:37:56,450 --> 00:37:59,189 M蓹n s蓹mimi, he莽 bir fikrim yoxdur bu ba艧a gedir. 924 00:37:59,189 --> 00:38:01,480 M蓹n t蓹klif etm蓹k niyy蓹tind蓹 deyil蓹m Bu 0x88 sonuna q蓹d蓹r olacaq. 925 00:38:01,480 --> 00:38:02,770 926 00:38:02,770 --> 00:38:06,009 Tamamil蓹 蓹sass谋z, lakin 0x50 ba艧qa yerd蓹, 927 00:38:06,009 --> 00:38:08,800 蓹m蓹liyyat sistemi, 莽眉nki n蓹 Windows v蓹 Mac OS m蓹nim 眉莽眉n n蓹 edir 928 00:38:08,800 --> 00:38:11,230 verilm蓹si ki, 蓹min olun M蓹n蓹 RAM m眉xt蓹lif chunks. 929 00:38:11,230 --> 00:38:14,210 >> Bel蓹 ki, bu d蓹y蓹ri bu deyil yadda艧 y谋臒谋n up son bil蓹r. 930 00:38:14,210 --> 00:38:16,060 Bel蓹 ki, bu 0x88, burada bitir edir. 931 00:38:16,060 --> 00:38:17,480 932 00:38:17,480 --> 00:38:21,570 Bel蓹 ki, indi ayd谋n, ba艧a d眉艧m蓹k olar bu kimi eyni deyil ki, 933 00:38:21,570 --> 00:38:23,960 onlar i艧ar蓹 edirik, 莽眉nki yadda艧 m眉xt蓹lif chunks. 934 00:38:23,960 --> 00:38:29,980 M蓹n indi h蓹qiq蓹t蓹n, bu sur蓹ti ist蓹yirsinizs蓹 Bel蓹 ki, da, sizin t蓹klif h蓹ll ed蓹k. 935 00:38:29,980 --> 00:38:36,870 >> , Yaln谋z getm蓹k loop 眉莽眉n yaratmaq imkan v蓹 t bracket i s bracket i al谋r. 936 00:38:36,870 --> 00:38:39,760 Indi istifad蓹 ed蓹 bil蓹rsiniz, 莽眉nki Bu array kimi notation, 937 00:38:39,760 --> 00:38:43,390 莽眉nki baxmayaraq malloc 莽ox generically m蓹n蓹 yadda艧 ay谋r谋r, 938 00:38:43,390 --> 00:38:45,290 yadda艧 biti艧ik bayt edir. 939 00:38:45,290 --> 00:38:47,240 Byte, byte, byte, geri geri geri. 940 00:38:47,240 --> 00:38:50,030 >> M蓹n bir proqram莽谋 kimi, 艧眉bh蓹siz ki, ed蓹 bil蓹rsiniz bir s谋ra kimi m眉alic蓹 ed蓹n 941 00:38:50,030 --> 00:38:55,090 M蓹n bu n蓹hay蓹t tan谋艧 istifad蓹 ed蓹 bil蓹rsiniz dem蓹kdir yaln谋z bir kvadrat m枚t蓹riz蓹 notation. 942 00:38:55,090 --> 00:38:56,462 943 00:38:56,462 --> 00:39:00,020 >> Bel蓹 ki, m蓹n蓹, 莽眉nki orada fasil蓹 imkan Bu h蓹tta b眉t眉n bir d蓹f蓹 莽ox 944 00:39:00,020 --> 00:39:03,530 蓹sas ideyas谋 recap olsa simli edir, b眉t眉n bu vaxt, 945 00:39:03,530 --> 00:39:05,550 yeni data type 枚zl眉y眉nd蓹 deyil. 946 00:39:05,550 --> 00:39:10,150 Bu, sad蓹c蓹 bir s枚zd蓹 g枚st蓹rici var bir xarakter 眉nvan谋, 947 00:39:10,150 --> 00:39:12,650 yaln谋z dem蓹kdir bir s谋ra ki insan konvensiyas谋 il蓹 948 00:39:12,650 --> 00:39:15,350 biz 0x bir 艧ey kimi yazmaq meyli. 949 00:39:15,350 --> 00:39:18,590 >> Amma bu, yaln谋z bir s谋ra 33 Oxford Street kimi, 950 00:39:18,590 --> 00:39:20,530 olan olur CS binan谋n 眉nvan谋. 951 00:39:20,530 --> 00:39:22,000 952 00:39:22,000 --> 00:39:23,545 Bu m蓹lumat h蓹r hans谋 suallar? 953 00:39:23,545 --> 00:39:24,790 954 00:39:24,790 --> 00:39:25,289 B蓹li? 955 00:39:25,289 --> 00:39:28,530 >> Auditoriya: Niy蓹 biz yoxlamaq yoxdur b蓹rab蓹r t null? 956 00:39:28,530 --> 00:39:30,740 >> DAVID J. MALAN: Niy蓹 biz bunu null b蓹rab蓹r t yoxlamaq? 957 00:39:30,740 --> 00:39:33,250 Biz documentation-- oxumaq 蓹g蓹r malloc 眉莽眉n b枚y眉k question--, 958 00:39:33,250 --> 00:39:37,020 Bu, g枚z蓹l 莽ap dem蓹k olacaq b蓹z蓹n malloc, null qay谋tmaq bil蓹r 959 00:39:37,020 --> 00:39:38,080 yaln谋z GetString kimi. 960 00:39:38,080 --> 00:39:41,820 V蓹 h蓹qiq蓹t蓹n, GetString null qaytar谋r 脰z n枚vb蓹sind蓹, malloc null qaytar谋r 蓹g蓹r, 961 00:39:41,820 --> 00:39:43,130 GetString malloc istifad蓹 edir, 莽眉nki. 962 00:39:43,130 --> 00:39:46,400 >> OS 蓹g蓹r ki, ba艧 ver蓹 bil蓹r Mac OS, Windows, n蓹 olursa olsun, sad蓹c蓹 963 00:39:46,400 --> 00:39:48,130 sizin 眉莽眉n yadda艧. 964 00:39:48,130 --> 00:39:49,820 Bel蓹 ki, orada n蓹 var. 965 00:39:49,820 --> 00:39:52,910 >> V蓹 m蓹n蓹 ba艧qa bir 艧ey a艧kar imkan yaln谋z fikrinizi 蓹s蓹c蓹k bil蓹r 966 00:39:52,910 --> 00:39:55,100 v蓹 ya tamamil蓹 莽ox x蓹tti 眉z蓹rind蓹 olacaq. 967 00:39:55,100 --> 00:39:59,770 Amma m蓹n蓹 qoparmaq imkan 莽谋xarmaq 眉莽眉n loop 眉莽眉n eyni, 968 00:39:59,770 --> 00:40:05,480 bir an 蓹vv蓹l geri idi bu. t bracket i s bracket i al谋r. 969 00:40:05,480 --> 00:40:06,740 >> Nice v蓹 istifad蓹莽i dostu. 970 00:40:06,740 --> 00:40:09,330 Daha H蓹ft蓹 陌ki kimi hiss edir. 971 00:40:09,330 --> 00:40:14,920 Amma bu versiyas谋 h蓹qiq蓹t蓹n ola bil蓹r sirli g枚r眉n眉r bu kimi yenid蓹n. 972 00:40:14,920 --> 00:40:18,280 Bu texnika adl谋 g枚st蓹rici var hesab, 眉nvan谋 hesab. 973 00:40:18,280 --> 00:40:19,600 Amma niy蓹 bu i艧? 974 00:40:19,600 --> 00:40:22,220 >> 陌ndi annoyingly, bu C m眉蓹llifl蓹ri istifad蓹 etm蓹k q蓹rar谋na 975 00:40:22,220 --> 00:40:25,070 m眉xt蓹lif m蓹qs蓹dl蓹r 眉莽眉n * r蓹mzidir. 976 00:40:25,070 --> 00:40:29,020 Biz art谋q bir d蓹f蓹 istifad蓹 g枚rd眉m dem蓹kdir char *, "M蓹n蓹 d蓹yi艧蓹n verir 977 00:40:29,020 --> 00:40:31,210 ki, ehtiva olacaq bir char 眉nvan谋. " 978 00:40:31,210 --> 00:40:33,990 Bu kontekstd蓹 bel蓹 char * "M蓹n蓹 d蓹yi艧蓹n verir" dem蓹kdir. 979 00:40:33,990 --> 00:40:40,050 >> T蓹蓹ss眉f ki, siz * olmadan istifad蓹 蓹g蓹r qar艧谋s谋nda bir s枚z, char kimi, 980 00:40:40,050 --> 00:40:41,905 indi deyirl蓹r dereference operator. 981 00:40:41,905 --> 00:40:43,530 V蓹 biz uzun 蓹vv蓹l bu daha g枚r蓹c蓹ksiniz. 982 00:40:43,530 --> 00:40:44,930 Amma bu, yaln谋z "getm蓹k" dem蓹kdir. 983 00:40:44,930 --> 00:40:49,070 Kims蓹 m蓹n蓹 t蓹hvil 蓹g蓹r, dey蓹n kimi ka臒谋z bir par莽a "33 Oxford Street," 984 00:40:49,070 --> 00:40:53,830 I "* 33 Oxford Street," 蓹g蓹r o dem蓹kdir ki, "CS binan谋n yol a艧a臒谋 getm蓹k." 985 00:40:53,830 --> 00:40:57,220 >> Bel蓹 * orada 蓹g蓹r getm蓹k dem蓹kdir Bunun qar艧谋s谋nda he莽 bir s枚z var. 986 00:40:57,220 --> 00:40:59,100 Bel蓹 ki, ayd谋n olmaq, t n蓹dir? 987 00:40:59,100 --> 00:41:03,250 t y谋臒谋n 眉nvan谋 M蓹n蓹 geri verildi ki, yadda艧. 988 00:41:03,250 --> 00:41:06,650 s, ayd谋n olmaq n蓹, bu 眉nvan谋 M蓹s蓹l蓹n, biz m眉zakir蓹 etdik, 989 00:41:06,650 --> 00:41:07,500 ki莽ik Gabe v蓹? 990 00:41:07,500 --> 00:41:08,990 991 00:41:08,990 --> 00:41:10,005 nin 眉nvan谋 kontormerinin T蓹f蓹rr眉atlar 992 00:41:10,005 --> 00:41:11,585 993 00:41:11,585 --> 00:41:12,460 Auditoriya: The string. 994 00:41:12,460 --> 00:41:14,126 DAVID J. MALAN: Gabe orijinal ad谋 Of. 995 00:41:14,126 --> 00:41:16,660 Bel蓹 ki, 眉nvan var yadda艧 bu y谋臒谋n. 996 00:41:16,660 --> 00:41:22,220 M蓹n dem蓹k 蓹g蓹r t + i i, bildiri艧, yaln谋z bizim k枚hn蓹 dostumuzdur. 997 00:41:22,220 --> 00:41:24,770 Bu, sad蓹c蓹 bir index d蓹yi艧蓹n ki, q蓹d蓹r s谋f谋r olan iterating 998 00:41:24,770 --> 00:41:26,960 simli s uzunlu臒u. 999 00:41:26,960 --> 00:41:30,367 Bel蓹 ki, sonra s谋f谋r, bir olacaq sonra iki, sonra 眉莽, sonra d枚rd. 1000 00:41:30,367 --> 00:41:33,200 Bel蓹 ki, bu yeni topla艧maq bildirin Scratch kimi puzzle 蓹d蓹d, Siz, 1001 00:41:33,200 --> 00:41:36,140 baxmayaraq, yen蓹 syntax Not 莽ox daha gizli deyil. 1002 00:41:36,140 --> 00:41:39,522 Bel蓹 ki, t 眉nvan谋 + edir i m蓹n蓹 verm蓹k gedir 1003 00:41:39,522 --> 00:41:42,480 bir s谋ra, bu, 莽眉nki b眉t眉n biz hex kimi r蓹sm etdik ki, n枚mr蓹l蓹ri. 1004 00:41:42,480 --> 00:41:43,560 Lakin onlar yaln谋z 蓹d蓹d ist蓹yirik. 1005 00:41:43,560 --> 00:41:49,960 >> T 眉nvan谋 dedik 蓹g蓹r Bel蓹 ki, idi 0x88, 0x88 plus s谋f谋r budur. 1006 00:41:49,960 --> 00:41:51,564 1007 00:41:51,564 --> 00:41:53,980 Siz rahat deyilik, h蓹tta h蓹l蓹 hex, bir tahmin edir. 1008 00:41:53,980 --> 00:41:54,410 >> Auditoriya: Bu orijinal. 1009 00:41:54,410 --> 00:41:55,850 >> DAVID J. MALAN: 0x88 Still. 1010 00:41:55,850 --> 00:41:58,910 Bel蓹 * n蓹 dem蓹kdir 0x88 edir? 1011 00:41:58,910 --> 00:42:02,670 Bu dem蓹kdir "getm蓹k" dem蓹kdir s蓹m蓹r蓹li, "Burada sizin barmaq qoymaq." 1012 00:42:02,670 --> 00:42:06,930 陌ndi sa臒 t蓹r蓹fd蓹n Bu ifad蓹, * v蓹 sonra parens, 1013 00:42:06,930 --> 00:42:11,586 s i olan s dem蓹kdir + Burada ki莽ik g q蓹d蓹r m眉raci蓹t. 1014 00:42:11,586 --> 00:42:16,220 s + 0, 蓹lb蓹tt蓹, n蓹 s, s. 1015 00:42:16,220 --> 00:42:21,230 >> Bel蓹 ki, indi it * s, var olan yaln谋z * 33 kimi Oxford Street 眉nvan getm蓹k dem蓹kdir 1016 00:42:21,230 --> 00:42:22,010 s. 1017 00:42:22,010 --> 00:42:24,170 Bel蓹 ki, burada bu barmaq, sa臒 var. 1018 00:42:24,170 --> 00:42:26,050 Bel蓹 ki, n蓹 n蓹 kopyalay谋n 眉莽眉n gedir蓹m? 1019 00:42:26,050 --> 00:42:30,260 Olan sa臒 艧ey, gabe, burada, burada ki莽ik g. 1020 00:42:30,260 --> 00:42:32,750 >> Ki, v蓹 bel蓹 t蓹siri loop ilk iteration, 1021 00:42:32,750 --> 00:42:36,200 Siz g枚r眉n眉r baxmayaraq, t蓹klif bir 艧ey daha crazy daha m眉r蓹kk蓹b 1022 00:42:36,200 --> 00:42:42,110 biz 蓹vv蓹l g枚rd眉m sad蓹c蓹 deyib burada getm蓹k v蓹 burada xarakter sur蓹ti. 1023 00:42:42,110 --> 00:42:44,700 Bu, h蓹m d蓹 yerl蓹rd蓹 bir x蓹rit蓹 verilm蓹si oldu. 1024 00:42:44,700 --> 00:42:46,130 >> V蓹 biz bu g眉n蓹 q蓹d蓹r daha 莽ox laz谋md谋r. 1025 00:42:46,130 --> 00:42:50,600 Amma indi 眉莽眉n, 眉mid yaln谋z edir bu 蓹sas fikir b蓹zi t蓹qdim edir. 1026 00:42:50,600 --> 00:42:53,550 V蓹 h蓹qiq蓹t蓹n, baxaq burada bir final proqram谋 1027 00:42:53,550 --> 00:42:57,480 v蓹 sonra v蓹d claymation, olan h蓹r 艧ey do臒ru olacaq. 1028 00:42:57,480 --> 00:42:57,980 B眉t眉n h眉quqlar. 1029 00:42:57,980 --> 00:43:01,680 M蓹n蓹 orada getm蓹k g眉nd蓹m蓹 a莽maq bildirin. 1030 00:43:01,680 --> 00:43:02,850 1031 00:43:02,850 --> 00:43:05,440 Biz geri g蓹lm蓹k laz谋md谋r me-- bel蓹 ed蓹k uzun 蓹vv蓹l bu 艧蓹kil. 1032 00:43:05,440 --> 00:43:08,360 Burada bu final misal a莽maq ed蓹k. 1033 00:43:08,360 --> 00:43:09,440 1034 00:43:09,440 --> 00:43:12,710 >> Bel蓹 ki, burada super, super h蓹yata proqram谋 1035 00:43:12,710 --> 00:43:15,050 a艧a臒谋dak谋 ki, h蓹yatda he莽 bir 艧ey. 1036 00:43:15,050 --> 00:43:18,740 Bu ilk iki d蓹yi艧蓹nl蓹rin, x b蓹yan v蓹 bu zaman 蓹d蓹d deyil ki, y, 1037 00:43:18,740 --> 00:43:19,240 枚zl眉y眉nd蓹. 1038 00:43:19,240 --> 00:43:20,448 Onlar 枚zl眉y眉nd蓹, integers deyilik. 1039 00:43:20,448 --> 00:43:22,899 Onlar * y蓹qin var int. 1040 00:43:22,899 --> 00:43:25,690 Bel蓹 ki, yaln谋z h蓹r k蓹s, bu n蓹 dem蓹kdir Sizin data n枚v眉, sizin d蓹yi艧蓹n, 1041 00:43:25,690 --> 00:43:26,860 n枚v眉 int * ulduz var? 1042 00:43:26,860 --> 00:43:30,240 Ki, bir int 眉nvan谋 var. 1043 00:43:30,240 --> 00:43:31,990 >> M蓹n h蓹l蓹 burada he莽 bir fikrim var. 1044 00:43:31,990 --> 00:43:35,150 Bu yaln谋z ", n蓹hay蓹t qoymaq dem蓹kdir burada int 眉nvan谋. " 1045 00:43:35,150 --> 00:43:38,340 Bu yerd蓹 0x50, 0x88, yadda艧, bir 眉nvan oldu臒unu gedir. 1046 00:43:38,340 --> 00:43:40,200 V蓹 y n蓹 var h蓹m莽inin, olacaq. 1047 00:43:40,200 --> 00:43:44,920 >> M蓹n indi dem蓹k 蓹g蓹r x = malloc (sizeof (int)), Bu dey蓹r蓹k bir x眉lya yoludur, 1048 00:43:44,920 --> 00:43:49,000 hey 蓹m蓹liyyat sistemi, malloc vasit蓹sil蓹, 枚l莽眉s眉 眉莽眉n m蓹n蓹 kifay蓹t q蓹d蓹r yadda艧 verm蓹k 1049 00:43:49,000 --> 00:43:52,370 y蓹qin ki, bir int v蓹 32 bit v蓹 ya d枚rd bayt olacaq. 1050 00:43:52,370 --> 00:43:53,680 >> Bel蓹 ki, malloc n蓹 qay谋tmaq edir? 1051 00:43:53,680 --> 00:43:55,250 Malloc bir 眉nvan qaytar谋r. 1052 00:43:55,250 --> 00:43:57,020 Bel蓹 ki, n蓹 x saxlan谋l谋r almaq olacaq? 1053 00:43:57,020 --> 00:44:00,600 Y谋臒谋n 眉nvan谋 yadda艧, d枚rd bytes ki, malloc 1054 00:44:00,600 --> 00:44:03,360 yaln谋z xahi艧 m蓹nim 眉莽眉n a艧kar 蓹m蓹liyyat sistemi. 1055 00:44:03,360 --> 00:44:08,240 >> 陌ndi is蓹, line Burada d枚rd, bu * x = 42. 1056 00:44:08,240 --> 00:44:09,990 Sad蓹c蓹, ayd谋n olmaq orada n蓹 olacaq? 1057 00:44:09,990 --> 00:44:11,530 Sol t蓹r蓹find蓹, * x. 1058 00:44:11,530 --> 00:44:13,610 ki, * 33 Oxford Street kimi. 1059 00:44:13,610 --> 00:44:15,523 Bel蓹 ki, * x n蓹 dem蓹kdir? 1060 00:44:15,523 --> 00:44:16,450 >> Auditoriya: gedin. 1061 00:44:16,450 --> 00:44:17,908 >> DAVID J. MALAN: 眉nvan gedin. 1062 00:44:17,908 --> 00:44:20,466 Harada ki, y谋臒谋n yadda艧 ona getm蓹k edir. 1063 00:44:20,466 --> 00:44:21,979 V蓹 t蓹bii ki, n蓹 var qoymaq? 1064 00:44:21,979 --> 00:44:22,520 Auditoriya: 42. 1065 00:44:22,520 --> 00:44:23,580 DAVID J. MALAN: 42. 1066 00:44:23,580 --> 00:44:25,650 B眉t眉n sa臒, * y, eyni fikir. 1067 00:44:25,650 --> 00:44:26,860 Y 眉nvan gedin. 1068 00:44:26,860 --> 00:44:31,740 Orada say谋 13 qoyun, lakin haz谋rda y n蓹dir? 1069 00:44:31,740 --> 00:44:33,172 1070 00:44:33,172 --> 00:44:34,630 Auditoriya: yadda艧 y yoxdur. 1071 00:44:34,630 --> 00:44:35,710 DAVID J. MALAN: var y 眉莽眉n yadda艧. 1072 00:44:35,710 --> 00:44:38,215 Bel蓹 ki, n蓹 y蓹qin y yoxdur Deyirdik oldu臒unuz kimi, ola? 1073 00:44:38,215 --> 00:44:38,520 >> Auditoriya: Garbage. 1074 00:44:38,520 --> 00:44:39,480 >> DAVID J. MALAN: B蓹zi zibil d蓹y蓹ri. 1075 00:44:39,480 --> 00:44:41,320 陌ndi, zibil d蓹y蓹ri h蓹l蓹 bir say谋. 1076 00:44:41,320 --> 00:44:43,160 Bu h蓹l蓹 bir 眉nvan s蓹hv ola bil蓹r. 1077 00:44:43,160 --> 00:44:45,160 Bu kims蓹 sanki var , bir 艧ey yaz谋 1078 00:44:45,160 --> 00:44:48,002 v蓹 m蓹n m蓹nas谋 kimi t蓹hrif k眉莽蓹 a艧a臒谋 bir ev. 1079 00:44:48,002 --> 00:44:50,460 V蓹 yaln谋z getm蓹k 眉莽眉n c蓹hd edin 枚z olmayan bir bina, 1080 00:44:50,460 --> 00:44:53,710 v蓹 ya yadda艧 bir y谋臒谋n siz yoxdur verilmi艧 olub, pis 艧eyl蓹r ba艧 ver蓹 bil蓹r. 1081 00:44:53,710 --> 00:44:57,740 Komp眉ter b蓹zi dig蓹r q蓹za, v蓹 ya ola bil蓹r t蓹yin davran谋艧 ba艧 ver蓹 bil蓹r. 1082 00:44:57,740 --> 00:45:01,310 >> Bel蓹 ki, o, Binky bu intro edir. 1083 00:45:01,310 --> 00:45:04,290 M蓹n h蓹l蓹 20, xat谋rlay谋ram b蓹zi q蓹rib蓹 il sonra, 1084 00:45:04,290 --> 00:45:07,200 M蓹n m蓹n n蓹hay蓹t oldu臒u g枚st蓹ricil蓹rin蓹 ayd谋n. 1085 00:45:07,200 --> 00:45:09,520 >> 茝g蓹r, dem蓹k olan 眉莽 d蓹qiq蓹 buradan ayr谋lmaq 1086 00:45:09,520 --> 00:45:12,170 v蓹 m蓹n n蓹 edir蓹m g枚st蓹ricil蓹rin蓹 anlamaq, d蓹rk 1087 00:45:12,170 --> 00:45:14,410 M蓹n 20 yad edibl蓹r B蓹zi crazy s蓹b蓹bd蓹n il 1088 00:45:14,410 --> 00:45:17,140 zaman v蓹 n蓹 n蓹hay蓹t batm谋艧 m蓹nim t蓹dris oturan 1089 00:45:17,140 --> 00:45:19,501 fellow, Nishat Mehta ild蓹 Eliot ia艧蓹 xidm蓹tl蓹ri Hall geri. 1090 00:45:19,501 --> 00:45:21,250 陌ndi m蓹n yad etdik bu idi, 莽眉nki 1091 00:45:21,250 --> 00:45:23,920 m枚vzular M蓹n d蓹 bir x眉susi il蓹 m眉bariz蓹 etdi. 1092 00:45:23,920 --> 00:45:26,470 V蓹 sonra, n蓹hay蓹t t谋klayan, kimi m蓹n bir 莽ox m枚vzu dem蓹k c蓹sar蓹t 1093 00:45:26,470 --> 00:45:27,460 n蓹hay蓹t olacaq. 1094 00:45:27,460 --> 00:45:32,590 陌ndi ki, b眉t眉n hiss etm蓹k xo艧b蓹xt v蓹 b眉t眉n daha inand谋r谋c谋, 1095 00:45:32,590 --> 00:45:35,360 nin final n蓹z蓹r imkan bizim Burada Binky son 眉莽 d蓹qiq蓹, 1096 00:45:35,360 --> 00:45:37,675 bizim dostumuz, Nick g蓹l蓹n Stanford Parlante. 1097 00:45:37,675 --> 00:45:38,910 1098 00:45:38,910 --> 00:45:41,580 >> [Video playback] 1099 00:45:41,580 --> 00:45:42,750 >> -Hey, Binky. 1100 00:45:42,750 --> 00:45:43,500 Uyan! 1101 00:45:43,500 --> 00:45:45,960 Bu g枚st蓹rici 蓹yl蓹nc蓹 眉莽眉n vaxt var. 1102 00:45:45,960 --> 00:45:47,012 >> Ki, hans谋 var? 1103 00:45:47,012 --> 00:45:48,723 G枚st蓹ricil蓹r haqq谋nda m蓹lumat 蓹ld蓹 edin? 1104 00:45:48,723 --> 00:45:50,580 Oh, goody! 1105 00:45:50,580 --> 00:45:53,563 >> B蓹li, ba艧lamaq 眉莽眉n, biz edirik dan谋艧arlar bir ne莽蓹 g枚st蓹ricil蓹rin蓹 laz谋md谋r gedir. 1106 00:45:53,563 --> 00:45:54,390 >> -Ok. 1107 00:45:54,390 --> 00:45:57,930 Bu kodu, iki g枚st蓹ricil蓹rin蓹 ay谋r谋r olan integers qeyd ed蓹 bil蓹rsiniz. 1108 00:45:57,930 --> 00:45:58,430 -Ok. 1109 00:45:58,430 --> 00:46:02,140 Yax艧谋, m蓹n iki g枚st蓹ricil蓹rin蓹 g枚rm蓹k, lakin onlar bir i艧ar蓹 ola g枚r眉nm眉r. 1110 00:46:02,140 --> 00:46:02,980 >> Y蓹ni do臒ru. 1111 00:46:02,980 --> 00:46:05,100 茝vv蓹lc蓹 g枚st蓹ricil蓹rin蓹 bir 艧ey qeyd etmir. 1112 00:46:05,100 --> 00:46:08,030 Onlar deyilir qeyd 艧eyl蓹ri pointees v蓹 onlar谋 yarad谋lmas谋 1113 00:46:08,030 --> 00:46:09,370 bir ayr谋 add谋m. 1114 00:46:09,370 --> 00:46:10,220 >> Sa臒, -Oh. 1115 00:46:10,220 --> 00:46:10,950 M蓹n ki, bilirdi. 1116 00:46:10,950 --> 00:46:12,385 The pointees ayr谋d谋r. 1117 00:46:12,385 --> 00:46:14,315 Er, bel蓹 ki, nec蓹 bir pointee ayr谋lmas谋 edirsiniz? 1118 00:46:14,315 --> 00:46:15,340 1119 00:46:15,340 --> 00:46:15,960 >> -Ok. 1120 00:46:15,960 --> 00:46:18,970 B蓹li, bu kodu ay谋r谋b yeni tam pointee, 1121 00:46:18,970 --> 00:46:20,950 v蓹 bu hiss蓹si x onu qeyd etm蓹k. 1122 00:46:20,950 --> 00:46:22,050 1123 00:46:22,050 --> 00:46:23,230 >> -Hey, Daha yax艧谋 g枚r眉n眉r. 1124 00:46:23,230 --> 00:46:25,060 Bel蓹 ki, bir 艧ey etm蓹k. 1125 00:46:25,060 --> 00:46:25,990 >> -Ok. 1126 00:46:25,990 --> 00:46:30,455 M蓹n dereference g枚st蓹ricisidir x laz谋md谋r onun pointee daxil say谋 42-saxlamaq. 1127 00:46:30,455 --> 00:46:32,830 Bu oyun 眉莽眉n, laz谋md谋r m蓹nim Dereferencing Magic Wand. 1128 00:46:32,830 --> 00:46:34,130 1129 00:46:34,130 --> 00:46:36,080 >> Dereferencing -Sizin Magic Wand? 1130 00:46:36,080 --> 00:46:37,357 1131 00:46:37,357 --> 00:46:38,190 That-- ki, b枚y眉k. 1132 00:46:38,190 --> 00:46:39,340 1133 00:46:39,340 --> 00:46:41,080 >> -Bu Kodu kimi g枚r眉n眉r. 1134 00:46:41,080 --> 00:46:44,110 M蓹n yaln谋z say谋, v蓹 [POP] qurmaq laz谋md谋r 1135 00:46:44,110 --> 00:46:44,700 >> -Hey Baxmaq. 1136 00:46:44,700 --> 00:46:46,140 Orada gedir. 1137 00:46:46,140 --> 00:46:50,980 >> X a艧a臒谋dak谋 bir dereference edir -Yax艧谋 arrow onun pointee daxil olmaq 眉莽眉n. 1138 00:46:50,980 --> 00:46:53,160 Bu halda, ma臒aza 42. 1139 00:46:53,160 --> 00:46:57,710 Hey say谋 saxlamaq 眉莽眉n istifad蓹 edin Dig蓹r g枚st蓹rici 13, y. 1140 00:46:57,710 --> 00:46:58,760 >> -Ok. 1141 00:46:58,760 --> 00:47:03,270 M蓹n yaln谋z y burada art谋q getm蓹k laz谋md谋r, v蓹 say谋 13 set up almaq. 1142 00:47:03,270 --> 00:47:07,930 V蓹 sonra, bu 脟ubuq almaq Dereferencing v蓹 yaln谋z [BUZZ] 1143 00:47:07,930 --> 00:47:08,960 >> Olduqca! 1144 00:47:08,960 --> 00:47:09,500 >> Hey, -Oh! 1145 00:47:09,500 --> 00:47:11,090 Ki, i艧l蓹m蓹di. 1146 00:47:11,090 --> 00:47:15,630 Binky, m蓹n dereferencing d眉艧眉nm眉r蓹m, dem蓹k Bilirsiniz, 莽眉nki y, yax艧谋 bir fikirdir 1147 00:47:15,630 --> 00:47:17,850 pointee yarad谋lmas谋 ayr谋 bir add谋md谋r. 1148 00:47:17,850 --> 00:47:20,450 V蓹 biz he莽 bunu d眉艧眉nm眉r蓹m. 1149 00:47:20,450 --> 00:47:21,480 >> Yax艧谋 point. 1150 00:47:21,480 --> 00:47:21,980 B蓹li. 1151 00:47:21,980 --> 00:47:25,680 Biz g枚st蓹rici y ayr谋lan, lakin biz he莽 bir pointee qeyd etm蓹k se莽in. 1152 00:47:25,680 --> 00:47:27,190 1153 00:47:27,190 --> 00:47:28,616 >> -脟ox M眉艧ahid蓹莽i. 1154 00:47:28,616 --> 00:47:30,240 -Hey, Orada Binky yax艧谋 axtar谋r edirik. 1155 00:47:30,240 --> 00:47:33,400 Siz ki, bunu d眉zeltmek y xal x eyni pointee? 1156 00:47:33,400 --> 00:47:34,000 >> -茝lb蓹tt蓹. 1157 00:47:34,000 --> 00:47:36,780 M蓹n Magic 脟ubuq istifad蓹 ed蓹c蓹yik Pointer Tap艧谋r谋臒谋n. 1158 00:47:36,780 --> 00:47:38,740 >> Olacaq ki, i艧 apar谋l谋rm谋 蓹vv蓹l kimi bir problem? 1159 00:47:38,740 --> 00:47:39,240 No. 1160 00:47:39,240 --> 00:47:40,660 Bu pointees toxunmaq deyil. 1161 00:47:40,660 --> 00:47:44,450 Bu, sad蓹c蓹 bir g枚st蓹rici d蓹yi艧iklikl蓹r ba艧qa eyni 艧ey qeyd. 1162 00:47:44,450 --> 00:47:45,450 >> Olduqca g枚r眉r蓹m. 1163 00:47:45,450 --> 00:47:48,200 X eyni yer蓹 陌ndi y xal. 1164 00:47:48,200 --> 00:47:48,910 Bel蓹likl蓹, g枚zl蓹yin. 1165 00:47:48,910 --> 00:47:49,950 陌ndi, y m眉蓹yy蓹n edilir. 1166 00:47:49,950 --> 00:47:51,120 Bu pointee var. 1167 00:47:51,120 --> 00:47:54,510 Bel蓹 ki, siz 脟ubuq c蓹hd ed蓹 bil蓹rsiniz 13 眉z蓹rind蓹 g枚nd蓹rm蓹k 眉莽眉n yenid蓹n dereferencing. 1168 00:47:54,510 --> 00:47:56,510 >> OK, -Uh. 1169 00:47:56,510 --> 00:47:58,160 Burada gedir. [POP] 1170 00:47:58,160 --> 00:47:59,340 >> -Hey Ki, baxmaq. 1171 00:47:59,340 --> 00:48:00,750 陌ndi y i艧l蓹ri dereferencing. 1172 00:48:00,750 --> 00:48:04,991 V蓹 g枚st蓹ricil蓹rin蓹 m眉badil蓹si, 莽眉nki bir pointee ki, onlar h蓹m 13 g枚r眉r眉k. 1173 00:48:04,991 --> 00:48:05,490 B蓹li. 1174 00:48:05,490 --> 00:48:06,870 Payla艧ma, n蓹. 1175 00:48:06,870 --> 00:48:08,820 Bel蓹likl蓹, biz indi yerl蓹rd蓹 ke莽id gedir? 1176 00:48:08,820 --> 00:48:09,440 >> Oh, baxmaq. 1177 00:48:09,440 --> 00:48:10,830 Biz vaxt h蓹yata edirik. 1178 00:48:10,830 --> 00:48:11,570 >> -But-- 1179 00:48:11,570 --> 00:48:13,530 >> 脺莽 g枚st蓹rici qaydalar谋 xat谋rlamaq -Sad蓹c蓹. 1180 00:48:13,530 --> 00:48:16,560 Number One, 蓹sas struktur bir g枚st蓹rici var ki, 1181 00:48:16,560 --> 00:48:18,680 v蓹 bu pointee 眉z蓹rind蓹 g枚st蓹rir. 1182 00:48:18,680 --> 00:48:20,640 Lakin g枚st蓹rici v蓹 pointee, ayr谋 1183 00:48:20,640 --> 00:48:22,610 v蓹 眉mumi s蓹hv bir pointer qurmaq 眉莽眉n, 1184 00:48:22,610 --> 00:48:25,000 lakin pointee verm蓹k unutmaq. 1185 00:48:25,000 --> 00:48:28,170 >> Say谋 iki, pointer dereferencing g枚st蓹rici ba艧lay谋r 1186 00:48:28,170 --> 00:48:31,050 v蓹 眉z蓹rind蓹 arrow a艧a臒谋dak谋 onun pointee daxil olmaq 眉莽眉n. 1187 00:48:31,050 --> 00:48:33,400 Biz b眉t眉n Bildiyiniz kimi, bu olarsa yaln谋z 莽al谋艧谋r 1188 00:48:33,400 --> 00:48:36,270 bir pointee, hans谋 c眉r Number One Qaydas谋n谋n geri al谋r. 1189 00:48:36,270 --> 00:48:39,000 >> Say谋 眉莽, pointer tap艧谋r谋q bir pointer edir 1190 00:48:39,000 --> 00:48:42,320 v蓹 qeyd etm蓹k d蓹yi艧ir ba艧qa g枚st蓹rici eyni pointee. 1191 00:48:42,320 --> 00:48:44,160 Tap艧谋r谋臒谋n sonra bel蓹, iki g枚st蓹ricil蓹rin蓹 1192 00:48:44,160 --> 00:48:45,910 eyni pointee qeyd ed蓹c蓹k. 1193 00:48:45,910 --> 00:48:47,990 B蓹z蓹n payla艧谋m deyirl蓹r. 1194 00:48:47,990 --> 00:48:49,740 V蓹 h蓹qiq蓹t蓹n, orada b眉t眉n var. 1195 00:48:49,740 --> 00:48:50,277 Bye-bye indi. 1196 00:48:50,277 --> 00:48:51,110 [END Video playback] 1197 00:48:51,110 --> 00:48:52,568 DAVID J. MALAN: Bu CS50 眉莽眉n var. 1198 00:48:52,568 --> 00:48:55,110 G蓹l蓹n h蓹ft蓹 g枚r蓹c蓹ksiniz. 1199 00:48:55,110 --> 00:48:56,064