1 00:00:00,000 --> 00:00:07,810 2 00:00:07,810 --> 00:00:09,840 >> JASON HIRSCHHORN: Byenveni, tout moun, nan Semèn 6. 3 00:00:09,840 --> 00:00:14,790 Mwen kontan wè ou tout vivan epi yo byen apre egzamen 0, paske mwen konnen ke 4 00:00:14,790 --> 00:00:15,810 te yon ti jan ki graj. 5 00:00:15,810 --> 00:00:18,370 Men, Erezman, nou tout te fè ekstrèmman byen. 6 00:00:18,370 --> 00:00:21,680 Se konsa, se sa ki bèl bagay. 7 00:00:21,680 --> 00:00:25,840 Si w ap nan seksyon m 'yo, mwen te bay pi nan ou tounen ti tès ou deja. 8 00:00:25,840 --> 00:00:28,050 >> Yon koup nan nou, mwen satisfè apre klas la. 9 00:00:28,050 --> 00:00:32,360 Men, si ou se yon elèv ekstansyon ak ou pa te resevwa egzamen ou tounen 10 00:00:32,360 --> 00:00:35,490 ankò, TF ou a ap pwobableman travay sou li ak evalyasyon li, epi li pral jwenn li tounen 11 00:00:35,490 --> 00:00:36,490 ou yon ti tan. 12 00:00:36,490 --> 00:00:39,650 Se konsa, elèv yo ekstansyon mwen an ki gen l ap gade kounye a - èspere ke ap viv - 13 00:00:39,650 --> 00:00:42,880 Mwen pral resevwa ti tès ou yon ti tan tou. 14 00:00:42,880 --> 00:00:45,670 >> Ajanda nou an pou jodi a se jan sa a. 15 00:00:45,670 --> 00:00:50,170 Premyèman, nou ap ale nan ale sou kèk resous ki CS50 bay ba ou. 16 00:00:50,170 --> 00:00:54,590 Nou pral ale sou egzamen 0 kap vini an, ak Mwen pral reponn nenpòt kesyon okenn moun 17 00:00:54,590 --> 00:00:57,360 gen sou pwoblèm patikilye. 18 00:00:57,360 --> 00:01:02,050 Lè sa a,, nou pral ale sou dosye mwen / O ak pwoblèm mete 5. 19 00:01:02,050 --> 00:01:07,360 Moun sa yo ki de dènye sijè pral pran moute èstime nan seksyon jodi a. 20 00:01:07,360 --> 00:01:11,680 >> Mwen mete lis sa a moute chak semèn kòm yon rapèl ou tout, men nan nwayo 21 00:01:11,680 --> 00:01:14,650 seksyon, nou gen sèlman 90 minit - nou yo pa kapab kouvri tout bagay ke mwen 22 00:01:14,650 --> 00:01:16,280 ta renmen yo kouvri pou ou guys. 23 00:01:16,280 --> 00:01:21,170 Men, nou fè gen yon tòn resous pou ou a fè desen sou jan ou jwenn yo konnen 24 00:01:21,170 --> 00:01:24,000 materyèl la ak travay nan pwoblèm ou an kouche. 25 00:01:24,000 --> 00:01:30,810 >> Yon rapèl ke mwen gen sou entènèt yon tèks bwat, mete kanpe pou ou pou w ranpli si ou 26 00:01:30,810 --> 00:01:33,250 gen nenpòt fidbak pou m ', tou de pozitif ak 27 00:01:33,250 --> 00:01:35,180 konstriktif, sou seksyon. 28 00:01:35,180 --> 00:01:38,600 Eske se sa ke URL sitiye dwa desann isit la. 29 00:01:38,600 --> 00:01:43,250 Se konsa, tanpri, pran yon ti tan si ou gen nenpòt fidbak, si pandan seksyon, 30 00:01:43,250 --> 00:01:48,030 oswa apre, oswa apre ou fin gade videyo a sou entènèt, ban m 'fidbak ou. 31 00:01:48,030 --> 00:01:52,100 Mwen vrèman apresye nenpòt ak tout nan li. 32 00:01:52,100 --> 00:01:55,730 >> Se konsa, mwen gen konvèsasyon ti avèk yon anpil nan mwen 33 00:01:55,730 --> 00:01:59,350 elèv yo pandan tout semèn nan - menm jan mwen men ti tès tounen, ap pale de la 34 00:01:59,350 --> 00:02:01,480 kou, wè kijan ou ap fè. 35 00:02:01,480 --> 00:02:05,120 Apre sa, yon sèl tèm te vini sou yo ak sou nan ap pale de - nan 36 00:02:05,120 --> 00:02:05,660 patikilye - 37 00:02:05,660 --> 00:02:07,710 pwoblèm kouche. 38 00:02:07,710 --> 00:02:13,090 Apre sa, mwen te enklizyon ki tèm sou tablo a kounye a. 39 00:02:13,090 --> 00:02:16,630 >> Esansyèlman, gen yon diferans ant vire nan yon bagay ki 40 00:02:16,630 --> 00:02:19,590 fè yo kòrèkteman ak yon bagay sa ki fè byen. 41 00:02:19,590 --> 00:02:22,920 Pifò moun ki te fè kokenn an tèm de Correct - 42 00:02:22,920 --> 00:02:25,460 5 an oswa 4 a sou tout psets. 43 00:02:25,460 --> 00:02:27,930 Pifò moun ki ap resevwa sa yo tout tan la. 44 00:02:27,930 --> 00:02:31,150 >> Sepandan, jis paske ou te fè yon bagay dwat pa vle di ou te 45 00:02:31,150 --> 00:02:34,450 fè yon bagay kòm chik, oswa avèk efikasite, oswa kòm propreman jan ou 46 00:02:34,450 --> 00:02:35,270 te ka fè li. 47 00:02:35,270 --> 00:02:36,790 Epi sa a, sa ki desen an - 48 00:02:36,790 --> 00:02:39,230 ak nan yon pi piti degre, style - 49 00:02:39,230 --> 00:02:40,450 aks yo se pou. 50 00:02:40,450 --> 00:02:45,130 Se konsa, mwen pouse nou tout, ak lòt TFs ap pouse ou nèg, pa sèlman vire 51 00:02:45,130 --> 00:02:48,320 nan bagay sa yo ke yo kòrèk, men vire nan bagay sa yo ke yo kode byen. 52 00:02:48,320 --> 00:02:53,060 >> Pa fè nesesè POU pasan, pa rkalkule varyab si 53 00:02:53,060 --> 00:02:53,800 ou pa bezwen. 54 00:02:53,800 --> 00:02:58,520 Pou egzanp, gade dèyè nan pwoblèm mete 4, lè mete brik yo sou la 55 00:02:58,520 --> 00:03:03,070 ekran, chak ranje - chak brik nan yon ranje bay gen menm y kowòdone a-- 56 00:03:03,070 --> 00:03:04,390 menm wotè kowòdone a. 57 00:03:04,390 --> 00:03:07,930 >> Se konsa, ki y kowòdone-pa t 'bezwen ap kalkile andedan enteryè a 58 00:03:07,930 --> 00:03:11,070 pare solèy POU bouk ke ou gen anpil chans yo itilize yo mete sa yo brik sou ekran an. 59 00:03:11,070 --> 00:03:14,030 Li sèlman bezwen yo dwe kalkile chak fwa ou chanje yon ranje, oswa 60 00:03:14,030 --> 00:03:15,200 pati, li desann yon ranje. 61 00:03:15,200 --> 00:03:19,760 Se konsa, di si gen 10 brik nan yon ranje, chak brik ka gen menm bagay la tou 62 00:03:19,760 --> 00:03:22,260 koòdone-y, e ke sa y kowòdone- ka jis ap kalkile 63 00:03:22,260 --> 00:03:23,550 yon fwa pou tout moun nan sa yo. 64 00:03:23,550 --> 00:03:27,810 >> Li pa bezwen ap kalkile 10 fwa, ni fè sa kalkil bezwen 65 00:03:27,810 --> 00:03:30,220 rive nan aktyèl la fonksyon rele - 66 00:03:30,220 --> 00:03:33,020 nouvo fonksyon gracked apèl la. 67 00:03:33,020 --> 00:03:37,820 Se konsa, si sa ki te yon ti kras konfizyon pou ou, se plis generic, bagay sa yo ke 68 00:03:37,820 --> 00:03:40,730 pa bezwen rive chak fwa yon sèl ou ale nan yon bouk POU pa ta dwe 69 00:03:40,730 --> 00:03:42,900 mete andedan bouk la POU, ak pa ta dwe rive chak fwa ou ale 70 00:03:42,900 --> 00:03:44,080 nan bouk la POU. 71 00:03:44,080 --> 00:03:49,270 >> Yon lòt bon egzanp konsepsyon nou te wè nan Semèn 3 pou 15, ou te kapab kenbe 72 00:03:49,270 --> 00:03:50,500 tras nan zewo la. 73 00:03:50,500 --> 00:03:53,600 Se konsa, lè ou inisyalize tablo a, ou sove - nan yon varyab mondyal, petèt - 74 00:03:53,600 --> 00:03:56,140 x ak y kowòdone-a zewo la. 75 00:03:56,140 --> 00:03:57,520 Lè sa a, chak fwa ou - 76 00:03:57,520 --> 00:04:00,310 nan fonksyon deplase ou a, chak fwa ou fè yon mouvman siksè, ou mete nan 77 00:04:00,310 --> 00:04:02,040 kote nan zewo la. 78 00:04:02,040 --> 00:04:06,240 >> Sa ta sove-w nan gen fè pare solèy POU pasan gade nan la 79 00:04:06,240 --> 00:04:10,700 monte chak fwa nan fonksyon deplase ou epi jwenn zewo a, oswa jwenn mozayik la, 80 00:04:10,700 --> 00:04:12,460 ak Lè sa a, tcheke sa ki nan pwochen li. 81 00:04:12,460 --> 00:04:16,329 Olye de sa, ou gen kote adrès la nan la zewo, ou ka jis gade pi wo a, pi ba a, 82 00:04:16,329 --> 00:04:21,160 ak sou bò goch la e yo gen dwa ladan l ', yo jwenn mozayik nan ou te kap chèche. 83 00:04:21,160 --> 00:04:24,970 >> Se konsa, an tèm de pwogram yo nou ap ekri, yo ap pa janm gwo ase 84 00:04:24,970 --> 00:04:28,580 ke kèk nan sa yo pran desizyon konsepsyon yo reyèlman ale nan anpeche ou 85 00:04:28,580 --> 00:04:31,670 pwogram, oswa yon fè l 'kouri pi dousman, oswa petèt menm kouri soti nan memwa. 86 00:04:31,670 --> 00:04:35,030 Men, nou toujou ap pouse ou nèg yo ekri kòm elegant ak 87 00:04:35,030 --> 00:04:36,450 Kòd efikas ke posib. 88 00:04:36,450 --> 00:04:39,910 >> Se konsa, si ou fè fini ekri bagay sa yo ki gen yon anpil pi gwo 89 00:04:39,910 --> 00:04:44,660 sijè ki abòde yo, yo pral ekri ak bon konsepsyon nan adisyon a ke yo te kòrèk. 90 00:04:44,660 --> 00:04:46,300 Se konsa, yon nimewo nan ou gen pote ki deyò. 91 00:04:46,300 --> 00:04:48,560 Sa se bagay nou ap chèche pou - yon bagay nou ap ale nan kontinye 92 00:04:48,560 --> 00:04:49,840 pouse ou nèg sou. 93 00:04:49,840 --> 00:04:52,460 >> Si ou janm genyen nenpòt kesyon sou la konsepsyon de pwogram ou an, santi yo lib 94 00:04:52,460 --> 00:04:56,870 yo rive jwenn deyò m ', ak mwen se kè kontan yo mache nan pwogram ou an avèk ou, 95 00:04:56,870 --> 00:05:01,320 epi montre li kèk nan desen an desizyon ou fè a, li ba ou kèk 96 00:05:01,320 --> 00:05:06,240 sijesyon sou kòman yo fè menm pi bon konsepsyon desizyon yo. 97 00:05:06,240 --> 00:05:08,870 >> Se konsa, nou ap ale pou avanse pou pi sou ap pale de egzamen 0. 98 00:05:08,870 --> 00:05:11,300 Anvan nou fè sa, fè okenn moun gen nenpòt kesyon sou sa ki 99 00:05:11,300 --> 00:05:14,252 Mwen te kouvri byen lwen tèlman? 100 00:05:14,252 --> 00:05:21,500 >> [Frolman brwi] 101 00:05:21,500 --> 00:05:22,750 >> JASON HIRSCHHORN: Pandan sèt segonn. 102 00:05:22,750 --> 00:05:23,250 OK. 103 00:05:23,250 --> 00:05:24,970 Se pou nou pale sou egzamen 0 pou yon ti jan. 104 00:05:24,970 --> 00:05:26,700 Pifò nan ou gen egzamen ou 0 a tounen. 105 00:05:26,700 --> 00:05:29,820 Si ou pa fè sa, èspere ke ou sonje li yon ti jan. 106 00:05:29,820 --> 00:05:34,770 Men, si ou te pran egzamen 0, lè sa a ou yo te genyen tou aksè a PDF la sou entènèt nan 107 00:05:34,770 --> 00:05:35,890 echantiyon solisyon yo yo te. 108 00:05:35,890 --> 00:05:39,480 >> okenn moun gen nenpòt kesyon anvan nou vole nan materyèl semèn nan a sou 109 00:05:39,480 --> 00:05:41,520 yon pwoblèm patikilye sou egzamen 0 - 110 00:05:41,520 --> 00:05:44,630 poukisa repons la se sa li ye? 111 00:05:44,630 --> 00:05:47,255 Èske okenn moun konfonn sou anyen? 112 00:05:47,255 --> 00:05:50,230 Menm si ou te resevwa pwoblèm nan dwa, men jis ta renmen m 'yo eksplike li yon ti jan 113 00:05:50,230 --> 00:05:52,640 plis, mwen se kè kontan yo fè sa kounye a. 114 00:05:52,640 --> 00:05:57,800 >> Se konsa, mwen te mande ou nèg vin pare ak kèk 115 00:05:57,800 --> 00:05:59,440 panse sou egzamen 0. 116 00:05:59,440 --> 00:06:02,660 Se konsa, ki moun ki ta renmen resevwa nou te kòmanse avèk yon kesyon oswa 117 00:06:02,660 --> 00:06:04,655 kòmantè sou egzamen 0? 118 00:06:04,655 --> 00:06:07,435 119 00:06:07,435 --> 00:06:10,410 >> [PAPER frolman] 120 00:06:10,410 --> 00:06:11,470 >> JASON HIRSCHHORN: Pa tout moun te fè pafètman. 121 00:06:11,470 --> 00:06:12,720 Se konsa, mwen konnen [ri] 122 00:06:12,720 --> 00:06:15,950 gen gen yo dwe kèk kesyon sou egzamen 0. 123 00:06:15,950 --> 00:06:27,940 124 00:06:27,940 --> 00:06:28,590 OK. 125 00:06:28,590 --> 00:06:29,210 Wi. 126 00:06:29,210 --> 00:06:29,600 Ompica. 127 00:06:29,600 --> 00:06:30,520 >> OMPICA: Nimewo 10. 128 00:06:30,520 --> 00:06:33,560 >> JASON HIRSCHHORN: Nimewo 10. 129 00:06:33,560 --> 00:06:35,400 Ki yon sèl te nimewo 10? 130 00:06:35,400 --> 00:06:35,840 >> OMPICA: - a 131 00:06:35,840 --> 00:06:36,420 >> JASON HIRSCHHORN: Mwen haven't - 132 00:06:36,420 --> 00:06:37,670 >> OMPICA: genyen ladan yo a - 133 00:06:37,670 --> 00:06:40,060 134 00:06:40,060 --> 00:06:42,180 >> JASON HIRSCHHORN: Nimewo 10 te gen wit mwen - ekri uit a mwen? 135 00:06:42,180 --> 00:06:42,980 >> OMPICA: Yeah. 136 00:06:42,980 --> 00:06:43,630 >> JASON HIRSCHHORN: OK. 137 00:06:43,630 --> 00:06:47,390 Se konsa, yon lòt kesyon ou ta ka genyen mande te m 'presyan? 138 00:06:47,390 --> 00:06:48,630 Repons la se wi. 139 00:06:48,630 --> 00:06:52,060 Nan seksyon anvan egzamen an, mwen te mande ou nèg ki prevwa nan kòd tou de Sterling ak 140 00:06:52,060 --> 00:06:52,980 uit a mwen. 141 00:06:52,980 --> 00:06:54,770 Tou de nan yo te rive parèt sou egzamen an. 142 00:06:54,770 --> 00:06:57,510 Se konsa, èspere ke, ou te peye atansyon a sa. 143 00:06:57,510 --> 00:07:02,520 >> Men, si ou te genyen, Lè sa a, ou ta gen pwobableman fè byen sou moun de. 144 00:07:02,520 --> 00:07:06,030 Men, wit a mwen, nou pa t 'aktyèlman Kòd li nan klas, men li te, ankò, 145 00:07:06,030 --> 00:07:07,500 mande sou egzamen an. 146 00:07:07,500 --> 00:07:13,270 Se konsa, yon koup nan bagay yo pran sonje lè kod uit a mwen. 147 00:07:13,270 --> 00:07:17,320 Premye bagay, pou chak kesyon an, se te ke ou bezwen yo tcheke si fisèl la 148 00:07:17,320 --> 00:07:20,300 te egal ak nil. 149 00:07:20,300 --> 00:07:28,060 >> Yon moun koup yo te eseye tcheke pita sou nan pwogram nan si yo bracket mwen te - 150 00:07:28,060 --> 00:07:30,940 Se konsa, yon karaktè espesifik nan ki fisèl - te egal ak nil. 151 00:07:30,940 --> 00:07:35,600 Men, sonje, ki nil se esansyèlman - li bon panse a 152 00:07:35,600 --> 00:07:39,100 nil kòm yon konsèy zewo - yon konsèy a zewo - 153 00:07:39,100 --> 00:07:40,920 yon sél kote dekwa nan memwa kote ou pa janm ka gen aksè. 154 00:07:40,920 --> 00:07:44,730 >> Se konsa, si yon bagay ki egal a nil, ou konnen ke li pa te initialisé, 155 00:07:44,730 --> 00:07:46,430 oswa pa gen anyen la. 156 00:07:46,430 --> 00:07:50,950 Se konsa, yo se yon etwal Char, S bracket mwen se yon Char. 157 00:07:50,950 --> 00:07:57,410 Se konsa, li fè sans yo konpare yo nil, men se pa yo bracket m 'nil. 158 00:07:57,410 --> 00:07:59,390 Men, ankò - se konsa sa ki te premye bagay la ke ou te sipoze fè - 159 00:07:59,390 --> 00:08:03,510 tcheke a asire w ke ou aktyèlman te resevwa yon fisèl reyèl. 160 00:08:03,510 --> 00:08:08,020 >> Next, ou te vle ale nan chak karaktè nan fisèl la. 161 00:08:08,020 --> 00:08:12,500 Se konsa, ki ta ka tankou yon bracket yo mwen, pou egzanp, si mwen se iterator ou. 162 00:08:12,500 --> 00:08:17,250 Apre sa, pran ki karaktè, ak jwenn valè aktyèl li yo. 163 00:08:17,250 --> 00:08:21,800 Ou genyen li ki estoke kòm yon karaktè, men valè a ASCII pou zewo - 164 00:08:21,800 --> 00:08:23,010 zewo kòm yon karaktè - 165 00:08:23,010 --> 00:08:25,450 se pa aktyèlman nonb antye ki pè a zewo. 166 00:08:25,450 --> 00:08:28,700 Li nan kèk lòt nimewo ke ou ka gade nan tablo a ASCII. 167 00:08:28,700 --> 00:08:30,790 >> Se konsa, yon fason yo korije pou sa - pwobableman fason ki pi bon yo korije pou 168 00:08:30,790 --> 00:08:33,760 ki - se fè soustraksyon soti nan li valè la N. - 169 00:08:33,760 --> 00:08:35,140 zewo kòm yon karaktè. 170 00:08:35,140 --> 00:08:38,490 Se konsa, mwens quote yon sèl, zewo, yon lòt quote sèl. 171 00:08:38,490 --> 00:08:44,620 Ki pral pran tou sa nimewo ou gen kòm yon karaktè, epi pou yo jwenn li egal a 172 00:08:44,620 --> 00:08:46,720 nimewo a kòm yon nonb antye ki pè vrè. 173 00:08:46,720 --> 00:08:50,300 >> Apre sa se trè menm jan ak apwòch la yon anpil moun ki te pran nan la 174 00:08:50,300 --> 00:08:52,800 pwoblèm mete 2, ak Seza tande kòz ak Viginere - 175 00:08:52,800 --> 00:08:55,160 moun ki algorithm, lè ou yo te wotasyon yo. 176 00:08:55,160 --> 00:08:59,210 Se konsa, apre ou genyen li kòm yon nimewo sòti nan zewo a nèf, Lè sa a, - depann sou 177 00:08:59,210 --> 00:09:02,750 kote li ale nan kantite nan ultim - ou bezwen anpil anpil pitit li 178 00:09:02,750 --> 00:09:04,120 pa yon pouvwa nan 10. 179 00:09:04,120 --> 00:09:07,340 >> Gen kèk moun ki te deplase soti nan do a nan sou devan, epi miltipliye moun nan 180 00:09:07,340 --> 00:09:08,940 nimewo pa yon pouvwa nan 10. 181 00:09:08,940 --> 00:09:11,160 Gen kèk moun ki te deplase soti nan devan an nan do - 182 00:09:11,160 --> 00:09:14,430 yo ak pou pran pi wo a lòd nimewo premye - 183 00:09:14,430 --> 00:09:18,190 e li ta delivre tout moun nan yon mondyal vann san preskripsyon varyab. 184 00:09:18,190 --> 00:09:20,880 Lè sa a, chak fwa nan POU an bouk, miltipliye ke jeyan mondyal 185 00:09:20,880 --> 00:09:25,640 vann san preskripsyon varyab pa 10, fè espas pou Char nan pwochen an. 186 00:09:25,640 --> 00:09:28,750 >> Se konsa, sa ki te yon ti kras konfizyon san yo pa m 'ekri l' sou tablo a. 187 00:09:28,750 --> 00:09:31,550 Men, solisyon ki nan egzanp lan se disponib nan ou. 188 00:09:31,550 --> 00:09:32,870 Men, moun yo te bagay sa yo gwo nou te kap chèche. 189 00:09:32,870 --> 00:09:36,400 Epitou yon chèk a asire w ke chak N. moun te depoze yon 190 00:09:36,400 --> 00:09:39,780 N. ant zewo ak nèf, epi yo pa kèk lòt karaktè, tankou yon A, 191 00:09:39,780 --> 00:09:41,160 pou egzanp. 192 00:09:41,160 --> 00:09:43,150 >> Moun sa yo ki te bagay sa yo nou te kap pou nan kesyon an. 193 00:09:43,150 --> 00:09:46,510 194 00:09:46,510 --> 00:09:47,980 ki reponn kesyon ou a? 195 00:09:47,980 --> 00:09:49,320 >> OMPICA: Yeah. 196 00:09:49,320 --> 00:09:50,240 >> JASON HIRSCHHORN: OK. 197 00:09:50,240 --> 00:09:53,940 Èske gen nenpòt lòt kesyon sou egzamen 0? 198 00:09:53,940 --> 00:09:55,440 Ki sa ki sou konpile? 199 00:09:55,440 --> 00:09:56,740 Tout moun konpile dwa? 200 00:09:56,740 --> 00:09:58,370 No 201 00:09:58,370 --> 00:09:58,840 Te gen yon - 202 00:09:58,840 --> 00:10:01,010 [Ri] 203 00:10:01,010 --> 00:10:03,265 Nenpòt kesyon sou la konpilasyon pwosesis? 204 00:10:03,265 --> 00:10:06,050 205 00:10:06,050 --> 00:10:06,966 Wow. 206 00:10:06,966 --> 00:10:11,090 >> [PAPER frolman] 207 00:10:11,090 --> 00:10:11,520 >> JASON HIRSCHHORN: Wi. 208 00:10:11,520 --> 00:10:11,700 Mikayèl la. 209 00:10:11,700 --> 00:10:14,140 >> MICHAEL: Eske nimewo 7 - o aza? 210 00:10:14,140 --> 00:10:16,500 >> JASON HIRSCHHORN: Nimewo 7. 211 00:10:16,500 --> 00:10:20,670 Nimewo 7 te jwenn yon nonb antye ki pè o aza. 212 00:10:20,670 --> 00:10:21,110 Ekselan. 213 00:10:21,110 --> 00:10:25,630 Se konsa, w ap bay yon nonb antye relatif yon ak yon nonb antye ki pè b, epi ou vle yon o aza 214 00:10:25,630 --> 00:10:28,710 nonb antye ki pè ant a ak b. 215 00:10:28,710 --> 00:10:31,740 Nou ka aktyèlman ekri yon sèl sa a sou tablo a, paske yon sèl sa a 216 00:10:31,740 --> 00:10:33,320 te yon sèl liy nan kòd - 217 00:10:33,320 --> 00:10:34,390 yon fason fè li. 218 00:10:34,390 --> 00:10:37,810 >> Se konsa, nou ap bay drand kòm yon fonksyon nou te ka sèvi ak yo. 219 00:10:37,810 --> 00:10:38,820 Ak sa ki drand - 220 00:10:38,820 --> 00:10:40,290 asepte li a te smi - 221 00:10:40,290 --> 00:10:42,316 sa drand retounen? 222 00:10:42,316 --> 00:10:44,840 >> MICHAEL: A flote ant 0.0 ak 1.0. 223 00:10:44,840 --> 00:10:45,530 >> JASON HIRSCHHORN: Yon nimewo - yeah. 224 00:10:45,530 --> 00:10:47,910 Yon nimewo ant 0 ak 1. 225 00:10:47,910 --> 00:10:51,760 Se konsa, nou te b ak yon. 226 00:10:51,760 --> 00:10:55,480 Lè sa a, nou gen nimewo tiraj osò nou yo ant 0 ak 1 ban nou pa drand. 227 00:10:55,480 --> 00:11:01,480 228 00:11:01,480 --> 00:11:06,630 Gen kèk moun ki te eseye mete b, oswa b mwens yon, oswa yon bagay andedan sa yo 229 00:11:06,630 --> 00:11:07,960 parantèz. 230 00:11:07,960 --> 00:11:11,210 Sa ta vle di ke yo ap agiman nan fonksyon sa a. 231 00:11:11,210 --> 00:11:13,450 >> drand pa pran okenn agiman - tankou getString fè 232 00:11:13,450 --> 00:11:14,330 Pa pran okenn agiman. 233 00:11:14,330 --> 00:11:16,600 Se konsa, li jis paren louvri, fèmen paren - e ke, li menm, se 234 00:11:16,600 --> 00:11:17,330 rele nan fonksyon. 235 00:11:17,330 --> 00:11:19,770 Epi ki ba ou yon nimewo ant 0 ak 1. 236 00:11:19,770 --> 00:11:22,820 Natirèlman, nou gen yon seri antye ki nimewo yo ka pous 237 00:11:22,820 --> 00:11:28,470 >> Di, si b se 10 ak yon se 5, nou vrèman vle yon nimewo ak yon seri de 5. 238 00:11:28,470 --> 00:11:36,940 Se konsa, bagay la pwochen nou bezwen fè se anpil anpil pitit sa a pa ranje b mwens yon la. 239 00:11:36,940 --> 00:11:40,380 Se konsa, an konsideran ke nan anpil avans. 240 00:11:40,380 --> 00:11:42,590 Apre sa, ki pral ban nou yon nimewo ki nan yon seri bay yo. 241 00:11:42,590 --> 00:11:46,610 Epi ki ranje espesifik ke yo te nan diferans ki genyen ant b mwens yon. 242 00:11:46,610 --> 00:11:50,030 >> E finalman, ki pral sèlman ba ou li soti nan - di ranje ki genyen ant b mwens yon 243 00:11:50,030 --> 00:11:52,520 se 5, ki pral ba nou yon nimewo ki ant 0 a 5. 244 00:11:52,520 --> 00:11:56,000 Men, si yon se an reyalite 5, nou bezwen ranfòse ranje sa a jiska kote li nan 245 00:11:56,000 --> 00:12:01,380 aktyèlman sipoze, lè yo ajoute yon. 246 00:12:01,380 --> 00:12:02,580 Se konsa, ki vin bò dwat la lojik. 247 00:12:02,580 --> 00:12:03,745 Lè sa a,, ta ou gen yon lòt kesyon? 248 00:12:03,745 --> 00:12:04,547 >> MICHAEL: No 249 00:12:04,547 --> 00:12:06,010 Mwen jis santi vrèman bèbè kounye a. 250 00:12:06,010 --> 00:12:06,405 [Ri] 251 00:12:06,405 --> 00:12:06,730 >> JASON HIRSCHHORN: No 252 00:12:06,730 --> 00:12:08,640 pa santi yo reyèlman bèbè. 253 00:12:08,640 --> 00:12:10,560 Yon nimewo de moun plede ak kesyon sa a. 254 00:12:10,560 --> 00:12:13,920 Lè sa a,, lòt kesyon an se, drand, ou te di, ba ou yon flote - 255 00:12:13,920 --> 00:12:14,940 retounen yon flote. 256 00:12:14,940 --> 00:12:18,020 Men, fonksyon sa a aktyèlman mande pou yon nonb antye ki pè yo dwe retounen. 257 00:12:18,020 --> 00:12:23,700 >> Ou pa bezwen jete sa a klèman nan yon nonb antye ki pè, paske sa yo 258 00:12:23,700 --> 00:12:29,090 operasyon ap trete l tankou tout yon flote - kòm yon nimewo pwen k ap flote. 259 00:12:29,090 --> 00:12:31,570 Menm jan ak volonte sa a - menm si sa a se yon nonb antye, volonte sa a 260 00:12:31,570 --> 00:12:32,890 pou miltipliye kòrèkteman. 261 00:12:32,890 --> 00:12:34,000 Tout miltiplikasyon la ap travay. 262 00:12:34,000 --> 00:12:35,060 Ou pa bezwen voye l 'jete isit la. 263 00:12:35,060 --> 00:12:36,480 An reyalite, ou pa ta dwe voye l 'jete. 264 00:12:36,480 --> 00:12:37,310 >> Ki ta - 265 00:12:37,310 --> 00:12:40,750 si ou ta jete yon nimewo sa a, se ant 0 ak 1 - 266 00:12:40,750 --> 00:12:42,680 yon nimewo o aza, yon pwen k ap flote - 267 00:12:42,680 --> 00:12:47,850 Lè sa a, li pral swa dwe sèlman 0 oswa 1, se konsa ou pral pèdi nan tout sa presizyon. 268 00:12:47,850 --> 00:12:50,120 Men, nan fen a, lè ou retounen, li otomatikman vin 269 00:12:50,120 --> 00:12:51,620 voye tounen lakay kòm yon antye relatif. 270 00:12:51,620 --> 00:12:56,870 Se konsa, ou pa bezwen fè ki depoze tèt ou. 271 00:12:56,870 --> 00:13:00,810 >> Se konsa, sa a te repons lan nan kesyon sa a, nimewo 7. 272 00:13:00,810 --> 00:13:02,190 Nenpòt lòt kesyon ki gen nan egzamen 0? 273 00:13:02,190 --> 00:13:03,300 Yeah, Annie. 274 00:13:03,300 --> 00:13:05,050 >> Annie: Lè nou itilize repetitif - 275 00:13:05,050 --> 00:13:07,850 lè nou sèvi ak pasan repete? 276 00:13:07,850 --> 00:13:10,210 >> JASON HIRSCHHORN: Lè ou sèvi ak repetitif - se konsa pi plis jeneralman, nan 277 00:13:10,210 --> 00:13:14,110 Les ak inconvénients de rkursyon kont yon apwòch repete. 278 00:13:14,110 --> 00:13:17,110 Èske okenn moun ofri yon pro oswa yon kon? 279 00:13:17,110 --> 00:13:19,460 Tanpri? 280 00:13:19,460 --> 00:13:20,140 Pa kapab okenn moun. 281 00:13:20,140 --> 00:13:22,526 Ki moun ki ka ofri yon pro oswa yon kon? 282 00:13:22,526 --> 00:13:26,963 >> [PAPER frolman] 283 00:13:26,963 --> 00:13:29,730 >> ELÈV 1: recursive ki pi piti a kodaj - mwens tape? 284 00:13:29,730 --> 00:13:33,170 >> JASON HIRSCHHORN: Se konsa, jeneralman, rkursyon espesyalman, yon fonksyon - 285 00:13:33,170 --> 00:13:35,750 oswa yon algorithm tankou unifye sòt - ki confer tèt li 286 00:13:35,750 --> 00:13:37,300 nan yon apwòch repetitif - 287 00:13:37,300 --> 00:13:40,710 ka gen plis senp ki prevwa nan kòd recursive. 288 00:13:40,710 --> 00:13:43,940 Epi jis fè plis sans fè li recursive. 289 00:13:43,940 --> 00:13:46,230 Se konsa, ki ta ka yon pro rkursyon. 290 00:13:46,230 --> 00:13:46,610 Lòt moun? 291 00:13:46,610 --> 00:13:47,467 Yeah? 292 00:13:47,467 --> 00:13:49,240 >> ELÈV 2: Con rkursyon - 293 00:13:49,240 --> 00:13:50,940 Li itilize plis memwa. 294 00:13:50,940 --> 00:13:52,200 >> JASON HIRSCHHORN: Se konsa, egzakteman dwat. 295 00:13:52,200 --> 00:13:55,720 Yon fonksyon repetitif ap kenbe ajoute chemine ankadreman chemine a. 296 00:13:55,720 --> 00:13:59,690 Se konsa, si w ap opere sou yon anpil nan nimewo, epi yo gen yo rele sa a 297 00:13:59,690 --> 00:14:02,560 fonksyone yon lot, Lè sa a, ou pral sètènman Leve kanpe, pran plis memwa, pandan y ap 298 00:14:02,560 --> 00:14:05,810 yon apwòch repete ap ap sèlman mete yon sèl chemine ankadreman sou chemine a, paske 299 00:14:05,810 --> 00:14:08,420 li tout ap pase yo nan yon fonksyon. 300 00:14:08,420 --> 00:14:11,010 >> Nenpòt ki lòt Les ak inconvénients? 301 00:14:11,010 --> 00:14:11,500 Yeah. 302 00:14:11,500 --> 00:14:12,550 >> ELÈV 3: Les pou rkursyon. 303 00:14:12,550 --> 00:14:15,950 Ou pa bezwen detèmine nan avanse konbyen fwa a 304 00:14:15,950 --> 00:14:17,660 Kòd te dwe repete. 305 00:14:17,660 --> 00:14:22,810 Ou ka gen yon kantite Predetermined la fwa ki di ou gen repňte, lè sa a 306 00:14:22,810 --> 00:14:26,420 rkursyon se pi bon, paske li pran ke rezilta. 307 00:14:26,420 --> 00:14:27,780 >> JASON HIRSCHHORN: Mwen panse ke sa a, se vre. 308 00:14:27,780 --> 00:14:30,770 Men mwen panse ke nan tou de ka ou ta pa janm - 309 00:14:30,770 --> 00:14:33,290 ou ta pwobableman jwenn kèk D 'soti nan itilizatè a. 310 00:14:33,290 --> 00:14:35,990 Oswa fonksyon sa a ta gen kèk D ' ki ta detèmine konbyen fwa li 311 00:14:35,990 --> 00:14:36,730 ta dwe kouri. 312 00:14:36,730 --> 00:14:39,520 Se konsa, jeneralman, ou pa t 'vle Kòd difisil - menm nan yon apwòch repete - ki jan 313 00:14:39,520 --> 00:14:40,940 anpil fwa ke bouk yo ta dwe kouri. 314 00:14:40,940 --> 00:14:46,100 315 00:14:46,100 --> 00:14:48,670 >> Èske ou te gen yon lòt ou te panse sou, Annie? 316 00:14:48,670 --> 00:14:49,330 OK. 317 00:14:49,330 --> 00:14:51,650 Se konsa, moun yo se pwobableman de la - 318 00:14:51,650 --> 00:14:54,370 pro nan pi gwo ak pi gwo a kon nan yon repetitif kont 319 00:14:54,370 --> 00:14:57,080 yon apwòch repete. 320 00:14:57,080 --> 00:14:57,690 OK. 321 00:14:57,690 --> 00:14:59,465 Tout lòt bagay sou egzamen 0? 322 00:14:59,465 --> 00:15:08,940 323 00:15:08,940 --> 00:15:09,920 >> Se pou yo deplase sou. 324 00:15:09,920 --> 00:15:15,260 File Mwen / O. Gen yon bèl bagay kout semèn sa a nan dosye mwen / O ki èspere ke 325 00:15:15,260 --> 00:15:19,270 w wè miltip fwa, ak admire. 326 00:15:19,270 --> 00:15:22,910 Yon anpil nan travay antre nan sa a, epi mwen te tande li se ensanèi itil. 327 00:15:22,910 --> 00:15:25,740 Mwen tou te gen ladann lyen ki nan glise sa a, nan ka ou pa te gen yon 328 00:15:25,740 --> 00:15:29,160 chans gade li 10 fwa. 329 00:15:29,160 --> 00:15:35,280 >> Se konsa, nou yo ale nan yon ti tan ale sou la pi gwo etap sa yo louvri epi l ap travay 330 00:15:35,280 --> 00:15:38,400 ak dosye, ak Lè sa a, nou pral plonje nan yon pwoblèm kodaj anvan 331 00:15:38,400 --> 00:15:40,400 ekzamine pwoblèm gwoup la. 332 00:15:40,400 --> 00:15:44,330 Se konsa, ankò, mwen pral mete sa a moute sou ekran an, men mwen pral pale pou 333 00:15:44,330 --> 00:15:47,630 jis yon minit sou sa nou ap fè isit la ak dosye I/O-- 334 00:15:47,630 --> 00:15:49,090 ki sa sa vle di? 335 00:15:49,090 --> 00:15:55,280 >> Sa vle di ke nou kapab kreye nou an pwogram, ak Lè sa a, gen pwogram nou yo 336 00:15:55,280 --> 00:16:00,370 sòti, epi yo pa te fè nenpòt ki enpak sou mond lan deyò nan pwogram nou an. 337 00:16:00,370 --> 00:16:04,630 Men, lè nou kòmanse travay ak dosye - tou de li yo nan ak kreye 338 00:16:04,630 --> 00:16:10,460 yo - nou ka gen kèk efè sou la mond deyò nan pwogram nou an. 339 00:16:10,460 --> 00:16:15,440 >> Jis tankou si Microsoft Word pa t 'kapab fè nenpòt ki dokiman Word, Lè sa a, 340 00:16:15,440 --> 00:16:18,710 yon fwa Microsoft Word kite yo, tout nan ou ta travay fè wout, epi li ta 341 00:16:18,710 --> 00:16:19,740 vrèman dwe initil. 342 00:16:19,740 --> 00:16:23,620 Nou finalman vle pou kapab ekri pwogram ki kapab afekte nan 343 00:16:23,620 --> 00:16:31,350 mond bò kote yo, tou de pa pran nan entrain konplèks - an tèm de dosye ak 344 00:16:31,350 --> 00:16:37,080 via dosye, epi tou li kreye enteresan yo ak kontribisyon konvenkan - 345 00:16:37,080 --> 00:16:39,520 an tèm de diferan kalite dosye. 346 00:16:39,520 --> 00:16:43,730 >> Se konsa, ki pou rezon sa a yo kòmanse aprann kijan yo travay avèk dosye. 347 00:16:43,730 --> 00:16:47,080 Plis espesyalman, sa ki nou fè se jan sa a. 348 00:16:47,080 --> 00:16:47,680 Li trè senp. 349 00:16:47,680 --> 00:16:51,530 Gen sèlman yon koup nan etap, ak yo ki nan lis isit sou Kòd sa a. 350 00:16:51,530 --> 00:16:55,130 Se konsa, nou ap ale nan ale nan liy Kòd sa a pa liy. 351 00:16:55,130 --> 00:16:57,630 >> Premyèman, ou wè make - 352 00:16:57,630 --> 00:17:01,330 lè w ap travay ak yon dosye, kèlkeswa kalite a nan dosye li ye, 353 00:17:01,330 --> 00:17:02,670 ou bezwen louvri li. 354 00:17:02,670 --> 00:17:05,130 Apre sa se ak yon rele nan fopen - 355 00:17:05,130 --> 00:17:05,950 isit la menm. 356 00:17:05,950 --> 00:17:07,980 Ou gen ladan non an nan dosye a. 357 00:17:07,980 --> 00:17:11,930 Si dosye a se pa nan anyè ou a, oswa katab la kote pwogram sa a 358 00:17:11,930 --> 00:17:15,910 lavi, Lè sa a, ou ap bezwen tou gen ladan yon chemen nan kote ki dosye se. 359 00:17:15,910 --> 00:17:19,099 >> Nou pral asime ke sa a dosye yo rele "text.txt" - 360 00:17:19,099 --> 00:17:24,220 yon senp dokiman tèks - se nan la menm katab kòm pwogram sa a se. 361 00:17:24,220 --> 00:17:26,859 Se konsa, sa a, se yon lòt bagay kenbe nan tèt ou - ke si ou vle louvri yon dosye 362 00:17:26,859 --> 00:17:30,050 yon lòt kote, ou aktyèlman bezwen genyen ladan yo kote li yo. 363 00:17:30,050 --> 00:17:33,520 >> Dezyèmman, ou ka pase yon diskisyon fopen, ak se sa ki ou vle fè 364 00:17:33,520 --> 00:17:34,620 ak dosye a. 365 00:17:34,620 --> 00:17:38,450 Gen twa agiman prensipal ki w ap ale nan pase nan fopen. 366 00:17:38,450 --> 00:17:40,060 Ki moun ki ka ban m 'sa yo twa? 367 00:17:40,060 --> 00:17:44,960 368 00:17:44,960 --> 00:17:47,130 Ki moun ki ka ban m 'youn nan yo? 369 00:17:47,130 --> 00:17:48,130 Wi. 370 00:17:48,130 --> 00:17:50,010 >> ELÈV 4: Non a dosye? 371 00:17:50,010 --> 00:17:50,440 >> JASON HIRSCHHORN: M regrèt. 372 00:17:50,440 --> 00:17:55,490 Te gen twa agiman prensipal ou ka pase kòm agiman an dezyèm fopen. 373 00:17:55,490 --> 00:17:57,060 Ou se dwa - Non a dosye se agiman an premye. 374 00:17:57,060 --> 00:18:01,620 Men, agiman an dezyèm fopen yo jeneralman twa strings, ak - repons lan se wi. 375 00:18:01,620 --> 00:18:02,210 Aleja. 376 00:18:02,210 --> 00:18:03,490 >> ALEJA: A pou ajoutra. 377 00:18:03,490 --> 00:18:06,840 >> JASON HIRSCHHORN: A, si ou vle kole nan yon dosye ki deja egziste. 378 00:18:06,840 --> 00:18:07,810 >> ELÈV 5: R pou Li. 379 00:18:07,810 --> 00:18:09,930 >> JASON HIRSCHHORN: R, si ou vle li soti nan yon dosye. 380 00:18:09,930 --> 00:18:10,670 >> ELÈV 6: W pou ekri. 381 00:18:10,670 --> 00:18:12,840 >> JASON HIRSCHHORN: Apre sa, w, si w vle ekri nan yon dosye. 382 00:18:12,840 --> 00:18:17,570 Se konsa, nan ka sa a, nou ap ekri nan dosye a, se konsa nou gen w. 383 00:18:17,570 --> 00:18:22,360 Ou louvri l ', ou menm tou nou gen pou konsève pou la ranpli yon kote, e ke sa a ak nan 384 00:18:22,360 --> 00:18:26,000 Kòd sou bò men gòch nan operatè a plasman - 385 00:18:26,000 --> 00:18:31,220 Mwen kreye yon konsèy nan yon dosye rele, nan ka sa a, dosye-a. 386 00:18:31,220 --> 00:18:36,070 >> Nou pa pral bezwen enkyete ki sa sa a tout bouchon bagay DOSYE se. 387 00:18:36,070 --> 00:18:40,600 Ase li yo di, li se yon tan kouran nan zewo ak moun yo. 388 00:18:40,600 --> 00:18:44,970 Epi sa a, ki jan nou yo ale nan opere li epi mwen konprann li. 389 00:18:44,970 --> 00:18:47,300 >> Bagay la pwochen nou bezwen fè - ak sa a se ekstrèmman enpòtan - 390 00:18:47,300 --> 00:18:49,070 nenpòt lè ou louvri yon dosye - 391 00:18:49,070 --> 00:18:54,250 an reyalite, nenpòt lè ou rele malok, pou egzanp, epi jwenn kèk memwa epi eseye 392 00:18:54,250 --> 00:18:57,980 epi sove l 'nan yon konsèy, ou toujou vle tcheke a asire w ke ke 393 00:18:57,980 --> 00:19:00,230 fonksyon pa t 'tounen nil. 394 00:19:00,230 --> 00:19:05,230 >> Se konsa, nan ka sa a, nou ap tcheke fè asire w ke nou aktyèlman louvri nan 395 00:19:05,230 --> 00:19:10,230 ranpli kòrèkteman, e te gen pa gen okenn erè nan pwogram nou an. 396 00:19:10,230 --> 00:19:15,160 Apre sa, yon fwa nou te tcheke a asire w ke nou gen yon dosye travay, nou kapab 397 00:19:15,160 --> 00:19:18,520 ekri, oswa li nan, oswa kole nan dosye a. 398 00:19:18,520 --> 00:19:24,270 Nan ka sa a, Mwen tou senpleman enprime yon sèl liy sa a dosye. 399 00:19:24,270 --> 00:19:25,450 >> Kouman pou mwen konnen sa? 400 00:19:25,450 --> 00:19:27,990 Oke, mwen lè l sèvi avèk fonksyon sa a rele fprintf. 401 00:19:27,990 --> 00:19:30,970 Tout moun nan fonksyon yo ou pral lè l sèvi avèk lè li ap ekri a, oswa li soti nan, oswa 402 00:19:30,970 --> 00:19:34,950 manipile dosye yo pral menm jan ak fonksyon ou te wè anvan, men 403 00:19:34,950 --> 00:19:38,420 kòmanse ak lèt ​​la F, kanpe pou dosye-a. 404 00:19:38,420 --> 00:19:43,440 Apre sa, fprintf, kontrèman ak ekri ak lèt ​​detache nòmal nou an app, pran yon sèl agiman adisyonèl, 405 00:19:43,440 --> 00:19:47,800 e ke se dosye a kote ou vle ekri ak lèt ​​detache liy sa a. 406 00:19:47,800 --> 00:19:50,640 >> Mwen pa gen anyen yo dwa pou yo ohai. 407 00:19:50,640 --> 00:19:52,860 Mwen pa gen twazyèm lan agiman printf - 408 00:19:52,860 --> 00:19:57,030 oswa agiman an dezyèm printf, nan twazyèm agiman fprintf, paske mwen 409 00:19:57,030 --> 00:19:59,480 pa gen okenn placeholders isit la. 410 00:19:59,480 --> 00:20:01,070 Mwen pa tankou nenpòt varyab. 411 00:20:01,070 --> 00:20:06,070 Men, ankò, fprintf ak tout moun sa yo dosye fonksyon ki opere avèk dosye 412 00:20:06,070 --> 00:20:09,820 yo jeneralman ale nan bezwen dosye a ki sou bagay yo ap fonksyone. 413 00:20:09,820 --> 00:20:15,960 >> Finalman, dènye bagay la enpòtan nan fè se yo fèmen dosye a, jis tankou 414 00:20:15,960 --> 00:20:19,530 ak - chak fwa nou malok yon bagay, nou vle libere yon bagay, n'a 415 00:20:19,530 --> 00:20:22,730 gen yon fwit memwa - nou vle yo fèmen dosye nou yo. 416 00:20:22,730 --> 00:20:28,180 Si pwogram sa a quitté san yo pa fèmen dosye a, chans yo pa gen anyen ta ale 417 00:20:28,180 --> 00:20:30,050 sa ki mal, espesyalman si li te yon ti dosye-a. 418 00:20:30,050 --> 00:20:35,020 >> Men, li se sètènman bon style kodaj epi pratike toujou fèmen dosye ou 419 00:20:35,020 --> 00:20:38,050 lè w ap fini lè l sèvi avèk li. 420 00:20:38,050 --> 00:20:43,630 Se konsa, ki se Basics yo nan dosye Mwen / O. Ou te pwobableman wè sa anvan, oswa 421 00:20:43,630 --> 00:20:45,710 gade l 'nan ke kout kokenn. 422 00:20:45,710 --> 00:20:48,410 okenn moun gen nenpòt kesyon, anvan n 'al jwenn nan kèk kodaj pratik 423 00:20:48,410 --> 00:20:51,800 pwoblèm, sou dosye mwen / O oswa nan etap mwen jis te ale sou? 424 00:20:51,800 --> 00:21:00,198 425 00:21:00,198 --> 00:21:03,162 >> [Sezisman son] 426 00:21:03,162 --> 00:21:04,150 >> JASON HIRSCHHORN: Eske ou gen yon kesyon, Avi? 427 00:21:04,150 --> 00:21:04,660 >> AVI: Non 428 00:21:04,660 --> 00:21:04,740 >> JASON HIRSCHHORN: OK. 429 00:21:04,740 --> 00:21:06,746 Mwen pral rete tann yon lòt sèt segonn. 430 00:21:06,746 --> 00:21:07,590 [Ri] 431 00:21:07,590 --> 00:21:08,620 Sa a se yon tip vrèman bon. 432 00:21:08,620 --> 00:21:10,750 Ou mesye jis pa renmen poze kesyon. 433 00:21:10,750 --> 00:21:11,660 Sa a amann. 434 00:21:11,660 --> 00:21:12,330 OK. 435 00:21:12,330 --> 00:21:17,620 Se konsa, nou premye pwoblèm pratik se, nou se ale nan kopi fonksyon an nan 436 00:21:17,620 --> 00:21:22,330 yon zouti liy lòd ke ou pwobableman itilize anvan - kopi - 437 00:21:22,330 --> 00:21:23,500 zouti nan kopi. 438 00:21:23,500 --> 00:21:28,050 Si ou tape CP ak Lè sa a pase li de agiman nan tèminal ou a, ou kapab 439 00:21:28,050 --> 00:21:28,980 kopye yon dosye. 440 00:21:28,980 --> 00:21:31,220 Apre sa, se sa ki nou pral yo ekri kounye a. 441 00:21:31,220 --> 00:21:35,830 >> Se konsa, ankò, li koupe nan glise sa a, mwen ta ou ekri yon pwogram ki pran 442 00:21:35,830 --> 00:21:38,130 de ak sèlman de lòd-liy agiman - 443 00:21:38,130 --> 00:21:40,750 yon dosye sous ak yon dosye destinasyon - 444 00:21:40,750 --> 00:21:44,590 ak kopi sa ki nan sous la pote nan dosye a destinasyon 445 00:21:44,590 --> 00:21:46,960 yon sèl multiple nan yon tan. 446 00:21:46,960 --> 00:21:48,510 Se konsa, sa a, se yon anpil pou mande pou. 447 00:21:48,510 --> 00:21:52,200 >> Yon fwa ankò, yon apwòch bon sa a se pa ale tou dwat nan kòd la C, men 448 00:21:52,200 --> 00:21:54,280 kraze li desann nan yon koup la etap. 449 00:21:54,280 --> 00:21:58,400 Premyèman, panse osijè de lojik la - egzakteman sa m ap mande ou fè - 450 00:21:58,400 --> 00:22:00,620 epi mwen konprann tout la etap sa yo pwoblèm sa a. 451 00:22:00,620 --> 00:22:04,410 Se pa nan C, jis nan kèk pseudocode, oswa menm yon modèl mantal nan 452 00:22:04,410 --> 00:22:06,030 sa a pral sou. 453 00:22:06,030 --> 00:22:10,050 >> Apre sa, yon fwa ou gen pseudocode la desann, figi konnen kouman pseudocode la 454 00:22:10,050 --> 00:22:14,600 kat sou zouti ak bagay sa yo nou te aprann itilize nan C. 455 00:22:14,600 --> 00:22:19,070 >> E finalman, yon fwa ou gen tout sa ki ansanm, ou ka kòd pwoblèm nan. 456 00:22:19,070 --> 00:22:23,370 Pran 5 a 10 minit nan travay sou pwoblèm sa a. 457 00:22:23,370 --> 00:22:25,800 Mwen pral mete enstriksyon yo tounen moute nan yon dezyèm fwa. 458 00:22:25,800 --> 00:22:27,990 Lè sa a, nou pral ale sou pseudocode a, ak kòd 459 00:22:27,990 --> 00:22:29,230 li viv tankou yon gwoup. 460 00:22:29,230 --> 00:22:31,640 >> Si w gen nenpòt kesyon pandan w ap ap travay sou sa a, santi yo lib yo ogmante 461 00:22:31,640 --> 00:22:34,260 men ou, mwen menm m'ap vin ozalantou yo ak reponn yo. 462 00:22:34,260 --> 00:22:37,020 463 00:22:37,020 --> 00:22:39,330 >> ELÈV 7: Èske mwen ka glise yon moso papye? 464 00:22:39,330 --> 00:22:41,537 >> JASON HIRSCHHORN: Ki sa ki nan ale? 465 00:22:41,537 --> 00:26:46,047 466 00:26:46,047 --> 00:26:48,043 >> [Sezisman son] 467 00:26:48,043 --> 00:26:48,730 >> JASON HIRSCHHORN: OK. 468 00:26:48,730 --> 00:26:51,710 Ann al sou pseudocode a an premye, ak Lè sa a, mwen pral ba ou yon koup plis 469 00:26:51,710 --> 00:26:52,960 minit a fini kod. 470 00:26:52,960 --> 00:26:55,540 471 00:26:55,540 --> 00:26:58,650 >> Ki moun ki ta renmen kòmanse m 'konsa ak liy lan premye nan 472 00:26:58,650 --> 00:27:00,030 pseudocode pou fonksyon sa a? 473 00:27:00,030 --> 00:27:03,330 474 00:27:03,330 --> 00:27:05,740 >> 8 ELÈV: Tcheke a asire w ke ou te ba yo de dosye. 475 00:27:05,740 --> 00:27:06,990 >> JASON HIRSCHHORN: OK. 476 00:27:06,990 --> 00:27:21,270 477 00:27:21,270 --> 00:27:22,990 Men, si nou pa ap? 478 00:27:22,990 --> 00:27:25,974 >> ELÈV 8: Mwen ta retounen 0. 479 00:27:25,974 --> 00:27:27,872 >> JASON HIRSCHHORN: Eske nou ta dwe retounen 0? 480 00:27:27,872 --> 00:27:30,182 >> ELÈV 8: Retounen yon - 481 00:27:30,182 --> 00:27:30,650 efasman. 482 00:27:30,650 --> 00:27:30,850 M regrèt. 483 00:27:30,850 --> 00:27:31,210 >> JASON HIRSCHHORN: Yeah. 484 00:27:31,210 --> 00:27:32,710 Pwobableman pa 0. 485 00:27:32,710 --> 00:27:34,680 Paske 0 vle di tout bagay te bon. 486 00:27:34,680 --> 00:27:35,030 OK. 487 00:27:35,030 --> 00:27:36,730 Se konsa, sa a, se liy lan premye nan pseudocode. 488 00:27:36,730 --> 00:27:38,715 Ki moun ki gen liy nan dezyèm nan pseudocode? 489 00:27:38,715 --> 00:27:40,630 >> ELÈV 9: Louvri tou de dosye yo? 490 00:27:40,630 --> 00:27:41,880 >> JASON HIRSCHHORN: Louvri tou de dosye. 491 00:27:41,880 --> 00:27:49,970 492 00:27:49,970 --> 00:27:50,920 OK? 493 00:27:50,920 --> 00:27:52,850 >> ELÈV 10: Tcheke yo wè si dosye a se NULL? 494 00:27:52,850 --> 00:28:10,906 495 00:28:10,906 --> 00:28:12,580 >> JASON HIRSCHHORN: Tcheke fè asire w ke ni yo NULL. 496 00:28:12,580 --> 00:28:15,800 Kòm yon sou kote - 497 00:28:15,800 --> 00:28:17,540 koupe 0 - 498 00:28:17,540 --> 00:28:18,887 se ke NULL? 499 00:28:18,887 --> 00:28:20,080 >> ELÈV 11: No 500 00:28:20,080 --> 00:28:21,190 >> JASON HIRSCHHORN: Sa a pa NULL. 501 00:28:21,190 --> 00:28:23,400 Sa yo rele Terminator a NULL. 502 00:28:23,400 --> 00:28:25,580 Li nan aktyèlman eple ki gen yon sèl l. 503 00:28:25,580 --> 00:28:28,580 Se konsa, tcheke yon bagay sou kont la - sa a, se aktyèlman yon karaktè - 504 00:28:28,580 --> 00:28:31,710 Se konsa, tcheke yon bagay kont ki pa menm bagay ak tcheke yo wè si li 505 00:28:31,710 --> 00:28:32,690 egal NULL. 506 00:28:32,690 --> 00:28:34,100 >> Se konsa, kèk moun - 507 00:28:34,100 --> 00:28:36,040 sou ti tès yo epi yo pwoblèm yo kouche - gen leve a 508 00:28:36,040 --> 00:28:36,890 de nan moun ki gen konfizyon. 509 00:28:36,890 --> 00:28:38,830 Men, de tout moun sa yo se an reyalite diferan. 510 00:28:38,830 --> 00:28:40,220 Youn fini yon fil - 511 00:28:40,220 --> 00:28:43,210 yon sèl la se yon konsèy a 0. 512 00:28:43,210 --> 00:28:46,490 >> ELÈV 12: Poukisa nou pa ou ta tcheke yo asire w ke dosye yo pa NULL 513 00:28:46,490 --> 00:28:48,670 ou anvan ou louvri yo? 514 00:28:48,670 --> 00:28:54,772 >> JASON HIRSCHHORN: Se konsa, louvri sove yon bagay nan ki dosye. 515 00:28:54,772 --> 00:28:57,780 Men, si ou tounen isit la - 516 00:28:57,780 --> 00:28:59,520 Se konsa, liy sa a - fopen - 517 00:28:59,520 --> 00:29:05,300 ap ba ou yon adrès ak magazen ki adrès nan dosye si li fonksyone. 518 00:29:05,300 --> 00:29:07,650 Si li pa travay, li pral estoke NULL - 519 00:29:07,650 --> 00:29:08,020 >> ELÈV 12: O. 520 00:29:08,020 --> 00:29:08,180 OK. 521 00:29:08,180 --> 00:29:08,500 Te resevwa ou. 522 00:29:08,500 --> 00:29:09,050 >> JASON HIRSCHHORN: Nan dosye-a. 523 00:29:09,050 --> 00:29:11,990 Se konsa, ou pa ka tcheke pou NULL anvan ou te louvri yo. 524 00:29:11,990 --> 00:29:13,520 NULL vle di yon bagay pa t ' travay kòrèkteman. 525 00:29:13,520 --> 00:29:18,030 526 00:29:18,030 --> 00:29:18,740 OK. 527 00:29:18,740 --> 00:29:22,590 Se konsa, tcheke a asire w ni se? 528 00:29:22,590 --> 00:29:23,200 Oswa yo ye? 529 00:29:23,200 --> 00:29:23,770 Ki sa nou konprann nan sa? 530 00:29:23,770 --> 00:29:24,310 Nou pral ale ak sa a. 531 00:29:24,310 --> 00:29:24,520 >> ELÈV 13: Eske. 532 00:29:24,520 --> 00:29:25,020 >> JASON HIRSCHHORN: Eske? 533 00:29:25,020 --> 00:29:25,930 Ni se? 534 00:29:25,930 --> 00:29:26,350 >> ELÈV 13: Eske. 535 00:29:26,350 --> 00:29:26,390 >> JASON HIRSCHHORN: OK. 536 00:29:26,390 --> 00:29:28,510 Nou sanble yo gen kèk konsansis sou sa. 537 00:29:28,510 --> 00:29:30,520 Ni se NULL. 538 00:29:30,520 --> 00:29:32,250 OK, liy pwochen nan pseudocode. 539 00:29:32,250 --> 00:29:33,600 Ki moun ki pa ban m 'yon liy' fè ankò? 540 00:29:33,600 --> 00:29:37,350 541 00:29:37,350 --> 00:29:38,295 Nou pral rete tann pou ou. 542 00:29:38,295 --> 00:29:39,020 Yeah. 543 00:29:39,020 --> 00:29:40,895 >> ELÈV 14: Ou gen li soti nan dosye a an premye? 544 00:29:40,895 --> 00:29:42,290 >> JASON HIRSCHHORN: OK. 545 00:29:42,290 --> 00:29:46,240 >> ELÈV 14: Oswa nou itilize fskanf oswa yon bagay tankou sa dosye a an premye? 546 00:29:46,240 --> 00:29:50,650 >> JASON HIRSCHHORN: Se konsa, nou vle li nan dosye a premye ak - 547 00:29:50,650 --> 00:29:51,900 kite a mete dwa sa isit la. 548 00:29:51,900 --> 00:30:00,600 549 00:30:00,600 --> 00:30:01,880 Li soti nan dosye a sous. 550 00:30:01,880 --> 00:30:05,370 Lè sa a,, ki sa nou fè apre nou fin li nan dosye a sous? 551 00:30:05,370 --> 00:30:06,620 Yon lòt moun? 552 00:30:06,620 --> 00:30:09,150 553 00:30:09,150 --> 00:30:12,190 >> ELÈV 15: Ekri nan dosye a destinasyon? 554 00:30:12,190 --> 00:30:22,080 555 00:30:22,080 --> 00:30:25,620 >> JASON HIRSCHHORN: Nou ekri nou nan dosye a destinasyon, ak - 556 00:30:25,620 --> 00:30:26,210 OK. 557 00:30:26,210 --> 00:30:30,030 Ki lòt bagay yo nou manke? 558 00:30:30,030 --> 00:30:32,460 Yon moun lòt moun ki pa te ban m 'yon liy nan Kòd ankò - nan pseudocode. 559 00:30:32,460 --> 00:30:33,510 Yeah. 560 00:30:33,510 --> 00:30:36,540 >> ELÈV 16: Petèt ou ka toujou tcheke si gen yon bagay li pou li a, 561 00:30:36,540 --> 00:30:37,970 tankou liy ki vin apre a? 562 00:30:37,970 --> 00:30:39,550 Sa se tankou liy kap vini an, wè si li egziste. 563 00:30:39,550 --> 00:30:40,660 >> [ELEKTWONIK BEEP] 564 00:30:40,660 --> 00:30:41,095 >> JASON HIRSCHHORN: Wouch. 565 00:30:41,095 --> 00:30:43,120 Sa a lojisyèl ekri jounal m 'yo. 566 00:30:43,120 --> 00:30:43,580 Yeah? 567 00:30:43,580 --> 00:30:44,960 >> ELÈV 16: Yeah. 568 00:30:44,960 --> 00:30:48,940 >> JASON HIRSCHHORN: Se konsa, bay l 'ban mwen yon lòt fwa ankò. 569 00:30:48,940 --> 00:30:51,640 >> ELÈV 16: Tcheke si wi ou non gen nan toujou yon liy nan pwochen an 570 00:30:51,640 --> 00:30:52,920 dosye sous li. 571 00:30:52,920 --> 00:30:53,500 >> JASON HIRSCHHORN: OK. 572 00:30:53,500 --> 00:30:56,060 Se konsa, nou pa ap li liy - yo te lekti bytes isit la - 573 00:30:56,060 --> 00:30:57,590 men w ap kòrèk la. 574 00:30:57,590 --> 00:31:00,040 Nou vle li ak ekri jouk pa gen okenn plis bytes. 575 00:31:00,040 --> 00:31:11,430 576 00:31:11,430 --> 00:31:11,735 OK. 577 00:31:11,735 --> 00:31:16,940 Se konsa, sa yo ta dwe reyèlman dwe dantle yon ti jan, paske yo ap anba a. 578 00:31:16,940 --> 00:31:17,470 Dwa? 579 00:31:17,470 --> 00:31:20,620 Jiskaske nou ap soti nan bytes, nou ap ale nan li nan dosye a sous ak ekri 580 00:31:20,620 --> 00:31:22,160 nan dosye a destinasyon. 581 00:31:22,160 --> 00:31:24,510 >> Lè sa a,, ki sa ki dènye a liy nan pseudocode? 582 00:31:24,510 --> 00:31:26,380 Yon moun ki pa nan bay m 'yon bagay ankò. 583 00:31:26,380 --> 00:31:29,270 584 00:31:29,270 --> 00:31:30,260 >> ELÈV 17: Fèmen dosye yo? 585 00:31:30,260 --> 00:31:31,510 >> JASON HIRSCHHORN: Egzakteman. 586 00:31:31,510 --> 00:31:36,370 587 00:31:36,370 --> 00:31:37,450 Fèmen dosye yo. 588 00:31:37,450 --> 00:31:38,400 Se konsa, gen nan pseudocode nou an. 589 00:31:38,400 --> 00:31:41,870 Mwen pral mete pseudocode a nan jdi, ak nan yon koup la minit nou 590 00:31:41,870 --> 00:31:44,626 ap Kòd sa a ansanm. 591 00:31:44,626 --> 00:33:55,280 592 00:33:55,280 --> 00:33:56,000 >> OK. 593 00:33:56,000 --> 00:33:58,290 Se pou nou jwenn te kòmanse kòm yon gwoup. 594 00:33:58,290 --> 00:33:59,940 Nishant, mwen gen nouvo dosye mwen. 595 00:33:59,940 --> 00:34:01,130 Mwen te jis louvri sa a leve. 596 00:34:01,130 --> 00:34:01,880 Untitled Document 1. 597 00:34:01,880 --> 00:34:05,490 Ki sa ki nan premye bagay la mwen ta dwe fè? 598 00:34:05,490 --> 00:34:07,040 >> NISHANT: Enkli bibliyotèk? 599 00:34:07,040 --> 00:34:08,219 >> JASON HIRSCHHORN: OK. 600 00:34:08,219 --> 00:34:11,070 Ki sa ki bibliyotèk? 601 00:34:11,070 --> 00:34:17,570 >> NISHANT: Stdio.h, stdlib.h, mwen kwè? 602 00:34:17,570 --> 00:34:18,000 >> JASON HIRSCHHORN: OK. 603 00:34:18,000 --> 00:34:21,592 Ki sa ki se stdlib pou? 604 00:34:21,592 --> 00:34:23,010 >> NISHANT: Mwen bliye. 605 00:34:23,010 --> 00:34:23,219 >> JASON HIRSCHHORN: OK. 606 00:34:23,219 --> 00:34:24,179 Se konsa, gen ladan yo stdio. 607 00:34:24,179 --> 00:34:28,630 Kisa mwen dwe fè menm anvan menm yo Mwen kòmanse kod? 608 00:34:28,630 --> 00:34:29,710 >> NISHANT: Ekri yon header? 609 00:34:29,710 --> 00:34:31,830 >> JASON HIRSCHHORN: Ki jan Mwen jwenn li ki gen koulè pal? 610 00:34:31,830 --> 00:34:34,060 >> [Entèrpozisyon vwa] 611 00:34:34,060 --> 00:34:35,040 >> NISHANT: Ki jan ou fè jwenn li gen koulè pal? 612 00:34:35,040 --> 00:34:38,060 >> JASON HIRSCHHORN: Ki jan Mwen koulè kodaj? 613 00:34:38,060 --> 00:34:38,570 >> NISHANT: Mwen pa konnen. 614 00:34:38,570 --> 00:34:38,830 Oh. 615 00:34:38,830 --> 00:34:39,389 Sove. 616 00:34:39,389 --> 00:34:39,929 >> JASON HIRSCHHORN: sove. 617 00:34:39,929 --> 00:34:40,270 Wi. 618 00:34:40,270 --> 00:34:41,760 Mwen ta dwe delivre l 'kòm yon. C. 619 00:34:41,760 --> 00:34:46,239 Se konsa, delivre l 'sou Desktop a kòm cp.c. 620 00:34:46,239 --> 00:34:47,280 Dous. 621 00:34:47,280 --> 00:34:51,199 Men, si mwen vle jwenn style plen pwen, ki sa ki ta dwe mwen 622 00:34:51,199 --> 00:34:53,085 gen ladan yo nan tèt la? 623 00:34:53,085 --> 00:34:58,390 >> NISHANT: Ou te kapab ekri non ou, non nan pwogram nan, ak objektif la 624 00:34:58,390 --> 00:34:59,640 nan pwogram nan kòm byen? 625 00:34:59,640 --> 00:35:08,400 626 00:35:08,400 --> 00:35:10,040 >> JASON HIRSCHHORN: sanble bon. 627 00:35:10,040 --> 00:35:10,470 Ekselan. 628 00:35:10,470 --> 00:35:12,940 Se konsa, ou te kòmanse nou sou pafètman. 629 00:35:12,940 --> 00:35:13,720 # Genyen ladan - 630 00:35:13,720 --> 00:35:15,365 nou pral tou ekri - 631 00:35:15,365 --> 00:35:30,050 632 00:35:30,050 --> 00:35:30,870 OK. 633 00:35:30,870 --> 00:35:33,520 Se konsa, mwen panse ke mwen tout mete yo ale. 634 00:35:33,520 --> 00:35:38,003 Ki moun ki gen liy lan premye nan kòd pou m '- oswa liy yo an premye nan kòd ki 635 00:35:38,003 --> 00:35:41,280 li pral pran yo satisfè premye nou an kòmantè nan pseudocode? 636 00:35:41,280 --> 00:35:41,985 Ou. 637 00:35:41,985 --> 00:35:48,780 >> ELÈV 18: Yo ta dwe pa li ka Int arg, ak Lè sa a, Char * argv? 638 00:35:48,780 --> 00:35:49,490 >> JASON HIRSCHHORN: Mwen panse ke w ap dwat. 639 00:35:49,490 --> 00:35:56,270 Se pou nou chanje li nan int prensipal yo, paren louvri, Int arg, vigil, Char * argv? 640 00:35:56,270 --> 00:35:57,150 Tankou sa? 641 00:35:57,150 --> 00:35:57,410 >> ELÈV 18: parantèz. 642 00:35:57,410 --> 00:35:58,260 >> JASON HIRSCHHORN: parantèz. 643 00:35:58,260 --> 00:35:59,860 Louvri bracket, fèmen bracket, fèmen paran yo. 644 00:35:59,860 --> 00:36:00,240 Pafè. 645 00:36:00,240 --> 00:36:02,160 Koulye a, mwen ka pran lòd-liy agiman. 646 00:36:02,160 --> 00:36:02,430 OK. 647 00:36:02,430 --> 00:36:04,250 Asire nou ap bay de dosye. 648 00:36:04,250 --> 00:36:07,905 Ou ka bay m 'ki yo tou. 649 00:36:07,905 --> 00:36:09,180 >> ELÈV 18: Si arg - 650 00:36:09,180 --> 00:36:11,060 yon sèl sa a pa egal a 3. 651 00:36:11,060 --> 00:36:14,360 >> JASON HIRSCHHORN: Si paren louvri arg pa egal 3? 652 00:36:14,360 --> 00:36:16,970 >> ELÈV 18: Yeah, ou retounen 1 oswa anyen. 653 00:36:16,970 --> 00:36:17,460 >> JASON HIRSCHHORN: M regrèt. 654 00:36:17,460 --> 00:36:19,120 >> ELÈV 18: Retounen 1 oswa anyen. 655 00:36:19,120 --> 00:36:20,270 >> JASON HIRSCHHORN: Retounen 1. 656 00:36:20,270 --> 00:36:22,230 OK? 657 00:36:22,230 --> 00:36:22,970 Great. 658 00:36:22,970 --> 00:36:24,290 Louvri tou de dosye. 659 00:36:24,290 --> 00:36:26,160 Ki moun ki ka ede m 'louvri tou de dosye? 660 00:36:26,160 --> 00:36:28,125 Ki moun ki pa ban m 'Kòd' fè ankò? 661 00:36:28,125 --> 00:36:31,510 662 00:36:31,510 --> 00:36:32,320 Kurt? 663 00:36:32,320 --> 00:36:36,145 >> KURT: Se konsa, tout bouchon F-I-L-E sous zetwal. 664 00:36:36,145 --> 00:36:39,390 665 00:36:39,390 --> 00:36:40,920 >> JASON HIRSCHHORN: Mwen pral pran soti vwayèl yo. 666 00:36:40,920 --> 00:36:41,570 Sa yo se fre. 667 00:36:41,570 --> 00:36:42,716 Se tankou tumblr. 668 00:36:42,716 --> 00:36:44,610 >> ELÈV 18: pèr fopen - 669 00:36:44,610 --> 00:36:46,612 >> JASON HIRSCHHORN: pèr fopen? 670 00:36:46,612 --> 00:36:49,870 >> ELÈV 18: Louvri paren, argv, louvri bracket. 671 00:36:49,870 --> 00:36:50,055 >> JASON HIRSCHHORN: Rete tann. 672 00:36:50,055 --> 00:36:50,240 M regrèt. 673 00:36:50,240 --> 00:36:51,050 Louvri paren. 674 00:36:51,050 --> 00:36:51,456 OK. 675 00:36:51,456 --> 00:36:53,080 >> ELÈV 18: Yeah. 676 00:36:53,080 --> 00:36:55,110 Argv sub 1. 677 00:36:55,110 --> 00:36:55,860 >> JASON HIRSCHHORN: Gwoup 1 an? 678 00:36:55,860 --> 00:36:56,140 >> ELÈV 18: Yeah. 679 00:36:56,140 --> 00:36:58,540 Argv bracket louvri 1 - 680 00:36:58,540 --> 00:36:59,730 repons lan se wi. 681 00:36:59,730 --> 00:37:06,470 Lè sa a, vigil, ak Lè sa a, louvri doub quote, r, doub quote, 682 00:37:06,470 --> 00:37:08,250 paren fèmen, pwenvigil. 683 00:37:08,250 --> 00:37:09,450 >> JASON HIRSCHHORN: dous. 684 00:37:09,450 --> 00:37:10,950 Ak sa ki sou youn nan lòt? 685 00:37:10,950 --> 00:37:16,030 >> ELÈV 18: trè menm jan, men olye nan S-R-C, ou ta rele l 'D-S-T. 686 00:37:16,030 --> 00:37:17,060 >> JASON HIRSCHHORN: oo! 687 00:37:17,060 --> 00:37:17,772 Mwen renmen sa. 688 00:37:17,772 --> 00:37:20,010 >> ELÈV 18: Jis D-S-T. Yeah. 689 00:37:20,010 --> 00:37:23,057 Lè sa a, argv, louvri bracket, 2. 690 00:37:23,057 --> 00:37:23,200 Yeah. 691 00:37:23,200 --> 00:37:26,720 Lè sa a, w olye pou yo r. 692 00:37:26,720 --> 00:37:27,620 Yeah. 693 00:37:27,620 --> 00:37:29,630 >> JASON HIRSCHHORN: Great. 694 00:37:29,630 --> 00:37:31,360 Next koup la liy yo. 695 00:37:31,360 --> 00:37:34,040 Epitou, si okenn moun gen bagay sa yo ajoute nan liy ke nou te fè, santi yo lib yo 696 00:37:34,040 --> 00:37:35,690 ajoute sa yo tou. 697 00:37:35,690 --> 00:37:37,520 Tcheke a asire w ni se NULL. 698 00:37:37,520 --> 00:37:41,450 Ki moun ki ka ban m 'kòd la mwen bezwen satisfè ke liy nan pseudocode? 699 00:37:41,450 --> 00:37:44,430 700 00:37:44,430 --> 00:37:45,870 Archer. 701 00:37:45,870 --> 00:37:58,645 >> ARCHER: Si src egal egal NULL oswa DST egal egal 702 00:37:58,645 --> 00:38:04,590 NULL, lè sa a ou retounen - 703 00:38:04,590 --> 00:38:07,130 704 00:38:07,130 --> 00:38:07,976 >> JASON HIRSCHHORN: Ki sa? 705 00:38:07,976 --> 00:38:08,890 >> ARCHER: Retounen 2? 706 00:38:08,890 --> 00:38:09,760 >> JASON HIRSCHHORN: Retounen 2. 707 00:38:09,760 --> 00:38:14,400 Se konsa, si louvri paren src egal egal NULL, oswa - 708 00:38:14,400 --> 00:38:15,590 kèlkeswa sa ki thing's - tiyo? 709 00:38:15,590 --> 00:38:16,346 Tiyo? 710 00:38:16,346 --> 00:38:17,140 Nou pral rele li tiyo. 711 00:38:17,140 --> 00:38:22,340 Tiyo, tiyo, DST egal egal NULL, retounen 2. 712 00:38:22,340 --> 00:38:23,900 OK? 713 00:38:23,900 --> 00:38:26,060 Jiskaske nou ap soti nan bytes - 714 00:38:26,060 --> 00:38:29,820 nou sòt de sote sou etap sa a soti nan pati nan pseudocode ale nan isit la. 715 00:38:29,820 --> 00:38:31,970 >> Men, jouk nou ap soti nan bytes - sa ki fè sa son tankou? 716 00:38:31,970 --> 00:38:34,680 Ki kalite C èstrikti - 717 00:38:34,680 --> 00:38:36,160 men mwen pa sèvi ak estrikti nan mo, paske nou ap ale nan kòmanse lè l sèvi avèk 718 00:38:36,160 --> 00:38:37,350 ke nan kèk lòt ka - 719 00:38:37,350 --> 00:38:39,495 Men, C zouti fè sa son tankou? 720 00:38:39,495 --> 00:38:39,970 >> ELÈV 19: yon bouk. 721 00:38:39,970 --> 00:38:40,980 >> JASON HIRSCHHORN: A bouk. 722 00:38:40,980 --> 00:38:43,060 Son tankou yon bouk. 723 00:38:43,060 --> 00:38:49,670 Se konsa, ki moun ki ka ban m 'liy lan premye nan kòd la bouk dwa isit la? 724 00:38:49,670 --> 00:38:56,320 725 00:38:56,320 --> 00:39:01,980 Ou kapab tou chwazi ki kalite bouk ou vle, si ou ban m ' 726 00:39:01,980 --> 00:39:03,215 liy sa a nan kòd. 727 00:39:03,215 --> 00:39:04,150 Gen twa kalite. 728 00:39:04,150 --> 00:39:06,530 Ou jwenn yo chwazi. 729 00:39:06,530 --> 00:39:08,080 Mwen ta sijere youn nan sa yo. 730 00:39:08,080 --> 00:39:08,410 Avi. 731 00:39:08,410 --> 00:39:09,230 Kilès nou vle? 732 00:39:09,230 --> 00:39:09,960 >> AVI: POU. 733 00:39:09,960 --> 00:39:11,460 >> JASON HIRSCHHORN: POU. 734 00:39:11,460 --> 00:39:15,180 >> AVI: Int mwen egal zewo. 735 00:39:15,180 --> 00:39:17,360 >> JASON HIRSCHHORN: OK. 736 00:39:17,360 --> 00:39:18,570 >> AVI: Pati sa a Mwen pa si sou yo. 737 00:39:18,570 --> 00:39:29,080 Men, mwen se mwens pase gwosè nan sous etwal? 738 00:39:29,080 --> 00:39:31,128 Mwen pa si de sa. 739 00:39:31,128 --> 00:39:32,580 >> JASON HIRSCHHORN: OK. 740 00:39:32,580 --> 00:39:35,870 >> AVI: Paske ou vle a gwosè nan yon dosye, dwa? 741 00:39:35,870 --> 00:39:41,090 >> JASON HIRSCHHORN: Se konsa, sa a pwobableman pa pral ban nou gwosè a nan aktyèl la 742 00:39:41,090 --> 00:39:43,010 pote nan bytes. 743 00:39:43,010 --> 00:39:47,680 Se konsa, ki lòt bagay nou te ka fè? 744 00:39:47,680 --> 00:39:48,810 Ki sa ki se yon lòt kalite bouk? 745 00:39:48,810 --> 00:39:50,180 Osinon èske nou dwe bwa ak bouk la POU? 746 00:39:50,180 --> 00:39:55,350 747 00:39:55,350 --> 00:39:57,900 >> ELÈV 20: Èske ou ta kapab fè yon bouk PANDAN? 748 00:39:57,900 --> 00:40:01,350 Lè sa a,, ki sa ou ta fè se you'd - 749 00:40:01,350 --> 00:40:03,930 paske nou genyen yon * Char pou dosye a. 750 00:40:03,930 --> 00:40:07,950 Se konsa, si nou jis kenbe incrementing ki jouk nou ta jwenn karaktè a NULL nan 751 00:40:07,950 --> 00:40:08,500 nan fen li? 752 00:40:08,500 --> 00:40:11,130 Oswa ki pa gen, se ke pa ki jan dosye travay? 753 00:40:11,130 --> 00:40:14,300 >> JASON HIRSCHHORN: Se konsa, nou kapab kenbe incrementing Char a * 754 00:40:14,300 --> 00:40:16,340 jiskaske nou jwenn NULL la - 755 00:40:16,340 --> 00:40:18,580 >> ELÈV 20: Esansyèlman kenbe ale N. pa karaktè jiskaske nou frape 756 00:40:18,580 --> 00:40:21,250 fen a nan dosye a. 757 00:40:21,250 --> 00:40:21,600 >> JASON HIRSCHHORN: Wi. 758 00:40:21,600 --> 00:40:22,560 Se konsa, sa a, se sa nou vle fè. 759 00:40:22,560 --> 00:40:24,545 Nou vle kenbe lekti, pèsonaj pa karaktè, jiskaske nou jwenn nan 760 00:40:24,545 --> 00:40:25,080 fen a nan dosye a. 761 00:40:25,080 --> 00:40:25,375 >> ELÈV 20: Yeah. 762 00:40:25,375 --> 00:40:25,860 Jwenn - 763 00:40:25,860 --> 00:40:28,540 sa ki nan fen a oswa siy arè nan fen yon dosye tèks. 764 00:40:28,540 --> 00:40:28,620 >> JASON HIRSCHHORN: OK. 765 00:40:28,620 --> 00:40:30,140 Se konsa, lè nou jwenn nan fen a nan dosye a - ki jan nou konnen nou te rive nan 766 00:40:30,140 --> 00:40:33,200 nan fen yon dosye? 767 00:40:33,200 --> 00:40:34,710 Si m 'ap rele - 768 00:40:34,710 --> 00:40:35,910 Se konsa, kite a etap tounen. 769 00:40:35,910 --> 00:40:37,550 Ki sa ki se yon fonksyon? 770 00:40:37,550 --> 00:40:39,360 Ann ale nan liy sa a isit la menm. 771 00:40:39,360 --> 00:40:40,630 Li soti nan dosye a sous. 772 00:40:40,630 --> 00:40:41,880 Ki moun ki ka ban m 'ki liy nan Kòd? 773 00:40:41,880 --> 00:40:45,592 774 00:40:45,592 --> 00:40:47,590 >> ELÈV 21: fskanf? 775 00:40:47,590 --> 00:40:49,110 >> JASON HIRSCHHORN: fskanf. 776 00:40:49,110 --> 00:40:49,510 OK. 777 00:40:49,510 --> 00:40:52,240 E si mwen vle li, trè espesyalman, yon sèl multiple? 778 00:40:52,240 --> 00:40:55,012 779 00:40:55,012 --> 00:40:56,860 >> ELÈV 21: Mwen pa konnen. 780 00:40:56,860 --> 00:40:57,110 >> JASON HIRSCHHORN: OK. 781 00:40:57,110 --> 00:40:59,380 Menm pi fasil pase fskanf - sa ki se yon - 782 00:40:59,380 --> 00:41:01,890 Mwen vle li nan yon dosye sous? 783 00:41:01,890 --> 00:41:03,720 Li soti nan yon dosye sous. 784 00:41:03,720 --> 00:41:04,850 Ki sa ki se yon fonksyon - yeah. 785 00:41:04,850 --> 00:41:05,380 >> ELÈV 22: Li nan frèd? 786 00:41:05,380 --> 00:41:06,070 >> JASON HIRSCHHORN: frèd. 787 00:41:06,070 --> 00:41:07,550 Mwen panse ke se pou yo rete ak ke yon moun pou kounye a. 788 00:41:07,550 --> 00:41:10,380 789 00:41:10,380 --> 00:41:13,650 Ki kalite agiman frèd pran? 790 00:41:13,650 --> 00:41:17,410 >> ELÈV 22: Pwobableman kalite a ranpli, ak Lè sa a, kote nan dosye a? 791 00:41:17,410 --> 00:41:19,550 >> JASON HIRSCHHORN: Ki sa mwen ka tape isit la nan dekouvri ki di ki kalite agiman 792 00:41:19,550 --> 00:41:20,950 frèd pran? 793 00:41:20,950 --> 00:41:23,710 >> PLIZYÈ ELÈV: Man frèd. 794 00:41:23,710 --> 00:41:24,740 >> JASON HIRSCHHORN: Man frèd ak fwrite. 795 00:41:24,740 --> 00:41:25,980 Sanble yo pann soti ansanm. 796 00:41:25,980 --> 00:41:29,589 Se konsa, frèd pran konbyen agiman? 797 00:41:29,589 --> 00:41:30,920 >> ELÈV 23: Kat. 798 00:41:30,920 --> 00:41:32,690 >> JASON HIRSCHHORN: Li pran kat agiman. 799 00:41:32,690 --> 00:41:41,100 Li pran yon konsèy, yon gwosè, e ke sa bagay, ki se etranj, ak kèk dosye. 800 00:41:41,100 --> 00:41:42,000 OK? 801 00:41:42,000 --> 00:41:43,990 Se pou yo li sou li dwa isit la. 802 00:41:43,990 --> 00:41:49,370 "Frèd nan fonksyon li n memb eleman nan done, chak gwosè bytes 803 00:41:49,370 --> 00:41:53,840 long, ki soti nan kouran an pwente nan pa kouran, sere yo nan kote a 804 00:41:53,840 --> 00:41:56,170 yo bay nan konsèy. " 805 00:41:56,170 --> 00:41:57,960 >> Se konsa, kat agiman. 806 00:41:57,960 --> 00:42:04,510 Poukisa nou pa mwen jis kopi sa a, epi kole li dwa isit la. 807 00:42:04,510 --> 00:42:10,060 808 00:42:10,060 --> 00:42:10,770 OK. 809 00:42:10,770 --> 00:42:13,673 Se konsa, ki moun ki ka kòmanse ranpli agiman sa yo pou m 'konsa? 810 00:42:13,673 --> 00:42:15,840 Avi. 811 00:42:15,840 --> 00:42:17,720 >> AVI: Pran soti anile la. 812 00:42:17,720 --> 00:42:20,530 Mete jis src. 813 00:42:20,530 --> 00:42:23,142 Pran soti konsèy ak etwal la. 814 00:42:23,142 --> 00:42:26,102 Mete src. 815 00:42:26,102 --> 00:42:27,050 Lè sa a, - 816 00:42:27,050 --> 00:42:28,500 >> JASON HIRSCHHORN: Se konsa, mwen pral sispann ou la, paske se sa kòrèk. 817 00:42:28,500 --> 00:42:32,590 818 00:42:32,590 --> 00:42:34,710 Ou se dwa ak src, men kote yo ta dwe src 'al jwenn? 819 00:42:34,710 --> 00:42:35,960 >> [Entèrpozisyon vwa] 820 00:42:35,960 --> 00:42:38,976 821 00:42:38,976 --> 00:42:41,610 >> JASON HIRSCHHORN: Li ta dwe ale sou isit la. 822 00:42:41,610 --> 00:42:43,790 Sa a src a - src nou an se yon kalite. 823 00:42:43,790 --> 00:42:44,610 Se pou yo gade isit la. 824 00:42:44,610 --> 00:42:49,610 Sa a se mande pou yon * di ki kalite DOSYE, nou aktyèlman anjeneral wè yo tankou sa. 825 00:42:49,610 --> 00:42:57,630 Se konsa, sa a se mande pou gen yon diskisyon nan tape DOSYE * rele kouran ki se src. 826 00:42:57,630 --> 00:42:58,480 OK? 827 00:42:58,480 --> 00:43:00,410 >> Ki sa ki gwosè de bagay sa yo fè nou vle li? 828 00:43:00,410 --> 00:43:03,340 Mwen te ban nou sa a nan la pwoblèm deskripsyon. 829 00:43:03,340 --> 00:43:04,370 >> ELÈV 24: Youn multiple nan yon tan. 830 00:43:04,370 --> 00:43:05,340 >> JASON HIRSCHHORN: Youn multiple. 831 00:43:05,340 --> 00:43:08,205 Kòman gwo se yon multiple? 832 00:43:08,205 --> 00:43:11,642 Gwosè li se nan bytes, se konsa sa ka mwen mete dwa genyen? 833 00:43:11,642 --> 00:43:12,910 >> ELÈV 25: Youn. 834 00:43:12,910 --> 00:43:14,730 >> JASON HIRSCHHORN: Youn. 835 00:43:14,730 --> 00:43:17,020 Dwat. 836 00:43:17,020 --> 00:43:19,940 Gwosè li se nan inite multiple, Se konsa, 1 se 1 multiple. 837 00:43:19,940 --> 00:43:22,284 Konbyen mwen vle li nan yon tan. 838 00:43:22,284 --> 00:43:23,520 >> ELÈV 26: Youn? 839 00:43:23,520 --> 00:43:24,270 >> JASON HIRSCHHORN: Youn nan bagay. 840 00:43:24,270 --> 00:43:28,540 Mwen vle li se yon sèl bagay ki gen yon gwosè 1, youn mòde nan yon tan. 841 00:43:28,540 --> 00:43:32,110 Ak ki kote mwen mete l ', yon fwa mwen li li l'? 842 00:43:32,110 --> 00:43:35,050 843 00:43:35,050 --> 00:43:36,510 >> ELÈV 27: Destinasyon? 844 00:43:36,510 --> 00:43:39,270 >> JASON HIRSCHHORN: Se konsa, mwen pa ka mete li tou dwat nan destinasyon. 845 00:43:39,270 --> 00:43:40,800 >> ELÈV 28: Ou se pral mete l 'nan yon twazyèm konsèy? 846 00:43:40,800 --> 00:43:41,780 >> ELÈV 27: Pou destinasyon an. 847 00:43:41,780 --> 00:43:42,270 >> JASON HIRSCHHORN: OK. 848 00:43:42,270 --> 00:43:42,630 Yeah. 849 00:43:42,630 --> 00:43:46,820 >> ELÈV 29: Ou ka deklare yon bagay yo aji kòm yon depo pou yon ti tan pi bonè. 850 00:43:46,820 --> 00:43:47,350 >> JASON HIRSCHHORN: OK. 851 00:43:47,350 --> 00:43:50,080 Ban m 'sa. 852 00:43:50,080 --> 00:43:53,930 >> ELÈV 29: Yon lòt dosye konsèy, petèt? 853 00:43:53,930 --> 00:43:54,220 >> JASON HIRSCHHORN: OK. 854 00:43:54,220 --> 00:43:55,585 Se konsa, sa a se anile zetwal - 855 00:43:55,585 --> 00:43:57,750 li nan yon kalite anile zetwal, se konsa li pa fè sa dwe fè yon konsèy dosye-a. 856 00:43:57,750 --> 00:44:02,520 Men, si M ap li yon sèl multiple, kote ta dwe yon bon plas 857 00:44:02,520 --> 00:44:03,850 nan magazen yon sèl multiple? 858 00:44:03,850 --> 00:44:04,660 >> ELÈV 29: Yon etalaj? 859 00:44:04,660 --> 00:44:05,770 >> JASON HIRSCHHORN: Yon etalaj. 860 00:44:05,770 --> 00:44:07,730 OK. 861 00:44:07,730 --> 00:44:14,040 Apre sa, ki lòt bagay se yon bagay ki nan jis gwosè yon sèl multiple? 862 00:44:14,040 --> 00:44:16,980 863 00:44:16,980 --> 00:44:18,060 >> ELÈV 30: A Char *? 864 00:44:18,060 --> 00:44:18,530 >> ELÈV 29: Yeah. 865 00:44:18,530 --> 00:44:19,880 >> JASON HIRSCHHORN: A Char * se pa yon sèl multiple. 866 00:44:19,880 --> 00:44:20,440 >> ELÈV 29: A Char. 867 00:44:20,440 --> 00:44:21,810 >> JASON HIRSCHHORN: A Char se youn multiple. 868 00:44:21,810 --> 00:44:22,920 Dwa? 869 00:44:22,920 --> 00:44:26,740 Se konsa, kite a rele tanpon sa a se yon jenerik non yo itilize pou bagay sa yo nan magazen 870 00:44:26,740 --> 00:44:27,910 yon bagay pou yon ti tan. 871 00:44:27,910 --> 00:44:30,880 Se konsa, mwen kreye yon zòn de defans. 872 00:44:30,880 --> 00:44:31,150 Dwa? 873 00:44:31,150 --> 00:44:32,990 Men, li pran yon anile *. 874 00:44:32,990 --> 00:44:38,660 Se konsa, petèt ou gen rezon, ke li ta dwe gen yon zòn de defans nan gwosè 0. 875 00:44:38,660 --> 00:44:41,070 Se konsa, li estoke yon sèl - 876 00:44:41,070 --> 00:44:41,280 dwat. 877 00:44:41,280 --> 00:44:43,560 >> Paske dwa sa-a isit la - Char tanpon se yon karaktè, men 878 00:44:43,560 --> 00:44:45,110 sa a pran yon anile * - 879 00:44:45,110 --> 00:44:45,870 yon konsèy. 880 00:44:45,870 --> 00:44:50,640 Se konsa, mwen te kapab fè sa a ak kounye a tanpon se yon konsèy. 881 00:44:50,640 --> 00:44:53,214 Ki lòt bagay mwen ta ka fè? 882 00:44:53,214 --> 00:44:55,775 >> ELÈV 31: Mete yon etwal akote Char. 883 00:44:55,775 --> 00:44:58,380 >> JASON HIRSCHHORN: mwen te kapab te kreye li Char *. 884 00:44:58,380 --> 00:45:00,216 OK. 885 00:45:00,216 --> 00:45:03,131 Ki sa ki nan yon lòt bagay mwen te kapab fè? 886 00:45:03,131 --> 00:45:04,050 Oswa kite a ale ak yon sèl sa a. 887 00:45:04,050 --> 00:45:05,740 Char * tanpon, Se konsa, sa Mwen mete nan isit la? 888 00:45:05,740 --> 00:45:08,290 889 00:45:08,290 --> 00:45:09,310 >> ELÈV 31: pezib. 890 00:45:09,310 --> 00:45:10,560 >> JASON HIRSCHHORN: pezib. 891 00:45:10,560 --> 00:45:12,640 892 00:45:12,640 --> 00:45:14,500 Tanpon se yon konsèy nan yon Char. 893 00:45:14,500 --> 00:45:19,480 Apre sa, nan ki kote, nou ap mete yon sèl multiple nan yon bagay nou te li. 894 00:45:19,480 --> 00:45:19,980 Yeah. 895 00:45:19,980 --> 00:45:20,700 Avi. 896 00:45:20,700 --> 00:45:21,230 >> AVI: Jis yon kesyon rapid. 897 00:45:21,230 --> 00:45:24,440 ou vle malok tanpon? 898 00:45:24,440 --> 00:45:25,930 >> JASON HIRSCHHORN: Ki moun ki kapab reponn kesyon ki? 899 00:45:25,930 --> 00:45:30,210 >> ELÈV 32: Bon, Li fè sa ki pa vrèman pwen nan anyen kounye a, se konsa - 900 00:45:30,210 --> 00:45:32,610 >> JASON HIRSCHHORN: Men, fè nou vle malok li? 901 00:45:32,610 --> 00:45:35,600 >> ELÈV 32: Si nou te fè li ki fason sa a, mwen devine, yeah, paske ou ta bezwen 902 00:45:35,600 --> 00:45:36,990 kèk kote pou l 'bay pwen nan. 903 00:45:36,990 --> 00:45:38,350 >> JASON HIRSCHHORN: Eske nou gen malok li? 904 00:45:38,350 --> 00:45:40,580 >> ELÈV 33: Si w ap ale nan sèvi ak li deyò nan bouk la. 905 00:45:40,580 --> 00:45:42,524 >> JASON HIRSCHHORN: Èske nou pwal rete sèvi ak li deyò nan bouk la? 906 00:45:42,524 --> 00:45:44,392 >> ELÈV 34: Wi. 907 00:45:44,392 --> 00:45:44,860 >> ELÈV 35: Rete tann. 908 00:45:44,860 --> 00:45:46,980 nou vle deklare li nan bouk la pi lwen pase? 909 00:45:46,980 --> 00:45:50,100 >> JASON HIRSCHHORN: Se konsa, mwen devine nou gen kèk PANDAN KE bouk pseudo isit la ke nou ap 910 00:45:50,100 --> 00:45:51,950 ap eseye figi konnen, se sa nou pa gen vinn ankò. 911 00:45:51,950 --> 00:45:54,710 912 00:45:54,710 --> 00:45:56,010 Nou pa bezwen malok li. 913 00:45:56,010 --> 00:45:59,310 Nou ap opere nan prensipal yo, li a sèlman pral yo dwe itilize andedan sa a bouk. 914 00:45:59,310 --> 00:46:00,540 Li pa bezwen egziste deyò sa a. 915 00:46:00,540 --> 00:46:02,340 >> Se konsa, li kapab yon varyab lokal yo. 916 00:46:02,340 --> 00:46:03,925 Ou gen yon konsèy yon varyab lokal yo. 917 00:46:03,925 --> 00:46:07,984 918 00:46:07,984 --> 00:46:09,590 >> ELÈV 36: Men, li la pa montre anyen. 919 00:46:09,590 --> 00:46:11,540 >> JASON HIRSCHHORN: Non, li pa initialisé nan anyen. 920 00:46:11,540 --> 00:46:12,790 Men, nou pa ap ale nan sèvi ak li tou. 921 00:46:12,790 --> 00:46:15,300 Nou pral mete yon bagay nan li premye fwa a nou sèvi ak li. 922 00:46:15,300 --> 00:46:16,580 Se konsa, ki sanble OK. 923 00:46:16,580 --> 00:46:17,780 Se konsa, nou pa bezwen malok isit la. 924 00:46:17,780 --> 00:46:19,360 Apre sa, mwen panse ke yo ke li OKE kòm se. 925 00:46:19,360 --> 00:46:24,350 926 00:46:24,350 --> 00:46:25,790 OK. 927 00:46:25,790 --> 00:46:27,190 Nou gen liy lan frèd. 928 00:46:27,190 --> 00:46:28,490 Se pou yo fè liy nan pwochen an. 929 00:46:28,490 --> 00:46:32,984 >> Si nou vle yo pou yo ekri yon dosye, ki sa ki yon bon fonksyon pou itilize pou fè sa? 930 00:46:32,984 --> 00:46:33,770 >> ELÈV 37: Fwrite? 931 00:46:33,770 --> 00:46:35,140 >> ELÈV 38: Fprintf? 932 00:46:35,140 --> 00:46:36,010 >> JASON HIRSCHHORN: Fprintf se youn. 933 00:46:36,010 --> 00:46:37,260 Ki sa ki nan yon lòt? 934 00:46:37,260 --> 00:46:37,680 >> ELÈV 39: Fwrite. 935 00:46:37,680 --> 00:46:38,510 >> JASON HIRSCHHORN: Fwrite. 936 00:46:38,510 --> 00:46:41,250 Apre sa, pou rezon nou an, fwrite, ki nou te wè isit la, se 937 00:46:41,250 --> 00:46:42,500 pwobableman chwa a pi byen. 938 00:46:42,500 --> 00:46:51,970 939 00:46:51,970 --> 00:46:53,950 Li pran kat agiman tou. 940 00:46:53,950 --> 00:46:57,570 Nishant, èske ou kapab bay m 'agiman yo? 941 00:46:57,570 --> 00:47:00,570 >> NISHANT: ale youn nan premye a yo dwe jis tanpon. 942 00:47:00,570 --> 00:47:02,210 >> JASON HIRSCHHORN: OK. 943 00:47:02,210 --> 00:47:06,752 >> NISHANT: yon sèl dezyèm lan an jis pral fè 1. 944 00:47:06,752 --> 00:47:09,510 Twazyèm yon sèl k ap pase yo dwe 1. 945 00:47:09,510 --> 00:47:11,470 Apre sa, yonn nan katriyèm a pwal DST. 946 00:47:11,470 --> 00:47:18,010 947 00:47:18,010 --> 00:47:19,550 >> JASON HIRSCHHORN: okenn moun gen nenpòt kesyon sou ki liy? 948 00:47:19,550 --> 00:47:28,370 949 00:47:28,370 --> 00:47:29,130 Ki sanble bon. 950 00:47:29,130 --> 00:47:29,590 OK. 951 00:47:29,590 --> 00:47:34,250 Se konsa, kounye a li sanble bagay la yon sèl nou ap manke - aktyèlman, se pou yo ekri 952 00:47:34,250 --> 00:47:35,090 liy sa a pase. 953 00:47:35,090 --> 00:47:36,300 Fèmen dosye yo. 954 00:47:36,300 --> 00:47:38,880 Ki moun ki ka fini nou moute ekri sa yo de dènye liy? 955 00:47:38,880 --> 00:47:39,120 Wi. 956 00:47:39,120 --> 00:47:39,850 Padon, sa ki nan non ou? 957 00:47:39,850 --> 00:47:40,580 >> LUCY: Lucy. 958 00:47:40,580 --> 00:47:41,580 >> JASON HIRSCHHORN: Lucy. 959 00:47:41,580 --> 00:47:47,560 >> LUCY: fkloz src ak Lè sa a, fkloz destinasyon. 960 00:47:47,560 --> 00:47:52,430 >> JASON HIRSCHHORN: fkloz, louvri paren, src, paren fèmen, pwenvigil. 961 00:47:52,430 --> 00:47:53,680 Apre sa, fkloz - 962 00:47:53,680 --> 00:47:57,560 963 00:47:57,560 --> 00:47:58,090 yeah? 964 00:47:58,090 --> 00:48:01,710 >> LUCY: Louvri parantèz, DST ak Lè sa a, pwenvigil. 965 00:48:01,710 --> 00:48:02,520 >> JASON HIRSCHHORN: Great. 966 00:48:02,520 --> 00:48:04,338 Ak sa ki mwen ta dwe gen ladan yo nan fen a? 967 00:48:04,338 --> 00:48:05,210 >> LUCY: Retounen 0. 968 00:48:05,210 --> 00:48:05,570 >> JASON HIRSCHHORN: Retounen 0. 969 00:48:05,570 --> 00:48:06,820 Mwen gen yo? 970 00:48:06,820 --> 00:48:10,560 971 00:48:10,560 --> 00:48:12,590 Jis yon kesyon. 972 00:48:12,590 --> 00:48:14,957 nou dwe gen ladan yo retounen 0? 973 00:48:14,957 --> 00:48:16,240 >> ELÈV YO PLIZYÈ: No 974 00:48:16,240 --> 00:48:16,430 >> JASON HIRSCHHORN: No 975 00:48:16,430 --> 00:48:18,090 Main fè li otomatikman si w ap resevwa nan fen an. 976 00:48:18,090 --> 00:48:20,580 Men mwen panse ke li la bèl yo gen ladan li klèman. 977 00:48:20,580 --> 00:48:23,860 Espesyalman lè n ap retounen lòt bagay sa yo nan tout pwogram nan. 978 00:48:23,860 --> 00:48:24,810 OK. 979 00:48:24,810 --> 00:48:26,230 Sa a se sa nou ap manke - 980 00:48:26,230 --> 00:48:28,520 PANDAN KE ki sa? 981 00:48:28,520 --> 00:48:31,630 Ki moun ki ka panse a kèk - 982 00:48:31,630 --> 00:48:35,240 gen kèk sans de sa ki te gen te kapab antre nan peyi a? 983 00:48:35,240 --> 00:48:37,350 Menm si li nan jis nan kèk pseudocode tankou lang? 984 00:48:37,350 --> 00:48:41,330 >> Ki sa ki nou reyèlman - ki sa nou ta vle ale jouk? 985 00:48:41,330 --> 00:48:41,980 Yeah, Lucy. 986 00:48:41,980 --> 00:48:43,240 >> LUCY: fen a nan dosye. 987 00:48:43,240 --> 00:48:44,990 >> JASON HIRSCHHORN: fen a nan dosye. 988 00:48:44,990 --> 00:48:49,280 Se konsa, sa ou vle di nan fen nan dosye? 989 00:48:49,280 --> 00:48:50,955 >> LUCY: Yon fwa ou rive nan nan fen nan dosye a, sispann. 990 00:48:50,955 --> 00:48:51,240 >> JASON HIRSCHHORN: OK. 991 00:48:51,240 --> 00:48:53,460 Se konsa, yon fwa nou rive nan fen an nan dosye a. 992 00:48:53,460 --> 00:48:56,893 Ki jan nou fè konnen lè nou te rive nan fen a nan dosye a? 993 00:48:56,893 --> 00:48:59,900 >> ELÈV 40: Mwen panse ke zòn de defans yo pral mete nan NULL. 994 00:48:59,900 --> 00:49:01,885 >> ELÈV 41: Buffer te deklare andedan bouk la. 995 00:49:01,885 --> 00:49:03,670 >> JASON HIRSCHHORN: Se konsa, ou panse ap tanpon dwe mete nan NULL. 996 00:49:03,670 --> 00:49:05,850 Poukisa ta pezib dwe mete nan nil? 997 00:49:05,850 --> 00:49:10,420 >> ELÈV 40: Paske lè ou frèd, w ap eseye mete 998 00:49:10,420 --> 00:49:13,528 pa gen anyen nan zòn de defans. 999 00:49:13,528 --> 00:49:13,980 >> JASON HIRSCHHORN: OK. 1000 00:49:13,980 --> 00:49:15,550 Se konsa, w ap panse frèd - 1001 00:49:15,550 --> 00:49:19,000 lè nou te rive nan nan fen a ranpli, ki sa ki frèd pral fè? 1002 00:49:19,000 --> 00:49:21,230 Mwen panse ke sa a, se kesyon an nou dwe konnen. 1003 00:49:21,230 --> 00:49:21,960 Ki sa ki frèd fè? 1004 00:49:21,960 --> 00:49:25,640 li mete NULL nan zòn de defans, oswa li fè yon lòt bagay? 1005 00:49:25,640 --> 00:49:27,510 Ki jan nou ka konnen ki sa li fè? 1006 00:49:27,510 --> 00:49:28,190 >> ELÈV 42: Man. 1007 00:49:28,190 --> 00:49:28,810 >> JASON HIRSCHHORN: Man. 1008 00:49:28,810 --> 00:49:32,280 Se konsa, kite yo gade sou isit la. 1009 00:49:32,280 --> 00:49:34,000 Retounen valè. 1010 00:49:34,000 --> 00:49:39,620 Sou siksè, frèd ak fwrite retounen nan nimewo nan atik li oswa ekri. 1011 00:49:39,620 --> 00:49:43,700 Nimewo sa a egal a kantite bytes transfere sèlman lè gwosè se 1. 1012 00:49:43,700 --> 00:49:47,780 Si yon erè fèt, oswa nan fen a dosye ki rive jwenn, valè retounen se yon 1013 00:49:47,780 --> 00:49:51,490 konte atik kout oswa 0. 1014 00:49:51,490 --> 00:49:57,860 >> Se konsa, pou rezon nou an, si rive frèd fen a nan dosye a, epi li soti nan 1015 00:49:57,860 --> 00:50:02,100 fen a nan dosye, pa gen anyen kite li, sa ki li pral retounen? 1016 00:50:02,100 --> 00:50:03,290 >> ELÈV 43: Zewo? 1017 00:50:03,290 --> 00:50:04,540 >> JASON HIRSCHHORN: Ki sa? 1018 00:50:04,540 --> 00:50:05,300 >> ELÈV 43: Zewo? 1019 00:50:05,300 --> 00:50:05,690 >> JASON HIRSCHHORN: Zewo. 1020 00:50:05,690 --> 00:50:06,940 Li pral retounen zewo. 1021 00:50:06,940 --> 00:50:09,360 1022 00:50:09,360 --> 00:50:13,010 Se konsa, nou konnen ke frèd, lè nou te gen rive nan fen an nan dosye a, ki pral 1023 00:50:13,010 --> 00:50:13,690 retounen zewo. 1024 00:50:13,690 --> 00:50:17,460 Ki jan nou ka sèvi ak sa nan avantaj nou an? 1025 00:50:17,460 --> 00:50:21,733 >> AVI: Ou ka deklare yon varyab deyò nan bouk la yo rele chèk la. 1026 00:50:21,733 --> 00:50:27,040 Si chèk egal - 1027 00:50:27,040 --> 00:50:28,190 pou kounye a - yon sèl. 1028 00:50:28,190 --> 00:50:28,920 >> JASON HIRSCHHORN: OK. 1029 00:50:28,920 --> 00:50:38,050 >> AVI: Lè sa a, ou ka mete yon SI deklarasyon dwa apre frèd li di si 1030 00:50:38,050 --> 00:50:42,600 frèd egal zewo - 1031 00:50:42,600 --> 00:50:43,850 pa gen okenn. 1032 00:50:43,850 --> 00:50:46,002 1033 00:50:46,002 --> 00:50:47,252 >> JASON HIRSCHHORN: Ki moun ki ka ede Avi deyò? 1034 00:50:47,252 --> 00:50:49,690 1035 00:50:49,690 --> 00:50:52,410 >> AVI: Ki sa ki nan valè a tounen pa frèd? 1036 00:50:52,410 --> 00:50:54,060 >> JASON HIRSCHHORN: Nou jis janbe sa a. 1037 00:50:54,060 --> 00:50:55,450 >> AVI: Ki jan ou fè reprezante li? 1038 00:50:55,450 --> 00:50:57,190 >> JASON HIRSCHHORN: Se konsa, li retounen - kite a gade isit la - li retounen yon 1039 00:50:57,190 --> 00:50:59,340 size_t, ki se esansyèlman yon nonb antye relatif. 1040 00:50:59,340 --> 00:51:02,240 1041 00:51:02,240 --> 00:51:03,410 Se konsa, li retounen yon nonb antye relatif. 1042 00:51:03,410 --> 00:51:05,160 Ak nan ka nou an, li pral retounen 1 oswa 0 - 1043 00:51:05,160 --> 00:51:08,760 1 si li li yon sèl bagay - yon sèl multiple, ak 0 si nou te rive nan fen an. 1044 00:51:08,760 --> 00:51:13,560 1045 00:51:13,560 --> 00:51:16,450 Se konsa, si frèd - 1046 00:51:16,450 --> 00:51:16,855 yeah? 1047 00:51:16,855 --> 00:51:20,330 >> ELÈV 45: pa Èske ou ka jis mete plen an frèd (tanpon, 1, 1, src) nan la 1048 00:51:20,330 --> 00:51:21,660 pandan y ap bouk? 1049 00:51:21,660 --> 00:51:26,510 >> JASON HIRSCHHORN: Se konsa, ou pwopoze fè sa a nan genyen? 1050 00:51:26,510 --> 00:51:27,600 >> [Entèrpozisyon vwa] 1051 00:51:27,600 --> 00:51:29,520 >> JASON HIRSCHHORN: Kenbe sou. 1052 00:51:29,520 --> 00:51:30,885 Se konsa, nou ap debarase nan sa. 1053 00:51:30,885 --> 00:51:33,300 Se konsa, w ap pwopoze mete frèd nan genyen? 1054 00:51:33,300 --> 00:51:35,457 Ki sa ki ta nou menm tou nou avanse pou pi si ou vle fè sa? 1055 00:51:35,457 --> 00:51:36,740 >> ELÈV 45: tanpon a deyò. 1056 00:51:36,740 --> 00:51:38,110 >> JASON HIRSCHHORN: Nou ta dwe tou avanse pou pi sa a soti isit la. 1057 00:51:38,110 --> 00:51:41,700 >> ELÈV 45: Men, fè sa toujou ap avanse pou li pou pi devan? 1058 00:51:41,700 --> 00:51:42,950 >> [Entèrpozisyon vwa] 1059 00:51:42,950 --> 00:51:46,540 1060 00:51:46,540 --> 00:51:47,470 >> JASON HIRSCHHORN: OK. 1061 00:51:47,470 --> 00:51:50,570 Se konsa, sa a se sa Okshar yo pwopoze yo. 1062 00:51:50,570 --> 00:51:51,930 Nou kreye tanpon nou an. 1063 00:51:51,930 --> 00:51:57,020 Nou PANDAN KE frèd, lè sa a nou fwrite. 1064 00:51:57,020 --> 00:51:59,760 Refleksyon sou sa a? 1065 00:51:59,760 --> 00:52:04,050 >> ELÈV 46: kesyon sèlman mwen an se, ta aktyèlman li egzekite frèd la komand yo ye? 1066 00:52:04,050 --> 00:52:06,175 >> JASON HIRSCHHORN: Gwo kesyon. 1067 00:52:06,175 --> 00:52:11,050 Lè w ap mete yon apèl fonksyon andedan nan yon kondisyon, fè sa 1068 00:52:11,050 --> 00:52:12,300 rele fonksyon egzekite? 1069 00:52:12,300 --> 00:52:15,760 1070 00:52:15,760 --> 00:52:17,770 Nou te wè egzanp sou sa a anvan. 1071 00:52:17,770 --> 00:52:24,900 1072 00:52:24,900 --> 00:52:25,660 Dwa? 1073 00:52:25,660 --> 00:52:26,125 >> ELÈV 46: OK. 1074 00:52:26,125 --> 00:52:26,590 Yeah. 1075 00:52:26,590 --> 00:52:30,140 Se konsa, li fè sa egzekite. 1076 00:52:30,140 --> 00:52:31,790 >> JASON HIRSCHHORN: Nou te wè bagay sa yo tankou sa anvan, kote nou gen yon 1077 00:52:31,790 --> 00:52:33,550 rele fonksyon andedan nan yon kondisyon. 1078 00:52:33,550 --> 00:52:35,540 ki rele fonksyon egzekite? 1079 00:52:35,540 --> 00:52:36,350 Wi. 1080 00:52:36,350 --> 00:52:37,410 Se konsa, repons lan se wi. 1081 00:52:37,410 --> 00:52:41,010 Sa a rele fonksyon ap egzekite. 1082 00:52:41,010 --> 00:52:42,418 Men, ankò, se li ki sa nou vle? 1083 00:52:42,418 --> 00:52:49,250 1084 00:52:49,250 --> 00:52:52,204 >> Ki sa ki se yon fason nou te ka konnen konnen si li nan sa nou vle? 1085 00:52:52,204 --> 00:52:53,470 >> ELÈV YO PLIZYÈ: Kouri li? 1086 00:52:53,470 --> 00:52:54,460 >> JASON HIRSCHHORN: Nou te kapab kouri li. 1087 00:52:54,460 --> 00:52:57,500 Men, anvan nou fè sa, nou te kapab tou rezon ki fè nan sa a. 1088 00:52:57,500 --> 00:52:57,920 Si - 1089 00:52:57,920 --> 00:53:01,920 di nou gen yon sèl multiple nan nou an pote, nou pral jwenn yo isit la, 1090 00:53:01,920 --> 00:53:02,660 nou pral jwenn nan Kòd sa a. 1091 00:53:02,660 --> 00:53:03,620 Sa a ap kouri. 1092 00:53:03,620 --> 00:53:07,780 frèd pral retounen yon sèl multiple ak magazen li nan zòn de defans la. 1093 00:53:07,780 --> 00:53:11,290 Lè sa a ap evalye a 1, dwa, apre yo fin l 'tounen lakay 1. 1094 00:53:11,290 --> 00:53:12,640 >> Se konsa, pandan 1. 1095 00:53:12,640 --> 00:53:15,325 sa vle di kòd la andedan bouk la pandan y ap gen pou siyen? 1096 00:53:15,325 --> 00:53:15,453 >> ELÈV 47: Yeah. 1097 00:53:15,453 --> 00:53:16,040 Se vre. 1098 00:53:16,040 --> 00:53:16,290 >> JASON HIRSCHHORN: Wi. 1099 00:53:16,290 --> 00:53:17,490 1 a se vre. 1100 00:53:17,490 --> 00:53:18,240 Li pa 0. 1101 00:53:18,240 --> 00:53:20,360 Se konsa, kòd la andedan isit la ap egzekite. 1102 00:53:20,360 --> 00:53:22,300 Se konsa, nou pral ekri sa a. 1103 00:53:22,300 --> 00:53:25,340 Nou pral avanse pou pi tounen nan sa a liy yon fwa ankò. 1104 00:53:25,340 --> 00:53:26,850 Koulye a, nou genyen - 1105 00:53:26,850 --> 00:53:28,550 nou ap nan fen a nan dosye nou yo. 1106 00:53:28,550 --> 00:53:30,980 Nou li soti nan fen a nan dosye nou yo, paske nou sèlman te gen yon sèl multiple nan li. 1107 00:53:30,980 --> 00:53:34,270 >> Frèd retounen 0, magazen yon bagay nan zòn de defans. 1108 00:53:34,270 --> 00:53:35,890 Mwen franchman pa konnen ki sa li magazen nan zòn de defans. 1109 00:53:35,890 --> 00:53:38,380 Nou te kapab pwobableman gade yo wè sa li fè. 1110 00:53:38,380 --> 00:53:40,130 Ke mwen onètman pa konnen. 1111 00:53:40,130 --> 00:53:43,090 Nou pa konnen, ki moun ki gen sousi sa ki li magazen nan zòn de defans? 1112 00:53:43,090 --> 00:53:44,010 Men, li retounen 0. 1113 00:53:44,010 --> 00:53:45,440 Epi yo pral pandan y ap 0 egzekite? 1114 00:53:45,440 --> 00:53:49,950 1115 00:53:49,950 --> 00:53:51,180 >> PANDAN KE 0 pa pral egzekite. 1116 00:53:51,180 --> 00:53:54,030 Se konsa, Lè sa a, nou pral deplase desann isit la. 1117 00:53:54,030 --> 00:53:58,870 Se konsa, kite a jwenn yon montre nan men si sa a se kòd la nou ta dwe kouri, oswa si nou 1118 00:53:58,870 --> 00:54:00,140 ta dwe fè chanjman an premye. 1119 00:54:00,140 --> 00:54:02,180 Se konsa, si ou panse - ou dwe vote. 1120 00:54:02,180 --> 00:54:06,885 Si ou panse ke nou ta dwe kouri Kòd sa a kòm se, tanpri leve men ou. 1121 00:54:06,885 --> 00:54:12,440 1122 00:54:12,440 --> 00:54:13,400 >> OK. 1123 00:54:13,400 --> 00:54:14,315 Genyen yon sèl - 1124 00:54:14,315 --> 00:54:17,260 ou gen yon kesyon, enkyetid? 1125 00:54:17,260 --> 00:54:18,080 Yeah. 1126 00:54:18,080 --> 00:54:21,240 >> ELÈV 48: Apre nou deplase tanpon deyò nan bouk la, fè nou 1127 00:54:21,240 --> 00:54:22,670 gen malok li? 1128 00:54:22,670 --> 00:54:23,310 >> JASON HIRSCHHORN: Gwo kesyon. 1129 00:54:23,310 --> 00:54:26,670 Apre nou avanse pou pi pezib deyò nan a bouk, nou dwe malok li? 1130 00:54:26,670 --> 00:54:28,400 Sa a se yon kesyon sijè ki abòde. 1131 00:54:28,400 --> 00:54:32,130 Si nou inisyalize pezib deyò nan sa a bouk, èske sa ap egziste 1132 00:54:32,130 --> 00:54:33,534 andedan nan bouk la? 1133 00:54:33,534 --> 00:54:35,230 >> ELÈV YO PLIZYÈ: Wi. 1134 00:54:35,230 --> 00:54:35,580 >> JASON HIRSCHHORN: Wi. 1135 00:54:35,580 --> 00:54:40,100 Grandè li yo kouvri andedan nan bouk la, , epi, reyèlman, anyen ki anba a li anndan 1136 00:54:40,100 --> 00:54:42,460 nan kòd sa a, ki gen ladan an bagay sa yo andedan isit la. 1137 00:54:42,460 --> 00:54:43,930 Se konsa, nou pa bezwen malok li. 1138 00:54:43,930 --> 00:54:47,766 Li se yon varyab lokal yo, ak grandè li yo toujou gen ladan bouk la. 1139 00:54:47,766 --> 00:54:49,540 >> ELÈV 49: nou bezwen libere li? 1140 00:54:49,540 --> 00:54:51,770 >> JASON HIRSCHHORN: Eske nou bezwen gratis tanpon? 1141 00:54:51,770 --> 00:54:53,860 >> ELÈV 49: Yeah, si nou pa fè sa malok. 1142 00:54:53,860 --> 00:54:55,750 >> JASON HIRSCHHORN: Eske nou bezwen gratis tanpon? 1143 00:54:55,750 --> 00:54:57,160 Nou pa fè sa. 1144 00:54:57,160 --> 00:55:01,280 Yon fwa ankò, li se yon varyab lokal yo, se konsa nou pa bezwen gratis li. 1145 00:55:01,280 --> 00:55:02,170 OK. 1146 00:55:02,170 --> 00:55:03,480 Ann wè sa ki rive. 1147 00:55:03,480 --> 00:55:17,290 1148 00:55:17,290 --> 00:55:18,220 Se konsa, li uninitialized. 1149 00:55:18,220 --> 00:55:20,830 Sa se sa ki te yon bagay ki Marcus pwopoze pi bonè. 1150 00:55:20,830 --> 00:55:25,340 Se konsa, nou genyen ki erè, varyab tanpon se uninitialized lè yo itilize isit la. 1151 00:55:25,340 --> 00:55:26,590 >> Ki jan nou ka ranje sa a? 1152 00:55:26,590 --> 00:55:29,460 1153 00:55:29,460 --> 00:55:30,960 >> ELÈV 50: malok li? 1154 00:55:30,960 --> 00:55:31,770 >> ELÈV 51: pèr NULL? 1155 00:55:31,770 --> 00:55:33,000 >> ELÈV 52: Di tanpon egal NULL. 1156 00:55:33,000 --> 00:55:34,250 >> JASON HIRSCHHORN: OK. 1157 00:55:34,250 --> 00:55:40,040 1158 00:55:40,040 --> 00:55:40,770 Sanble bon. 1159 00:55:40,770 --> 00:55:42,410 Nou gen li kounye a. 1160 00:55:42,410 --> 00:55:45,630 Se pou yo kreye yon bagay eseye kopye. 1161 00:55:45,630 --> 00:56:08,990 1162 00:56:08,990 --> 00:56:10,490 Se konsa, nou gen dosye tèks nou an. 1163 00:56:10,490 --> 00:56:11,740 Ki jan nou ka kouri pwogram sa a? 1164 00:56:11,740 --> 00:56:14,140 1165 00:56:14,140 --> 00:56:15,472 Yeah. 1166 00:56:15,472 --> 00:56:22,230 >> ELÈV 53: Ou kapab fè dot koupe CP, test.txt. 1167 00:56:22,230 --> 00:56:25,140 Lè sa a, ou ka non yon lòt dosye kote li pral sere nan. 1168 00:56:25,140 --> 00:56:25,510 >> JASON HIRSCHHORN: OK. 1169 00:56:25,510 --> 00:56:27,380 Nou pral rele li out.txt. 1170 00:56:27,380 --> 00:56:28,630 Cool? 1171 00:56:28,630 --> 00:56:31,700 1172 00:56:31,700 --> 00:56:34,320 Seg fay. 1173 00:56:34,320 --> 00:56:35,570 Refleksyon sou fay la seg? 1174 00:56:35,570 --> 00:56:40,900 1175 00:56:40,900 --> 00:56:41,390 Sa a se gwo. 1176 00:56:41,390 --> 00:56:45,040 Ki jan nou ka chèche konnen ki kote fay la seg se? 1177 00:56:45,040 --> 00:56:45,680 Ki sa? 1178 00:56:45,680 --> 00:56:45,990 >> ELÈV 54: gdb. 1179 00:56:45,990 --> 00:56:47,240 >> JASON HIRSCHHORN: gdb. 1180 00:56:47,240 --> 00:56:51,400 1181 00:56:51,400 --> 00:56:55,300 Nou kouri gdb pa ekri koupe gdb dot, non an nan pwogram nou an. 1182 00:56:55,300 --> 00:56:57,020 Pa gen liy lòd agiman la. 1183 00:56:57,020 --> 00:56:59,570 Nou pral mete yon breakpoint nan prensipal la. 1184 00:56:59,570 --> 00:57:02,190 Si m 'vle kòmanse gdb, ki sa mwen fè? 1185 00:57:02,190 --> 00:57:02,730 >> ELÈV 55: R. 1186 00:57:02,730 --> 00:57:08,910 >> JASON HIRSCHHORN: R. Lè sa a, ki sa? 1187 00:57:08,910 --> 00:57:09,400 >> ELÈV 55: Agiman yo? 1188 00:57:09,400 --> 00:57:10,650 >> JASON HIRSCHHORN: Lè sa a, nan lòd-liy agiman. 1189 00:57:10,650 --> 00:57:15,890 1190 00:57:15,890 --> 00:57:17,120 Se pou nou mache nan. 1191 00:57:17,120 --> 00:57:19,090 N se jis pran m 'liy pa liy. 1192 00:57:19,090 --> 00:57:21,450 Mwen pral ale jouk Mwen jwenn fòt seg m 'yo. 1193 00:57:21,450 --> 00:57:22,700 Genyen fòt seg m 'yo. 1194 00:57:22,700 --> 00:57:24,960 1195 00:57:24,960 --> 00:57:27,875 Li sanble ke frèd ki te koze fòt seg m 'yo. 1196 00:57:27,875 --> 00:57:30,570 1197 00:57:30,570 --> 00:57:32,770 Mwen konnen frèd ki te koze fòt seg m 'yo, paske sa ki te nan 1198 00:57:32,770 --> 00:57:34,950 liy nou jis egzekite. 1199 00:57:34,950 --> 00:57:36,530 >> Apre sa, bagay la sèlman ki te pase nan ki liy - 1200 00:57:36,530 --> 00:57:37,520 de bagay sa yo te pase. 1201 00:57:37,520 --> 00:57:40,610 Frèd te ale, ak Lè sa a, nou tout nou te fè kèk chèk ti tan. 1202 00:57:40,610 --> 00:57:44,820 Mwen se vle parye ke pandan ke an tcheke pa te sa ki lakòz fòt seg m 'yo. 1203 00:57:44,820 --> 00:57:46,950 Gen plis chans, frèd te sa ki lakòz fòt seg m 'yo. 1204 00:57:46,950 --> 00:57:49,260 Mwen menm mwen te wè yon bagay isit la, memcopy. 1205 00:57:49,260 --> 00:57:50,500 >> Memwa kopi. 1206 00:57:50,500 --> 00:57:53,820 Son tankou k ap deplase memwa soti nan yon sèl kote nan lòt la. 1207 00:57:53,820 --> 00:57:56,890 Son tankou yon bagay ki ta ka rive nan frèd, petèt kèk memwa 1208 00:57:56,890 --> 00:57:58,910 k ap soti nan isit la yo isit la. 1209 00:57:58,910 --> 00:58:01,740 1210 00:58:01,740 --> 00:58:03,860 Se pou yo ale nan sa a ankò. 1211 00:58:03,860 --> 00:58:06,900 Kouman pou mwen kòmanse li sou epi kouri l 'ankò? 1212 00:58:06,900 --> 00:58:08,092 Yeah. 1213 00:58:08,092 --> 00:58:15,140 >> ELÈV 56: ou bezwen mete yon komersyal anvan tanpon? 1214 00:58:15,140 --> 00:58:17,800 >> JASON HIRSCHHORN: Se konsa, comercial anvan tanpon va fè m 'adrès ki nan 1215 00:58:17,800 --> 00:58:22,330 tanpon, ki se yon karaktè *. 1216 00:58:22,330 --> 00:58:25,250 Se pou yo kouri nan sa a yon lòt fwa ankò. 1217 00:58:25,250 --> 00:58:28,248 Kouman pou mwen kouri atravè li yon lòt fwa ankò? 1218 00:58:28,248 --> 00:58:29,210 >> ELÈV 57: Èske ou ka jis tape kouri ankò? 1219 00:58:29,210 --> 00:58:32,050 >> JASON HIRSCHHORN: Jis tape kouri ankò. 1220 00:58:32,050 --> 00:58:33,415 Se konsa, nou pa ap ale nan egzekite liy sa a. 1221 00:58:33,415 --> 00:58:36,250 1222 00:58:36,250 --> 00:58:39,240 Se konsa, tanpon se yon konsèy NULL. 1223 00:58:39,240 --> 00:58:40,490 Kòrèk? 1224 00:58:40,490 --> 00:58:45,870 1225 00:58:45,870 --> 00:58:47,060 Li se montre - se pou yo wè. 1226 00:58:47,060 --> 00:58:48,500 Si nou gen nou yo - 1227 00:58:48,500 --> 00:58:50,430 desine yon foto rapid sou sa a. 1228 00:58:50,430 --> 00:58:53,500 Èske tout moun wè si Mwen ekri sou isit la? 1229 00:58:53,500 --> 00:59:02,890 >> Se konsa, nan chemine a, nou gen yon lokal varyab ak sa yo rele li tanpon, ak 1230 00:59:02,890 --> 00:59:08,230 li nan yon konsèy nan yon Char. 1231 00:59:08,230 --> 00:59:10,325 Ki sa ki adrès la se karaktè sa a nan? 1232 00:59:10,325 --> 00:59:12,550 >> ELÈV 58: 0x0. 1233 00:59:12,550 --> 00:59:13,400 >> JASON HIRSCHHORN: Dwa. 1234 00:59:13,400 --> 00:59:14,200 Sa a ki sa sa a se. 1235 00:59:14,200 --> 00:59:17,600 Nan isit la, andedan zòn de defans, se ki estoke 0x0. 1236 00:59:17,600 --> 00:59:20,480 Sa a ki sa nou genyen - an konfigirasyon nou gen kounye a. 1237 00:59:20,480 --> 00:59:27,540 Se konsa, liy sa a, frèd, mete yon bagay soti nan sous ki kote? 1238 00:59:27,540 --> 00:59:30,560 Nan bwat sa a oswa bwat sa a? 1239 00:59:30,560 --> 00:59:31,060 Ki bwat? 1240 00:59:31,060 --> 00:59:33,290 Kite bwat oswa dwa bwat? 1241 00:59:33,290 --> 00:59:34,750 Sa a bwat dwat. 1242 00:59:34,750 --> 00:59:38,440 >> Li swiv konsèy la, ak mete l 'nan isit la. 1243 00:59:38,440 --> 00:59:42,620 Lè nou eseye ak touche memwa nan kote 0, ki sa nou jwenn? 1244 00:59:42,620 --> 00:59:45,050 Yon segmentation fay. 1245 00:59:45,050 --> 00:59:46,550 Sa a erè a nou gen kounye a. 1246 00:59:46,550 --> 00:59:46,970 Yeah. 1247 00:59:46,970 --> 00:59:48,410 >> ELÈV 59: pa ou gen yo mete zetwal tanpon? 1248 00:59:48,410 --> 00:59:49,180 Wi ou non? 1249 00:59:49,180 --> 00:59:50,050 Pou frèd? 1250 00:59:50,050 --> 00:59:51,450 >> JASON HIRSCHHORN: Se konsa, frèd pran yon konsèy. 1251 00:59:51,450 --> 00:59:54,920 1252 00:59:54,920 --> 00:59:55,900 Se konsa, li pase nan zòn de defans. 1253 00:59:55,900 --> 00:59:58,980 Lè sa a, li pral de-referans li yon kote andedan frèd. 1254 00:59:58,980 --> 01:00:00,700 Men, ankò, nou te wè, li pran yon konsèy. 1255 01:00:00,700 --> 01:00:02,560 Nou pa bezwen pase li zetwal tanpon. 1256 01:00:02,560 --> 01:00:05,350 Ki ta ka pase li tou sa la isit la. 1257 01:00:05,350 --> 01:00:07,980 Apre sa, ki ta pwobableman ban nou yon erè paske nou ap de-Référansman li. 1258 01:00:07,980 --> 01:00:08,150 >> Dwa? 1259 01:00:08,150 --> 01:00:10,690 Lè nou de-referans konsèy sa a, lè nou eseye jwenn aksè nan kote sa a, 1260 01:00:10,690 --> 01:00:13,140 nou ap vin yon erè - nou fòt segmentation. 1261 01:00:13,140 --> 01:00:15,800 Se konsa, - 1262 01:00:15,800 --> 01:00:16,690 Wouch. 1263 01:00:16,690 --> 01:00:19,090 Nou pral kite soti nan gdb. 1264 01:00:19,090 --> 01:00:20,160 Liy nou an - 1265 01:00:20,160 --> 01:00:22,990 pwoblèm nou yo - se dwa isit la sou liy sa a. 1266 01:00:22,990 --> 01:00:26,410 Lè li nan yon pwoblèm paske nan liy sa a. 1267 01:00:26,410 --> 01:00:31,780 >> Ki jan nou ka kreye yon bwat ki se aksesib nan frèd. 1268 01:00:31,780 --> 01:00:31,980 Dwa? 1269 01:00:31,980 --> 01:00:35,190 Nou bezwen yo kreye yon bwat sa a, se yon sèl multiple gwo, gwosè a nan yon Char. 1270 01:00:35,190 --> 01:00:38,590 Men, nou bezwen ke bwat yo dwe aksesib lè sa a fonksyon ègzekutra. 1271 01:00:38,590 --> 01:00:39,390 Se konsa, kote - 1272 01:00:39,390 --> 01:00:39,640 yeah. 1273 01:00:39,640 --> 01:00:40,440 Nenpòt ki ide? 1274 01:00:40,440 --> 01:00:43,615 >> ELÈV 60: Jis mete l 'kòm nenpòt ki karaktè o aza. 1275 01:00:43,615 --> 01:00:49,150 1276 01:00:49,150 --> 01:00:51,640 Ou menm, fè egal tanpon Char karaktè la. 1277 01:00:51,640 --> 01:00:53,795 Lè sa a,, lè nou fin pezib gen - 1278 01:00:53,795 --> 01:00:54,110 >> JASON HIRSCHHORN: Rete tann. 1279 01:00:54,110 --> 01:00:55,110 Char pezib? 1280 01:00:55,110 --> 01:00:55,880 Se konsa, pa gen okenn zetwal? 1281 01:00:55,880 --> 01:00:56,390 >> ELÈV 60: Yeah. 1282 01:00:56,390 --> 01:00:58,560 Pran soti etwal la. 1283 01:00:58,560 --> 01:01:00,690 Pèr yon karaktè o aza. 1284 01:01:00,690 --> 01:01:01,460 >> JASON HIRSCHHORN: OK. 1285 01:01:01,460 --> 01:01:02,420 Se konsa, ban m 'yon sèl. 1286 01:01:02,420 --> 01:01:03,170 >> ELÈV 60: Tankou yon oswa yon bagay. 1287 01:01:03,170 --> 01:01:06,160 Lè sa a, lè ou gen tanpon la, ou sèvi ak yon - 1288 01:01:06,160 --> 01:01:06,420 >> ELÈV 61: Star? 1289 01:01:06,420 --> 01:01:07,650 Oh okenn, comercial la. 1290 01:01:07,650 --> 01:01:09,000 >> ELÈV 60: Sèvi ak komersyal la. 1291 01:01:09,000 --> 01:01:09,470 >> JASON HIRSCHHORN: OK. 1292 01:01:09,470 --> 01:01:11,320 Ak sa ki sou nan fwrite? 1293 01:01:11,320 --> 01:01:14,150 >> ELÈV 60: Sèvi ak komersyal la ankò. 1294 01:01:14,150 --> 01:01:14,320 >> JASON HIRSCHHORN: Tout dwat. 1295 01:01:14,320 --> 01:01:20,970 Se konsa, lide ou ye, se nou kreye yon karaktè ak mete yon bagay nan li, e Lè sa a, 1296 01:01:20,970 --> 01:01:22,612 ekri ak sa yo ki Char. 1297 01:01:22,612 --> 01:01:23,760 >> ELÈV 60: Yeah. 1298 01:01:23,760 --> 01:01:25,916 >> JASON HIRSCHHORN: Ki sa ki moun panse? 1299 01:01:25,916 --> 01:01:27,770 >> ELÈV 62: Li konplike. 1300 01:01:27,770 --> 01:01:28,460 >> JASON HIRSCHHORN: OK. 1301 01:01:28,460 --> 01:01:29,760 Se pou yo rale yo mete deyò. 1302 01:01:29,760 --> 01:01:35,720 Se konsa, tan sa a, mwen pral trase sa a nan wouj sou chemine a isit la, ak Lè sa a, nou 1303 01:01:35,720 --> 01:01:36,410 ap gen - 1304 01:01:36,410 --> 01:01:36,822 Ooh! 1305 01:01:36,822 --> 01:01:38,060 M regrèt. 1306 01:01:38,060 --> 01:01:45,930 Se konsa, tan sa a nou gen yon bagay yo rele pezib, epi li sou chemine a. 1307 01:01:45,930 --> 01:01:48,430 Kòrèk? 1308 01:01:48,430 --> 01:01:51,520 Apre sa, n ap ekonomize nan li a, okòmansman. 1309 01:01:51,520 --> 01:01:53,830 >> Lè sa a, nou gen apèl nou yo frèd. 1310 01:01:53,830 --> 01:02:01,300 Ki sa ki frèd se li pran yon multiple soti nan dosye nou yo ak mete l 'yon kote. 1311 01:02:01,300 --> 01:02:04,570 Li mete l 'nan tou sa la bagay la montre. 1312 01:02:04,570 --> 01:02:09,130 Oke, anvan nou te gen adrès sa a - 1313 01:02:09,130 --> 01:02:10,250 0x0. 1314 01:02:10,250 --> 01:02:13,349 Kounye a ki sa adrès nou genyen? 1315 01:02:13,349 --> 01:02:14,650 >> ELÈV 63: Tou sa adrès tanpon se. 1316 01:02:14,650 --> 01:02:15,970 >> JASON HIRSCHHORN: Tou sa adrès tanpon se. 1317 01:02:15,970 --> 01:02:22,370 Li la pwobableman pral fè yon bagay tankou sa. 1318 01:02:22,370 --> 01:02:26,950 Pwobableman ale nan kòmanse avèk yon b ak yon f, ak Lè sa a, gen sis lòt 1319 01:02:26,950 --> 01:02:27,970 ekzadesimal chif. 1320 01:02:27,970 --> 01:02:28,480 pa gen pwoblèm. 1321 01:02:28,480 --> 01:02:29,470 Gen kèk adrès. 1322 01:02:29,470 --> 01:02:31,410 Apre sa, n ap pase adrès ki pous 1323 01:02:31,410 --> 01:02:34,790 >> Apre sa, nou pral mete yon sèl nou bagay multiple nan adrès sa a. 1324 01:02:34,790 --> 01:02:38,470 Se konsa, nou ap ale nan mete yon sèl nou bagay multiple andedan isit la. 1325 01:02:38,470 --> 01:02:40,800 Lè sa a, nou pral ekri ki soti nan sa ki nan tout tan tout tan andedan isit la. 1326 01:02:40,800 --> 01:02:43,425 1327 01:02:43,425 --> 01:02:45,380 okenn moun gen nenpòt kesyon sou sa? 1328 01:02:45,380 --> 01:02:50,990 1329 01:02:50,990 --> 01:02:54,690 Ki moun ki panse kòd sa a ap travay? 1330 01:02:54,690 --> 01:02:56,020 >> Leve men ou si ou panse Kòd sa a ap travay. 1331 01:02:56,020 --> 01:02:57,270 Ou dwe pran yon pozisyon. 1332 01:02:57,270 --> 01:03:00,670 1333 01:03:00,670 --> 01:03:02,500 Apre sa, ki moun ki panse kòd sa a pa pral travay? 1334 01:03:02,500 --> 01:03:04,610 Leve men ou. 1335 01:03:04,610 --> 01:03:06,750 Tout lòt moun yo ta dwe ogmante men yo. 1336 01:03:06,750 --> 01:03:07,670 OK. 1337 01:03:07,670 --> 01:03:09,390 Michael, ki bò ou kanpe? 1338 01:03:09,390 --> 01:03:10,680 >> MICHAEL: Mwen pa ka deside. 1339 01:03:10,680 --> 01:03:12,070 Kalite nan mitan yo. 1340 01:03:12,070 --> 01:03:12,736 >> JASON HIRSCHHORN: Ou se nan mitan yo. 1341 01:03:12,736 --> 01:03:13,092 Chwazi yon. 1342 01:03:13,092 --> 01:03:14,400 >> MICHAEL: Mwen pral gen lafwa ak di ke li pral travay. 1343 01:03:14,400 --> 01:03:14,660 >> JASON HIRSCHHORN: OK. 1344 01:03:14,660 --> 01:03:16,047 Ou ap gen konfyans ak di li ap travay? 1345 01:03:16,047 --> 01:03:26,490 1346 01:03:26,490 --> 01:03:27,020 Kisa ki te pase? 1347 01:03:27,020 --> 01:03:28,270 >> [Entèrpozisyon vwa] 1348 01:03:28,270 --> 01:03:35,170 1349 01:03:35,170 --> 01:03:35,950 >> JASON HIRSCHHORN: Pa gen fay seg. 1350 01:03:35,950 --> 01:03:40,320 Ki jan nou ka tcheke yo wè si de bagay sa yo yo egal? 1351 01:03:40,320 --> 01:03:42,060 De dosye egal. 1352 01:03:42,060 --> 01:03:43,300 >> ELÈV 64: diff. 1353 01:03:43,300 --> 01:03:45,490 >> JASON HIRSCHHORN: diff. 1354 01:03:45,490 --> 01:03:51,630 Chèk diff pou diferans ki genyen ant de dosye, epi si li retounen 1355 01:03:51,630 --> 01:03:52,890 pa gen anyen, yo ap idantik. 1356 01:03:52,890 --> 01:03:59,030 Men, si nou louvri moute, nou jwenn dosye nou yo. 1357 01:03:59,030 --> 01:04:00,490 Se konsa, sa ki te solisyon an kòrèk. 1358 01:04:00,490 --> 01:04:01,780 Se pou yo gade tounen nan li yon lòt fwa ankò. 1359 01:04:01,780 --> 01:04:04,080 Nou aktyèlman pa t 'menm bezwen inisyalize li. 1360 01:04:04,080 --> 01:04:05,520 >> Li ta pwobableman gade yon ti jan cleaner si ou pa t 'mete 1361 01:04:05,520 --> 01:04:07,680 yon bagay o aza an la. 1362 01:04:07,680 --> 01:04:13,070 Pwen an ke yo te, ou te bezwen yo kreye kèk espas nan magazen yon bagay soti nan 1363 01:04:13,070 --> 01:04:15,530 frèd epi pran yon bagay soti nan fwrite. 1364 01:04:15,530 --> 01:04:18,400 Apre sa, ke bagay te dwe swa yon lokal varyab sou chemine a - ou 1365 01:04:18,400 --> 01:04:19,890 te kapab te malloc'd kèk espas. 1366 01:04:19,890 --> 01:04:23,030 >> Se konsa, nou aktyèlman te kapab gen ekri malok isit la, ak 1367 01:04:23,030 --> 01:04:25,420 ki ta yo te travay. 1368 01:04:25,420 --> 01:04:28,660 Lè sa a, nou ta yo te estoke bagay sa yo nou yon kote sou pil wòch la. 1369 01:04:28,660 --> 01:04:31,940 Men, sa a se aktyèlman, pwobableman, solisyon an pi elegant. 1370 01:04:31,940 --> 01:04:34,490 Jis kreye kèk espas sou chemine a pou bagay sa yo ale. 1371 01:04:34,490 --> 01:04:37,690 1372 01:04:37,690 --> 01:04:38,990 >> Mwen ta gen de lòt kòmantè. 1373 01:04:38,990 --> 01:04:44,650 Si ou te pran vire nan sa a, epi Lè sa a, jwenn bay nòt sou sa a, kòmantè mwen 1374 01:04:44,650 --> 01:04:47,400 ta dwe jan sa a. 1375 01:04:47,400 --> 01:04:54,300 Sa yo 1 nan isit la, m ', gade tankou nimewo majik. 1376 01:04:54,300 --> 01:04:56,860 Sa a 1, an tèm de frèd, fè sans. 1377 01:04:56,860 --> 01:04:59,580 Sa a ki kantite bagay li ak ekri. 1378 01:04:59,580 --> 01:05:03,740 >> Men, yon sèl sa a dwa isit la ta dwe pwobableman ap yon lòt bagay. 1379 01:05:03,740 --> 01:05:05,180 Se konsa, sa se yon sèl solisyon? 1380 01:05:05,180 --> 01:05:06,545 >> ELÈV 65: Kantite moun ki nan multiple. 1381 01:05:06,545 --> 01:05:10,100 1382 01:05:10,100 --> 01:05:11,080 >> JASON HIRSCHHORN: Menm jan ak sa? 1383 01:05:11,080 --> 01:05:13,130 >> ELÈV 65: Kantite moun ki nan Char. 1384 01:05:13,130 --> 01:05:13,820 >> JASON HIRSCHHORN: Kantite moun ki nan Char. 1385 01:05:13,820 --> 01:05:15,290 Yeah, multiple se pa yon kalite. 1386 01:05:15,290 --> 01:05:16,320 Se konsa, gwosè nan travay Char. 1387 01:05:16,320 --> 01:05:30,270 Nou te kapab genyen, nan tèt yo nan Kòd nou an, # yo defini sa. 1388 01:05:30,270 --> 01:05:33,410 Rele yon bagay multiple ak li vrèman yon karaktè. 1389 01:05:33,410 --> 01:05:37,675 Aktyèlman, yon apwòch menm pi bon ta ka yo te sa a - 1390 01:05:37,675 --> 01:05:39,391 wen. 1391 01:05:39,391 --> 01:05:40,780 Okenn moun konnen ki sa ki se? 1392 01:05:40,780 --> 01:05:44,388 1393 01:05:44,388 --> 01:05:44,840 >> M regrèt. 1394 01:05:44,840 --> 01:05:46,090 Mwen gen li bak. 1395 01:05:46,090 --> 01:05:51,620 1396 01:05:51,620 --> 01:05:52,200 Rete tann, pa gen. 1397 01:05:52,200 --> 01:05:53,450 Ki wout li ale? 1398 01:05:53,450 --> 01:05:58,071 1399 01:05:58,071 --> 01:05:59,660 Okenn moun konnen ki sa ki se? 1400 01:05:59,660 --> 01:06:00,950 Yeah. 1401 01:06:00,950 --> 01:06:05,650 >> ELÈV 67: sipoze ede estandadize atravè sistèm bagay sa yo ke 1402 01:06:05,650 --> 01:06:08,760 genyen - tankou nonb antye relatif siye ki gen 8 bytes? 1403 01:06:08,760 --> 01:06:11,785 >> JASON HIRSCHHORN: Sa se egzakteman dwat. 1404 01:06:11,785 --> 01:06:14,310 Sou machin diferan, gwosè a nan yon Char - 1405 01:06:14,310 --> 01:06:15,180 pa anjeneral yon Char. 1406 01:06:15,180 --> 01:06:16,100 Charaktèr yo anjeneral yon sèl multiple. 1407 01:06:16,100 --> 01:06:19,590 Men, gwosè a nan kalite done lòt yo gwosè diferan sou yon machin 32-bit 1408 01:06:19,590 --> 01:06:21,370 kont yon machin 64-ti jan. 1409 01:06:21,370 --> 01:06:25,180 Yon uint8_t se toujou 8 Bits - 1410 01:06:25,180 --> 01:06:27,210 toujou yon sèl multiple. 1411 01:06:27,210 --> 01:06:29,580 >> Apre sa, mwen bezwen gen ladan ki estanda dosye Int header. 1412 01:06:29,580 --> 01:06:35,040 Se konsa, kounye a, sa a ta te pwobableman gen te fason ki pi bon yo ekri kòd sa a. 1413 01:06:35,040 --> 01:06:40,160 1414 01:06:40,160 --> 01:06:41,450 Se konsa, mwen debarase m de chif yo majik. 1415 01:06:41,450 --> 01:06:44,690 Apre sa, mwen gen tou yon plis ki lojik tape pou tanpon. 1416 01:06:44,690 --> 01:06:49,450 Li se pa tou senpleman yon Char, li se yon multiple, ki se ki sa nou ap atann li yo dwe. 1417 01:06:49,450 --> 01:06:53,400 >> Apre sa, moute isit la, nou te aktyèlman te yon ti jan pi plis gaya. 1418 01:06:53,400 --> 01:06:55,190 Nou pa rele li yon Char, ki - 1419 01:06:55,190 --> 01:06:58,630 petèt, ki moun ki konnen - te kapab fè yon diferan gwosè sou machin diferan. 1420 01:06:58,630 --> 01:07:02,025 Nou ap aktyèlman li di sa a se egzakteman yon sèl multiple, toujou, pa gen pwoblèm sa. 1421 01:07:02,025 --> 01:07:05,810 Men, si nou gade isit la, nou fè CP. 1422 01:07:05,810 --> 01:07:08,340 Uh-oh. 1423 01:07:08,340 --> 01:07:09,590 Kisa ki te pase? 1424 01:07:09,590 --> 01:07:14,470 1425 01:07:14,470 --> 01:07:16,170 >> ELÈV 68: Li ta ka chanje. 1426 01:07:16,170 --> 01:07:17,880 >> JASON HIRSCHHORN: Ki sa? 1427 01:07:17,880 --> 01:07:19,130 >> ELÈV 69 li: Eske se? 1428 01:07:19,130 --> 01:07:21,940 1429 01:07:21,940 --> 01:07:25,080 >> ELÈV 70: Ou pa t ' defini li kòm yon kalite. 1430 01:07:25,080 --> 01:07:28,684 >> ELÈV 71: Men, li ta dwe dwe defini nan estanda. 1431 01:07:28,684 --> 01:07:29,934 >> ELÈV 72: Ki sa ki k ap pase sou? 1432 01:07:29,934 --> 01:07:37,660 1433 01:07:37,660 --> 01:07:40,210 >> ELÈV 73: ta dwe defini kapab tout bouchon? 1434 01:07:40,210 --> 01:07:41,370 >> JASON HIRSCHHORN: Se konsa, li pa # defini. 1435 01:07:41,370 --> 01:07:45,490 Aktyèlman, nan ka sa a, mwen se pral sèvi ak tipedèf. 1436 01:07:45,490 --> 01:07:48,590 Paske n ap sèvi ak li kòm yon kalite nan yon sèl kote. 1437 01:07:48,590 --> 01:07:51,990 Se konsa, nan ka sa a, nou aktyèlman vle tipedèf tankou nou ap enprime yon kalite nouvo 1438 01:07:51,990 --> 01:07:54,490 multiple, epi li se, ki esansyèlman, sa a. 1439 01:07:54,490 --> 01:07:56,590 Li yon ti jan diferan pase # defini. 1440 01:07:56,590 --> 01:08:02,740 >> Epi, koulye a, kòd nou travay pafètman. 1441 01:08:02,740 --> 01:08:05,230 Se konsa, ankò, # defini pran yon bagay, ranplase li tout kote 1442 01:08:05,230 --> 01:08:06,780 ak bagay la ak lòt. 1443 01:08:06,780 --> 01:08:07,920 Se jis nan yon macro - 1444 01:08:07,920 --> 01:08:09,420 steno yo debarase m de nimewo majik. 1445 01:08:09,420 --> 01:08:11,360 Men, nan ka sa a, paske nou ap lè l sèvi avèk li kòm yon kalite - 1446 01:08:11,360 --> 01:08:12,180 dwa isit la - 1447 01:08:12,180 --> 01:08:19,880 yo nan lòd pou sa nan travay, nou bezwen tipedèf tou sa multiple se. 1448 01:08:19,880 --> 01:08:21,840 >> Apre sa, n ap defini li dwa isit la. 1449 01:08:21,840 --> 01:08:24,750 Li pa yon konstri, li la aktyèlman jis yon nonb antye relatif siye. 1450 01:08:24,750 --> 01:08:27,680 Li nan yon sèl multiple lontan. 1451 01:08:27,680 --> 01:08:31,910 Kòd sa a yo ap disponib sou entènèt, ak nou tout ta dwe gen li kounye a. 1452 01:08:31,910 --> 01:08:33,830 >> Se konsa, nou genyen - 1453 01:08:33,830 --> 01:08:34,250 pafè - 1454 01:08:34,250 --> 01:08:41,359 13 minit kite yo ale sou pwoblèm mete 5. 1455 01:08:41,359 --> 01:08:44,270 Mwen vle mache nan copy.c ansanm, ak Lè sa a, nou pral pale yon ti tan 1456 01:08:44,270 --> 01:08:47,120 sou pati pyès sa yo lòt nan pwoblèm nan mete. 1457 01:08:47,120 --> 01:08:48,899 Se konsa, kite m 'rale moute copy.c. 1458 01:08:48,899 --> 01:09:03,930 1459 01:09:03,930 --> 01:09:08,810 Epi bagay la fre se, nou te aktyèlman deja ekri yon anpil nan Kòd sa a. 1460 01:09:08,810 --> 01:09:11,180 >> Kòd la nou te ekri literalman jis te soti kite peyi isit la lè m 'te 1461 01:09:11,180 --> 01:09:13,120 ekri sa a sou m 'pwòp. 1462 01:09:13,120 --> 01:09:16,990 Men, sa a se copy.c, fòme fondasyon an pou de premye pati pyès sa yo nan 1463 01:09:16,990 --> 01:09:22,340 pwoblèm nan fikse pou whodunit.c, ki ou bezwen ekri, ak resize.c. 1464 01:09:22,340 --> 01:09:27,050 Recover.c, ki se twazyèm lan ak final pati nan pwoblèm mete nan, se pa 1465 01:09:27,050 --> 01:09:29,529 ki baze sou sa a ranpli. 1466 01:09:29,529 --> 01:09:32,200 >> W ap ale nan bezwen ekri ki ranpli, nou ba ou yon modèl pou sa 1467 01:09:32,200 --> 01:09:34,620 pote, men li pa gen anyen fè ak copy.c. 1468 01:09:34,620 --> 01:09:38,675 Men, paske se copy.c se fondasyon pou de premye pati pyès sa yo, nou pwal 1469 01:09:38,675 --> 01:09:42,000 mache nan li kounye a, kidonk, ou gen yon bon sans de ki sa li fè. 1470 01:09:42,000 --> 01:09:43,640 >> Apre sa, kòmantè sa yo ki bay kèk nan byen lwen ou. 1471 01:09:43,640 --> 01:09:45,120 Nou te deja ekri kèk nan sa a. 1472 01:09:45,120 --> 01:09:49,220 Premyèman, nou ap fè asire w ke nou jwenn twa agiman. 1473 01:09:49,220 --> 01:09:50,560 Apre sa, n ap sonje non an dosye-a. 1474 01:09:50,560 --> 01:09:52,960 Se konsa, nou sote etap sa a lè nou kode bagay nou yo - 1475 01:09:52,960 --> 01:09:54,700 lè CP nou an. 1476 01:09:54,700 --> 01:09:56,750 Men, isit la, yo ap fè li yon ti jan pi pwòp. 1477 01:09:56,750 --> 01:09:59,350 >> Yo ap tcheke a asire w tou de dosye yo se bon, nan 1478 01:09:59,350 --> 01:10:00,450 adisyon a louvri yo. 1479 01:10:00,450 --> 01:10:04,760 Nou te ekri tout kòd sa a jis kounye a, se konsa mwen pa ale nan rete sou Kòd sa a. 1480 01:10:04,760 --> 01:10:09,670 Next se kèk bagay ki nan espesifik nan ki kalite dosye nou ap lè l sèvi avèk, ki 1481 01:10:09,670 --> 01:10:12,240 yo se dosye bitmap. 1482 01:10:12,240 --> 01:10:15,660 Dosye bitmap gen kèk Metadata ki asosye ak yo. 1483 01:10:15,660 --> 01:10:20,190 >> Se konsa, koup la nan premye bytes ba w enfòmasyon sou dosye a. 1484 01:10:20,190 --> 01:10:23,460 Yo pa koulè yo nan pixel a nan ki imaj. 1485 01:10:23,460 --> 01:10:25,120 Yo di ou sou dosye a. 1486 01:10:25,120 --> 01:10:28,220 Men, si w ap li pwoblèm seri a, ou pral gen pi plis enfòmasyon sou 1487 01:10:28,220 --> 01:10:33,100 sou sa ki kalite estrikti Metadata yo enkli ak Bitmap. 1488 01:10:33,100 --> 01:10:39,350 >> Men, sa a rezon sa a genyen sa a premye mete nan - Kòd sa a isit la menm. 1489 01:10:39,350 --> 01:10:42,490 Nou ap li Metadata la - 1490 01:10:42,490 --> 01:10:45,800 de moso nan Metadata - dosye a header ak info lento a. 1491 01:10:45,800 --> 01:10:51,030 Apre sa, nou ap tcheke kèk pati nan li nan asire w ke li se yon dosye bitmap vre 1492 01:10:51,030 --> 01:10:52,420 anvan kontinye. 1493 01:10:52,420 --> 01:10:55,470 >> Li di ankò, sa yo se detay nou pa bezwen ale nan kounye a. 1494 01:10:55,470 --> 01:10:57,720 Si w ap li pwoblèm seri a, ou pral konprann sa yo. 1495 01:10:57,720 --> 01:11:01,370 Long istwa kout, sa yo yo se jis li di yo: sa a se yon dosye bitmap, ak 1496 01:11:01,370 --> 01:11:02,810 e ki konfime ke. 1497 01:11:02,810 --> 01:11:05,180 >> Apre sa, nou ap ekri sa yo nan dosye a deyò. 1498 01:11:05,180 --> 01:11:05,660 Nou wè ke isit la. 1499 01:11:05,660 --> 01:11:06,910 Nou ap ekri nan konsèy la soti. 1500 01:11:06,910 --> 01:11:09,260 1501 01:11:09,260 --> 01:11:11,320 Apre sa, n ap detèmine pwotèj. 1502 01:11:11,320 --> 01:11:15,240 Se konsa, ankò, kòm se particularit ak yon dosye bitmap, gen kèk liy gen ladan 1503 01:11:15,240 --> 01:11:16,840 padding nan fen an. 1504 01:11:16,840 --> 01:11:19,000 Men, si w ap li pwoblèm seri a, ou pral aprann plis sou pwotèj. 1505 01:11:19,000 --> 01:11:22,330 Sa a se fòmil la yo jwenn pwotèj. 1506 01:11:22,330 --> 01:11:23,610 >> Enpòtan sonje - 1507 01:11:23,610 --> 01:11:29,720 lè ou chanje gwosè a nan yon bitmap pote, chanjman sa yo boure. 1508 01:11:29,720 --> 01:11:31,970 Lè ou chanje gwosè a nan yon pote, chanjman sa yo boure. 1509 01:11:31,970 --> 01:11:34,310 Li pa janm pral fè pi gran pase 3 - 1510 01:11:34,310 --> 01:11:36,510 li pral 0 a 3, enklizif. 1511 01:11:36,510 --> 01:11:38,930 Men, lè ou chanje gwosè a nan yon bagay, chanjman sa yo boure. 1512 01:11:38,930 --> 01:11:47,100 >> Si m 'sèlman gen yon sèl pixel nan ki ranje, mwen bezwen twa bytes nan padding, paske 1513 01:11:47,100 --> 01:11:51,190 chak ranje genyen yo dwe miltip nan kat bytes lontan nan yon dosye bitmap. 1514 01:11:51,190 --> 01:11:56,120 Men, si mwen double l ', yo ale soti nan yon pixel nan de pixel, chak nan yo ki, 1515 01:11:56,120 --> 01:11:59,510 Se pou nou di, se yon multiple, lè sa a mwen bezwen de bytes nan padding fè 1516 01:11:59,510 --> 01:12:00,970 ki egal a kat. 1517 01:12:00,970 --> 01:12:04,200 >> Se konsa, lè mwen chanje gwosè a nan yon bagay, Mwen bezwen chanje kantite lajan an 1518 01:12:04,200 --> 01:12:06,551 nan padding m 'genyen. 1519 01:12:06,551 --> 01:12:08,100 ki fè sans nan tout moun? 1520 01:12:08,100 --> 01:12:12,020 1521 01:12:12,020 --> 01:12:18,720 Apre sa, nou repňte sou chak ranje, oswa atravè tout ranje yo. 1522 01:12:18,720 --> 01:12:21,400 Lè sa a, nou repňte nan chak kolòn nan chak ranje. 1523 01:12:21,400 --> 01:12:25,330 Nou ap trete bitmap sa a tankou yon griy, tankou nou te trete 1524 01:12:25,330 --> 01:12:26,490 tablo a nan 15. 1525 01:12:26,490 --> 01:12:29,200 >> Menm jan ak nou trete brik yo lè nou enprime yo sou ekran an. 1526 01:12:29,200 --> 01:12:31,350 Yon kadriyaj nan ranje ak kolòn. 1527 01:12:31,350 --> 01:12:32,350 Lè sa a, - nou te wè sa a. 1528 01:12:32,350 --> 01:12:33,840 Nou aktyèlman jis kode sa a. 1529 01:12:33,840 --> 01:12:35,780 Nou te kreye kèk depo pou yon ti tan. 1530 01:12:35,780 --> 01:12:38,710 Nou li nan la, ak Lè sa a, nou ekri li soti. 1531 01:12:38,710 --> 01:12:42,680 Sa a se egzakteman ki sa nou jis te fè. 1532 01:12:42,680 --> 01:12:46,760 >> Apre sa, paske m 'te di chak liy fini nan kèk padding, nou 1533 01:12:46,760 --> 01:12:48,260 sote sou ki padding - 1534 01:12:48,260 --> 01:12:51,000 padding la fin vye granmoun. 1535 01:12:51,000 --> 01:12:52,630 Lè sa a, nou ajoute l 'tounen. 1536 01:12:52,630 --> 01:12:55,140 Nan ka sa a, n ap kreye menm dosye a egzak. 1537 01:12:55,140 --> 01:12:56,180 Nou jis ap kopye l '. 1538 01:12:56,180 --> 01:12:57,700 Se konsa, liy sa a se kalite dwòl. 1539 01:12:57,700 --> 01:12:59,660 Nou te kapab literalman jis mete padding la pous 1540 01:12:59,660 --> 01:13:04,290 >> Men, si ou chanje gwosè a nan dosye a, ou toujou vle liy sa a? 1541 01:13:04,290 --> 01:13:08,510 1542 01:13:08,510 --> 01:13:11,560 Se konsa, si nou chanje gwosè a nan yon dosye li an, nou toujou vle sote 1543 01:13:11,560 --> 01:13:12,810 sou padding la fin vye a? 1544 01:13:12,810 --> 01:13:15,170 1545 01:13:15,170 --> 01:13:15,970 >> ELÈV 74: Wi. 1546 01:13:15,970 --> 01:13:17,090 >> JASON HIRSCHHORN: Se konsa, nou fè. 1547 01:13:17,090 --> 01:13:19,290 Paske sa a, ankò, kontra ak dosye a sous. 1548 01:13:19,290 --> 01:13:21,570 Nou pa pran swen sou padding la soti nan dosye a sous. 1549 01:13:21,570 --> 01:13:23,410 Nou vle pou yo ale nan liy nan pwochen an. 1550 01:13:23,410 --> 01:13:28,850 Men, nou pa tou senpleman mete tounen kantite lajan an fin vye granmoun nan pwotèj. 1551 01:13:28,850 --> 01:13:31,540 Nou bezwen mete do a nouvo kantite lajan pou pwotèj. 1552 01:13:31,540 --> 01:13:35,810 >> Se konsa, lè nou ap chanje gwosè a nan yon dosye, nou toujou vle sote sou la 1553 01:13:35,810 --> 01:13:38,270 padding nan dosye a fin vye granmoun - ki sa nou ap li nan soti nan. 1554 01:13:38,270 --> 01:13:40,370 Men, sa ki nou ap ekri a, nou pral bezwen mete tounen kèk diferan 1555 01:13:40,370 --> 01:13:41,890 kantite padding ki nou te detèmine. 1556 01:13:41,890 --> 01:13:42,780 Yeah. 1557 01:13:42,780 --> 01:13:44,550 >> ELÈV 75: lòd la nan tout sa yo de liy pa gen pwoblèm, dwa? 1558 01:13:44,550 --> 01:13:46,160 Paske w ap manyen diferan dosye. 1559 01:13:46,160 --> 01:13:46,620 >> JASON HIRSCHHORN: Egzakteman. 1560 01:13:46,620 --> 01:13:48,220 Lòd la nan de liy sa yo pa gen pwoblèm. 1561 01:13:48,220 --> 01:13:49,790 Nou ekri liy sa a. 1562 01:13:49,790 --> 01:13:51,430 Sa a se isit la pou dosye a nou ap ekri nan. 1563 01:13:51,430 --> 01:13:54,370 Sa a enpòtan, Se konsa, nou jwenn nan kantite lajan dwat Bondye ki gen pwotèj. 1564 01:13:54,370 --> 01:13:57,560 Sa a gen fè fas ak dosye a nan. 1565 01:13:57,560 --> 01:13:58,560 Nou vle sote dwa sou padding la. 1566 01:13:58,560 --> 01:13:59,470 >> Nou pa vle li - 1567 01:13:59,470 --> 01:14:01,500 si nou ap li yon multiple nan yon tan, nou pa pran swen sou sa yo bytes pwotèj. 1568 01:14:01,500 --> 01:14:04,070 Nou vle pou avanse pou pi nan liy lan kap vini an. 1569 01:14:04,070 --> 01:14:11,800 Finalman jis tankou Lucy te bay pou nou, nou fèmen dosye yo epi retounen 0. 1570 01:14:11,800 --> 01:14:13,890 Se konsa, sa a se copy.c. 1571 01:14:13,890 --> 01:14:17,850 Apre sa, nou aktyèlman te ekri - nou depanse pifò nan seksyon ekri sa a, esansyèlman. 1572 01:14:17,850 --> 01:14:18,740 >> Ou te fè sa a. 1573 01:14:18,740 --> 01:14:22,440 Se konsa, èspere ke ou gen yon bon sans nan sa ki k ap pase nan isit la. 1574 01:14:22,440 --> 01:14:25,890 Gwo diferans nan, franchman, se jis pati sa a premye ki boule ak 1575 01:14:25,890 --> 01:14:29,970 sengularite nan dosye bitmap. 1576 01:14:29,970 --> 01:14:33,570 Se konsa, mwen gen kòm glise pwochen m 'yo, sa nou bezwen fè? 1577 01:14:33,570 --> 01:14:35,510 Oke, kite la panse osijè de whodunit. 1578 01:14:35,510 --> 01:14:38,080 >> Se pou yon moun ki li nan pwoblèm nan mete, sa nou fè 1579 01:14:38,080 --> 01:14:41,410 bezwen fè nan whodunit? 1580 01:14:41,410 --> 01:14:42,080 Tou senpleman. 1581 01:14:42,080 --> 01:14:42,460 Aleja. 1582 01:14:42,460 --> 01:14:48,570 >> ALEJA: Èske ou ka pran pati nan nan chak pixel ki vle di wouj. 1583 01:14:48,570 --> 01:14:49,730 Lè sa a, - 1584 01:14:49,730 --> 01:14:50,730 kalite? 1585 01:14:50,730 --> 01:14:51,860 >> JASON HIRSCHHORN: OK. 1586 01:14:51,860 --> 01:14:54,460 Se konsa, pran yon pati nan chak pixel ki vle di wouj. 1587 01:14:54,460 --> 01:14:57,234 Sa a fèmen, men se pa tout nan li. 1588 01:14:57,234 --> 01:14:59,780 >> ELÈV 76: Bon, gen nan diferan fason fè li. 1589 01:14:59,780 --> 01:14:59,870 >> JASON HIRSCHHORN: OK. 1590 01:14:59,870 --> 01:15:03,070 Ban m 'yon fason. 1591 01:15:03,070 --> 01:15:08,240 >> ELÈV 76: Pran soti tout wouj la, epi Lè sa a, mete aksan sou ble a ak vèt. 1592 01:15:08,240 --> 01:15:10,010 >> JASON HIRSCHHORN: OK. 1593 01:15:10,010 --> 01:15:11,830 Se konsa, yo bay tou de fason sa yo - 1594 01:15:11,830 --> 01:15:15,210 li son tankou nou ba li yon pixel, li gen yon nivo wouj, ble, ak vèt. 1595 01:15:15,210 --> 01:15:19,350 Nou ta vle chanje nivo yo manm fanmi an la wouj, ble, ak vèt, tou depann 1596 01:15:19,350 --> 01:15:20,740 sou sa pixel. 1597 01:15:20,740 --> 01:15:28,380 Ki kote nan Kòd sa a nou ta dwe chanje wouj la relatif, ble, ak vèt 1598 01:15:28,380 --> 01:15:29,720 nivo nan yon pixel bay yo. 1599 01:15:29,720 --> 01:15:30,600 Apre nou te li li l '- 1600 01:15:30,600 --> 01:15:32,520 anvan nou ekri li? 1601 01:15:32,520 --> 01:15:34,564 Ban m 'kantite liy. 1602 01:15:34,564 --> 01:15:35,950 >> ELÈV YO PLIZYÈ: 83. 1603 01:15:35,950 --> 01:15:37,320 >> JASON HIRSCHHORN: 83. 1604 01:15:37,320 --> 01:15:38,570 Se konsa, isit la menm. 1605 01:15:38,570 --> 01:15:40,830 1606 01:15:40,830 --> 01:15:45,710 Pou whodunit, kòd a ou bezwen ekri tout ta dwe ale dwat la. 1607 01:15:45,710 --> 01:15:47,640 Epi sa a, kòd la sèlman ou bezwen ekri. 1608 01:15:47,640 --> 01:15:51,520 Paske, tankou nou tande yo, tout ou bezwen fè se chanje sa yo ble fanmi, 1609 01:15:51,520 --> 01:15:54,420 nivo wouj, ak vèt ki soti nan chak pixel. 1610 01:15:54,420 --> 01:15:58,250 >> Ou te li li l 'nan, e kounye a, w ap pral ekri li soti. 1611 01:15:58,250 --> 01:16:03,100 Kouman pou mwen jwenn - si mwen gen bagay sa a rele trip, dwa isit la, epi li nan 1612 01:16:03,100 --> 01:16:04,570 tape RGBTRIPLE - 1613 01:16:04,570 --> 01:16:08,650 byen, si nou gade nan bmp.h, ki sa ki RGBTRIPLE? 1614 01:16:08,650 --> 01:16:11,450 1615 01:16:11,450 --> 01:16:12,700 >> ELÈV 77: Li se yon konstri. 1616 01:16:12,700 --> 01:16:17,440 1617 01:16:17,440 --> 01:16:18,900 >> JASON HIRSCHHORN: RGBTRIPLE se yon konstri. 1618 01:16:18,900 --> 01:16:22,330 Nou wè ke dwa desann isit la. 1619 01:16:22,330 --> 01:16:26,600 Se konsa, si mwen te vle aksè, di, nan nivo wouj nan konstri a, ki jan pou m 1620 01:16:26,600 --> 01:16:30,005 jwenn aksè nan nivo a wouj nan konstri sa a? 1621 01:16:30,005 --> 01:16:37,280 >> [KLAS soufl] 1622 01:16:37,280 --> 01:16:38,530 >> ELÈV 78: RGBTRIPLE.rgbtred? 1623 01:16:38,530 --> 01:16:47,250 1624 01:16:47,250 --> 01:16:48,856 >> JASON HIRSCHHORN: Eske se sa ke kòrèk? 1625 01:16:48,856 --> 01:16:53,040 >> ELÈV 79: Li ta dwe trip dot, olye pou yo RGBTRIPLE dot? 1626 01:16:53,040 --> 01:16:54,120 >> JASON HIRSCHHORN: Triple. 1627 01:16:54,120 --> 01:16:56,700 Triple se varyab lokal la, se konsa isit la, gen nan pa gen endikasyon isit la. 1628 01:16:56,700 --> 01:16:58,400 Se konsa, nou jis itilize notasyon an dot. 1629 01:16:58,400 --> 01:17:00,480 Sa a ap ba m 'nan menm nivo ak wouj. 1630 01:17:00,480 --> 01:17:06,180 Si m 'vle mande chanje li, mwen jis mete li egal a yon bagay diferan. 1631 01:17:06,180 --> 01:17:13,190 Se konsa, ankò, liy sa a nan kòd jwenn aksè varyab sa a andedan konstri sa a, epi 1632 01:17:13,190 --> 01:17:15,070 nou ka mete l 'nan yon nouvo bagay. 1633 01:17:15,070 --> 01:17:20,040 >> Se konsa, pou whodunit, ankò, sa a se, nan sans, ki sa nou bezwen fè. 1634 01:17:20,040 --> 01:17:21,170 Trè senp. 1635 01:17:21,170 --> 01:17:25,020 Jis chanje kèk nivo fanmi, ak sa a se kote ki Kòd ale. 1636 01:17:25,020 --> 01:17:27,720 Rdimansyonman, nan lòt men an, se yon ti jan Delice. 1637 01:17:27,720 --> 01:17:30,900 An reyalite, rdimansyonman se pwobableman la trickiest yon pati nan pwoblèm sa a mete. 1638 01:17:30,900 --> 01:17:32,720 Nou gen twa minit yo ale sou li. 1639 01:17:32,720 --> 01:17:34,910 >> Men, ankò, nou te deja ekri pi fò nan Kòd sa a, se konsa nou 1640 01:17:34,910 --> 01:17:36,500 yo ta dwe trè yo konnen yo. 1641 01:17:36,500 --> 01:17:40,750 Ki kèk bagay nou vle fè nan rdimansyonman, si ou te li sou la 1642 01:17:40,750 --> 01:17:43,470 pwoblèm mete? 1643 01:17:43,470 --> 01:17:45,290 Si w bay yo ban mwen, nou ka pale sou yo. 1644 01:17:45,290 --> 01:17:47,340 Ki kèk bagay nou vle fè? 1645 01:17:47,340 --> 01:17:47,970 >> ELÈV 80: vètikal - 1646 01:17:47,970 --> 01:17:52,360 Se konsa, ou gen orizontal rdimansyonman li, men vètikal rdimansyonman li kòm byen? 1647 01:17:52,360 --> 01:17:58,475 >> JASON HIRSCHHORN: Se konsa, si n ap bay yon pixel, epi nou vle rdimansyonman li pa yon 1648 01:17:58,475 --> 01:18:03,460 faktè nan de, li kounye a bezwen yo dwe rdimansyone orizontal ak rdimansyone 1649 01:18:03,460 --> 01:18:05,220 vètikal. 1650 01:18:05,220 --> 01:18:06,640 ki fè sans? 1651 01:18:06,640 --> 01:18:07,060 Yeah. 1652 01:18:07,060 --> 01:18:09,300 Se konsa, ki la pwobableman la pi gwo defi. 1653 01:18:09,300 --> 01:18:10,430 Apre sa, nou pral pale sou sa nan yon sec. 1654 01:18:10,430 --> 01:18:11,065 Yeah. 1655 01:18:11,065 --> 01:18:15,270 >> ELÈV 81: fason pou mwen te panse nan li te ou te bezwen ekri ak lèt ​​detache li soti - 1656 01:18:15,270 --> 01:18:15,490 >> JASON HIRSCHHORN: Rete tann. 1657 01:18:15,490 --> 01:18:17,580 pa di nou kisa ou te fè. 1658 01:18:17,580 --> 01:18:20,620 Nou pral pale nan lojik. 1659 01:18:20,620 --> 01:18:21,870 >> ELÈV 81: OK. 1660 01:18:21,870 --> 01:18:25,090 1661 01:18:25,090 --> 01:18:27,410 Ki sa ki te kesyon an? 1662 01:18:27,410 --> 01:18:28,892 >> JASON HIRSCHHORN: Ou jis leve soti vivan men ou. 1663 01:18:28,892 --> 01:18:31,600 Pa te gen okenn kesyon. 1664 01:18:31,600 --> 01:18:32,520 Kite m 'prezante li. 1665 01:18:32,520 --> 01:18:34,560 Kite m 'jis diskite sou yon ti tan sa a. 1666 01:18:34,560 --> 01:18:38,400 Se konsa, nou te yon sèl pixel, nou vle répliquer l ', tou de orizontal ak 1667 01:18:38,400 --> 01:18:39,360 vètikal. 1668 01:18:39,360 --> 01:18:48,920 Se konsa, depreferans sa nou fè isit la se, nou li nan pixel nou yo, nou ekri li 1669 01:18:48,920 --> 01:18:51,690 sepandan anpil nan fwa. 1670 01:18:51,690 --> 01:18:54,720 >> Men, Lè sa a, nou gen Trick nou yo isit la, paske Lè sa a, nou vle ale dirèkteman nan a 1671 01:18:54,720 --> 01:18:57,660 liy pwochen epi ekri li nan la kòmanse nan liy lan kap vini an. 1672 01:18:57,660 --> 01:19:02,960 Se konsa, si nou vle répliquer tou de orizontal ak vètikal, ki sa ki 1673 01:19:02,960 --> 01:19:05,050 yon bon fason fè sa - 1674 01:19:05,050 --> 01:19:06,780 yon bon menm si yo fè sa? 1675 01:19:06,780 --> 01:19:11,950 Se konsa, nou pa bezwen toujou ap chache alantou dosye nou an nan plas bagay sa yo. 1676 01:19:11,950 --> 01:19:14,360 >> Kesyon ki pa ka gen fè sans, men mwen panse yon 1677 01:19:14,360 --> 01:19:15,800 reponn a li pral ede. 1678 01:19:15,800 --> 01:19:17,210 >> ELÈV 82: Kreye yon etalaj? 1679 01:19:17,210 --> 01:19:20,090 >> JASON HIRSCHHORN: Se konsa, kite a panse nan chak dosye kòm yon ranje. 1680 01:19:20,090 --> 01:19:22,550 Se pou nou panse an tèm de ranje. 1681 01:19:22,550 --> 01:19:26,670 Si nou gen premye ranje nou an soti nan ti nou an foto, nou ka fè ki ranje 1682 01:19:26,670 --> 01:19:30,640 nan yon gwo ranje nan yon gwo foto, ak Lè sa a, répliquer ki ranje sepandan 1683 01:19:30,640 --> 01:19:34,250 anpil fwa li bezwen yo dwe repwodui, olye ke pral pixel pa pixel, 1684 01:19:34,250 --> 01:19:37,260 ki vin konfizyon lè fè fas ak dosye. 1685 01:19:37,260 --> 01:19:38,730 >> Paske si nou te gen - 1686 01:19:38,730 --> 01:19:41,260 Mwen kouri soti nan espas. 1687 01:19:41,260 --> 01:19:46,490 Si sa a se dosye nou, epi nou genyen ki yon sèl pixel a, e nou vle mete l ' 1688 01:19:46,490 --> 01:19:49,840 dwa a, nou toujou gen kèk bagay ki bezwen ale sou la lè nou ap 1689 01:19:49,840 --> 01:19:51,450 ekri ak kreye nouvo dosye nou yo - 1690 01:19:51,450 --> 01:19:53,250 dosye nou yo ki nan de fwa tankou gwo. 1691 01:19:53,250 --> 01:19:56,820 >> Men, li la vrèman difisil ak fonksyon dosye sote alantou nan liy nouvo 1692 01:19:56,820 --> 01:20:00,260 tankou sa yo, ak Lè sa a, tounen isit la epi li mete bagay sa yo nan la. 1693 01:20:00,260 --> 01:20:04,500 Li nan prèske enposib fè yon bagay tankou sa yo, si sa fè sans. 1694 01:20:04,500 --> 01:20:10,180 Se konsa, si nou panse an tèm de ranje, nou ka pran ranje nou an, epi Lè sa a, mete l '- 1695 01:20:10,180 --> 01:20:11,720 répliquer ranje vètikal. 1696 01:20:11,720 --> 01:20:15,860 >> Epi sa a, ki jan nou fè fas ak rèsizin vètikal olye ke orizontal. 1697 01:20:15,860 --> 01:20:18,810 Sa ki te kalite rapid, ak yon ti kras konfizyon. 1698 01:20:18,810 --> 01:20:22,375 Malerezman tan nou an, se yo. 1699 01:20:22,375 --> 01:20:27,340 Mwen pral rete deyò pou moun nan nou isit la ki moun ki gen kesyon sou la 1700 01:20:27,340 --> 01:20:30,500 pwoblèm seri, ki gen ladan geri. 1701 01:20:30,500 --> 01:20:32,320 >> Se konsa, kite a ajoune pou kounye a. 1702 01:20:32,320 --> 01:20:34,480 Li di ankò, si ou gen nenpòt kesyon, nou ka chat deyò. 1703 01:20:34,480 --> 01:20:38,294