1 00:00:00,000 --> 00:00:04,875 2 00:00:04,875 --> 00:00:05,750 ANDI PENG: zote haki. 3 00:00:05,750 --> 00:00:08,240 Karibu wiki nne za sehemu. 4 00:00:08,240 --> 00:00:10,280 Ni siku nzuri nje hapa katika New Haven 5 00:00:10,280 --> 00:00:14,370 hivyo kweli mimi nadhani sparse kutawanyika kwa watoto kwamba 6 00:00:14,370 --> 00:00:17,530 alijiunga nami kwa sehemu leo, asante. 7 00:00:17,530 --> 00:00:21,517 >> Kwa hiyo kwa haraka, kabla tu kuanza, ajenda ya leo. 8 00:00:21,517 --> 00:00:23,600 Sisi ni kwenda juu chache fupi matangazo. 9 00:00:23,600 --> 00:00:26,224 Tuna ratiba kweli wacky kuja juu katika wiki mbili zijazo 10 00:00:26,224 --> 00:00:28,010 au hivyo hivyo tunakwenda kwenda juu kwamba. 11 00:00:28,010 --> 00:00:30,410 Pili, najua kila mtu favorite topic-- 12 00:00:30,410 --> 00:00:33,572 Nina hakika hii melted akili yako wakati wa hotuba, msiwe na wasiwasi, 13 00:00:33,572 --> 00:00:34,780 Mimi bado aina ya si kupata. 14 00:00:34,780 --> 00:00:35,444 Ni faini. 15 00:00:35,444 --> 00:00:36,110 Hiyo ilikuwa ni mzaha. 16 00:00:36,110 --> 00:00:37,450 Mimi kwa kweli kufanya kupata hiyo. 17 00:00:37,450 --> 00:00:40,234 Lakini mimi kuhakikisha kwamba nyie kupata, pia. 18 00:00:40,234 --> 00:00:42,400 Hivyo sisi ni kwenda kutumia kweli, kiasi mzuri 19 00:00:42,400 --> 00:00:44,020 muda kuzungumza juu ya pointer leo. 20 00:00:44,020 --> 00:00:47,012 Kama unaweza kuona, pipi ya Majadiliano ni kubwa leo. 21 00:00:47,012 --> 00:00:49,220 Sisi ni kweli kwenda kuweka that-- yeah, hiyo ni haki. 22 00:00:49,220 --> 00:00:49,890 Kuweka pipi kuchukua. 23 00:00:49,890 --> 00:00:51,556 Mimi nina kwenda kupita wao kuzunguka hivi sasa. 24 00:00:51,556 --> 00:00:55,150 25 00:00:55,150 --> 00:00:56,510 Hakuna wasiwasi. 26 00:00:56,510 --> 00:00:59,570 Tunakwenda kweli kujaribu kuweka damu ya watu sukari 27 00:00:59,570 --> 00:01:04,390 up kwa sababu kwamba ubongo ni kwenda kuchoma baadhi leo oksijeni kwa sababu kuyatumia 28 00:01:04,390 --> 00:01:05,652 ni kweli, ngumu kweli kweli. 29 00:01:05,652 --> 00:01:08,360 Kisha sisi ni kwenda kuzungumza kuhusu kumbukumbu ya usimamizi ambayo ni aina ya 30 00:01:08,360 --> 00:01:09,487 katika ulimwengu wa sawa. 31 00:01:09,487 --> 00:01:11,570 Na tunakwenda hoja kwenye redirection na faili 32 00:01:11,570 --> 00:01:15,297 I / O ambayo ni syntax tu, nzuri mambo ambayo tunapaswa kuzungumzia. 33 00:01:15,297 --> 00:01:17,130 Na kisha mwisho, mimi nina kwenda kwa mara nyingine tena kujaribu 34 00:01:17,130 --> 00:01:19,070 kuondoka kama 10, 15 dakika kwa pset4. 35 00:01:19,070 --> 00:01:21,820 Hiyo ni kutokana katika siku chache hivyo sisi ni kwenda kwa kweli aina ya kukupa 36 00:01:21,820 --> 00:01:24,850 baadhi mwanga msaada kama wewe tayari got kuanza juu ya jambo hilo. 37 00:01:24,850 --> 00:01:26,141 Baridi. 38 00:01:26,141 --> 00:01:26,640 SAWA. 39 00:01:26,640 --> 00:01:30,710 Hivyo baadhi matangazo kwa wiki hii ya ujao. 40 00:01:30,710 --> 00:01:31,805 Grading. 41 00:01:31,805 --> 00:01:33,930 Mimi si kweli kujua katika hatua hii ni wangapi kati yenu 42 00:01:33,930 --> 00:01:37,180 guys ni kweli katika yangu section-- wewe OK huko? 43 00:01:37,180 --> 00:01:38,020 SAWA. 44 00:01:38,020 --> 00:01:40,150 Lakini, kwa wale walio katika sehemu yangu, 45 00:01:40,150 --> 00:01:42,180 michache tu maoni juu ya grading. 46 00:01:42,180 --> 00:01:44,899 >> Kwanza, kazi nzuri kwa kweli ya kutoa maoni. 47 00:01:44,899 --> 00:01:47,940 Wale ambao hawana kutoa maoni, wewe kujua wewe ni nani kwa sababu wewe pengine 48 00:01:47,940 --> 00:01:50,610 got baadhi pointi style dinged wiki hii. 49 00:01:50,610 --> 00:01:53,920 Tu kuhakikisha kwamba katika wote wa yako Mipango kuongeza maoni wanandoa. 50 00:01:53,920 --> 00:01:56,960 Kwa kweli, mtindo ni kweli rahisi kupata pointi sahihi kama wigo. 51 00:01:56,960 --> 00:01:58,710 Hivyo kwa ajili yetu, tu kufanya kuhakikisha kwamba wewe ni aina 52 00:01:58,710 --> 00:02:03,770 ya kuongeza maelezo mafupi katika yote mipango yako juu ya nini unafanya. 53 00:02:03,770 --> 00:02:09,190 >> Secondly-- hili ni suala kubwa kwa mengi ya TAS week-- hii iliyopita 54 00:02:09,190 --> 00:02:12,020 hivyo kuhakikisha wewe ni kuweka kwa folder sahihi na kwa usahihi 55 00:02:12,020 --> 00:02:13,370 aitwaye mipango. 56 00:02:13,370 --> 00:02:16,820 Na sababu ni kwa nini tunaomba huu ni kwa sababu sisi, katika mwendo wa grading, 57 00:02:16,820 --> 00:02:20,820 kweli kuendesha script juu yako kificho kwamba downloads moja kwa moja 58 00:02:20,820 --> 00:02:24,780 wote wa psets yako, anaendesha vipimo usahihi juu ya wote, 59 00:02:24,780 --> 00:02:27,550 na kisha uploads alama yako moja kwa moja kwenye gradebook. 60 00:02:27,550 --> 00:02:32,140 Hata hivyo, katika hatua yoyote, kama wewe aitwaye mpango wako kimakosa, 61 00:02:32,140 --> 00:02:34,510 ni screws up nzima mpango kwa ajili ya kila mtu. 62 00:02:34,510 --> 00:02:37,280 >> Na hivyo, kihalali, Muswada hii nzuri 63 00:02:37,280 --> 00:02:40,260 kwamba tumekuwa imeandikwa kwamba hana yote haya kwa ajili yetu, kabisa 64 00:02:40,260 --> 00:02:43,070 shambulio kama huna mpango wako aitwaye usahihi. 65 00:02:43,070 --> 00:02:46,020 Hivyo tu kupakia na sahihi folder, na wao aitwaye usahihi, 66 00:02:46,020 --> 00:02:47,372 na kisha maisha ni nzuri. 67 00:02:47,372 --> 00:02:49,080 Mimi kupata psets yako nyuma kwa nyie mapema 68 00:02:49,080 --> 00:02:51,110 kwa sababu mimi kupata daraja yao haraka. 69 00:02:51,110 --> 00:02:52,461 Naam. 70 00:02:52,461 --> 00:02:52,960 SAWA. 71 00:02:52,960 --> 00:02:57,870 Na pia sisi ni kwenda kuzungumza about-- Yale ina kweli, kweli 72 00:02:57,870 --> 00:02:59,950 wacky ratiba katika wiki hizi mbili. 73 00:02:59,950 --> 00:03:02,460 Hivyo wale wa wewe guys katika Harvard, hii haina kuomba. 74 00:03:02,460 --> 00:03:05,585 Lakini kwetu sisi watoto nzuri katika Yale tuna kitu kinachoitwa kuanguka break-- pole, 75 00:03:05,585 --> 00:03:08,430 Harvard-- ambapo tuna siku tano mbali la shule. 76 00:03:08,430 --> 00:03:12,270 Na wakati huu ni nzuri, ni aina ya messes up pset yetu dansi 77 00:03:12,270 --> 00:03:14,104 kwa sababu psets ni kutokana Alhamisi, Ijumaa. 78 00:03:14,104 --> 00:03:16,020 Na hivyo kama sisi siyo hapa Alhamisi, Ijumaa, sisi 79 00:03:16,020 --> 00:03:18,640 Huwezi kuwa na kazi kwa nyie kutokana Alhamisi, Ijumaa. 80 00:03:18,640 --> 00:03:23,832 >> Hivyo nini tunakwenda kufanya is-- tuko kama 99% uhakika kama hii ni nini kinatokea, 81 00:03:23,832 --> 00:03:25,540 kuna inaweza kuwa baadhi mabadiliko lakini nadhani ni 82 00:03:25,540 --> 00:03:28,460 subtle-- ni tunakwenda have-- wiki hii ni kawaida. 83 00:03:28,460 --> 00:03:32,130 Hivyo tuna sehemu yetu juu ya Jumanne ikifuatiwa na masaa ya ofisi 84 00:03:32,130 --> 00:03:35,190 katika mapumziko ya wiki na kisha pset4 ni kutokana siku ya Ijumaa. 85 00:03:35,190 --> 00:03:38,180 Basi, kama nyie wote tunajua, kama Mimi aliwakumbusha nyie wiki iliyopita, 86 00:03:38,180 --> 00:03:41,700 tuna jaribio yetu 0 kuja juu ya Jumatano. 87 00:03:41,700 --> 00:03:44,400 >> Na hivyo, kuwa mwanafunzi mwenyewe, Mimi najua kuwa sana wachache wenu 88 00:03:44,400 --> 00:03:49,110 guys kweli kuwa kazi ya pset5 siku mbili kabla ya jaribio lako. 89 00:03:49,110 --> 00:03:51,110 Kwa hiyo kile tunakwenda pengine kuishia kufanya ni, 90 00:03:51,110 --> 00:03:54,840 kwamba Jumatatu usiku, tunakwenda kwa kweli, 5:30-7:00, 91 00:03:54,840 --> 00:03:59,970 na mapitio mafupi kikao juu ya mada mifuniko. 92 00:03:59,970 --> 00:04:02,040 Haieleweki kama ni kupitia kikao au Maswali na Majibu. 93 00:04:02,040 --> 00:04:04,650 Itakuwa aina fulani ya mapitio namna ambayo tutaweza cover 94 00:04:04,650 --> 00:04:06,640 baadhi ya mada husika kwa nyie. 95 00:04:06,640 --> 00:04:09,886 >> Na kisha Jumatatu na Jumanne usiku mwa wiki kwamba 8:00-11:00, 96 00:04:09,886 --> 00:04:11,260 tunakwenda kuwa na masaa ya ofisi. 97 00:04:11,260 --> 00:04:14,500 Masaa wale ofisi mapenzi zaidi uwezekano kuwa zaidi ya kuja tu katika, 98 00:04:14,500 --> 00:04:17,564 kuuliza maswali yako kuhusu TAS dhana yoyote wewe ni kuchanganyikiwa kuhusu, 99 00:04:17,564 --> 00:04:20,480 na wao itabidi aina ya kwenda juu na wewe na mapitio ya dhana kwa jaribio. 100 00:04:20,480 --> 00:04:22,920 Jaribio 0, kama wewe ni katika Jumatatu, Jumatano sehemu, 101 00:04:22,920 --> 00:04:26,480 itakuwa Jumatano wakati wa class-- Jumatano wakati wa darasa. 102 00:04:26,480 --> 00:04:29,530 Na kisha kama wewe ni katika Jumanne, Alhamisi sehemu, 103 00:04:29,530 --> 00:04:32,577 itakuwa pia wakati wa darasa Alhamisi. 104 00:04:32,577 --> 00:04:34,410 Huwezi kweli kuchagua ambayo moja ya kwenda. 105 00:04:34,410 --> 00:04:35,640 Kama uko Jumatatu, Jumatano, una kwenda kwa Jumatano. 106 00:04:35,640 --> 00:04:38,056 Kama wewe ni juu Jumanne, Alhamisi una kwenda kwa Alhamisi. 107 00:04:38,056 --> 00:04:42,277 Lakini basi usiku huo, sisi wafanyakazi nzuri, itakuwa 108 00:04:42,277 --> 00:04:45,360 na jaribio kubwa grading chama katika ambayo tutaweza kupata alama yako nyuma yenu 109 00:04:45,360 --> 00:04:46,190 kwamba usiku. 110 00:04:46,190 --> 00:04:46,900 Kwa nini wakati? 111 00:04:46,900 --> 00:04:51,190 Wazi, ambaye anajua, lakini itakuwa kuwa nyuma yenu ndani ya masaa 24 112 00:04:51,190 --> 00:04:53,700 ili nyie hopefully kuwa na baadhi ya maoni na Ijumaa. 113 00:04:53,700 --> 00:04:55,870 >> Na kisha tuna wiki kweli Wacky. 114 00:04:55,870 --> 00:05:00,330 Hivyo pset5 ni moja ya psets gumu ya mwaka. 115 00:05:00,330 --> 00:05:03,370 Hivyo pole guys. 116 00:05:03,370 --> 00:05:06,520 Nini sisi ni kwenda kujaribu kufanya ni tunakwenda na 117 00:05:06,520 --> 00:05:08,380 baadhi ya msaada halisi mwishoni mwa wiki hiyo. 118 00:05:08,380 --> 00:05:12,970 Kwa sababu, kama wewe guys unaweza kuona, pset ni kutokana kabla ya kuanguka mapumziko. 119 00:05:12,970 --> 00:05:16,760 Hatuna msaada kwa ajili ya nyie wakati wa kuanguka mapumziko 120 00:05:16,760 --> 00:05:18,897 na hivyo sisi kweli aina ya wanataka msemo huu kama, 121 00:05:18,897 --> 00:05:21,230 hebu kupata hii juu na, hebu kazi kweli, kweli ngumu 122 00:05:21,230 --> 00:05:25,380 wiki hizi mbili, kupata Jaribio hii na kuongeza psets hizi mbili kufanywa na 123 00:05:25,380 --> 00:05:29,650 na kisha nyie kuwa nzuri kufurahi muda wa siku saba bila kufikiri kuhusu CS. 124 00:05:29,650 --> 00:05:33,750 >> Hivyo ili kwa kuwa kwa kutokea, sisi ni pengine 125 00:05:33,750 --> 00:05:36,870 kwenda hoja ya kifungu yangu kwa Jumapili mchana. 126 00:05:36,870 --> 00:05:39,070 Itakuwa zingine hivyo hakuna wasiwasi kama huwezi kuja. 127 00:05:39,070 --> 00:05:41,595 Lakini sinema online mapenzi kuwa huko na kupatikana 128 00:05:41,595 --> 00:05:47,630 ili nyie na Jumapili, Jumatatu, Jumanne, kufanya kazi ya pset5. 129 00:05:47,630 --> 00:05:50,205 Na kisha ni kuanguka kuvunja na hakuna CS na kisha 130 00:05:50,205 --> 00:05:51,830 sisi kurudi na kurudi kwake mwaka saga. 131 00:05:51,830 --> 00:05:54,926 >> Lakini itakuja kuwa wiki nzuri kwa ajili ya mapumziko kuanguka 132 00:05:54,926 --> 00:05:58,050 na sisi kweli wanataka kufanya hivyo kama mkazo bure kwa kila mtu iwezekanavyo ambayo 133 00:05:58,050 --> 00:06:02,620 Hii ndiyo sababu sisi wakiongozwa pset kuwa kutokana kabla ya kuanguka mapumziko badala ya baada. 134 00:06:02,620 --> 00:06:07,601 Kwa sababu it's-- I mean, mimi aina ya kujisikia kama ni kushindwa madhumuni ya kuwa na 135 00:06:07,601 --> 00:06:10,850 tarehe ya mwisho baada ya kuanguka mapumziko kama kuna hakuna msaada anyways wakati wa kuanguka mapumziko. 136 00:06:10,850 --> 00:06:14,670 Hivyo ni rather-- Nadhani tunatarajia kuelekeza nguvu zaidi katika hali hiyo sasa. 137 00:06:14,670 --> 00:06:16,950 Je, mtu yeyote una maswali kuhusu ratiba hiyo? 138 00:06:16,950 --> 00:06:17,830 Chochote utata? 139 00:06:17,830 --> 00:06:18,330 Naam. 140 00:06:18,330 --> 00:06:20,944 >> Watazamaji: Je bado tuna hotuba ya 21? 141 00:06:20,944 --> 00:06:21,610 ANDI PENG: Naam. 142 00:06:21,610 --> 00:06:26,421 Hivyo tarehe 21, pale ni kwenda kuwa hotuba kwamba ni moja kwa moja kutoka Harvard. 143 00:06:26,421 --> 00:06:29,170 Sijui kama Daudi ni sinema au kama yeye kweli mhadhiri, 144 00:06:29,170 --> 00:06:32,430 lakini ni kwenda kuwa inapatikana online kwa nyie kupata. 145 00:06:32,430 --> 00:06:35,510 Hivyo tu kuhakikisha kuchonga saa nje mahali fulani katika kuanguka mapumziko 146 00:06:35,510 --> 00:06:39,375 hivyo nyie wanaweza kupata juu ya kwamba hotuba. 147 00:06:39,375 --> 00:06:39,875 Yeah? 148 00:06:39,875 --> 00:06:40,300 >> Watazamaji: Naam. 149 00:06:40,300 --> 00:06:40,422 Pole. 150 00:06:40,422 --> 00:06:41,280 I got hapa couple-- 151 00:06:41,280 --> 00:06:41,640 >> ANDI PENG: Hakuna wasiwasi. 152 00:06:41,640 --> 00:06:42,556 Hapa, kuchukua baadhi ya pipi. 153 00:06:42,556 --> 00:06:45,350 154 00:06:45,350 --> 00:06:47,800 >> Watazamaji: Hey, mimi hawakupata hiyo. 155 00:06:47,800 --> 00:06:53,869 Hivyo tu kwa kurejea, si kesho lakini Jumatano baada ya hapo, tuna jaribio. 156 00:06:53,869 --> 00:06:54,660 ANDI PENG: Sahihi. 157 00:06:54,660 --> 00:06:59,207 Watazamaji: Na itakuja be-- nini muundo wa jaribio? 158 00:06:59,207 --> 00:06:59,790 ANDI PENG: Oh. 159 00:06:59,790 --> 00:07:03,870 Hivyo tutaweza kutuma nje email kwamba inashughulikia kwamba zaidi ya yote kwa kina. 160 00:07:03,870 --> 00:07:06,590 Lakini, kimsingi, ni tu inashughulikia mada za msingi tayari kufunikwa 161 00:07:06,590 --> 00:07:09,042 katika nusu ya kwanza ya muhula. 162 00:07:09,042 --> 00:07:12,250 Kutakuwa na vikao mapitio na swali na majibu hivyo hakuna wasiwasi juu ya hilo. 163 00:07:12,250 --> 00:07:14,107 Lakini tutaweza kuwa kwenda juu ya kwamba pia. 164 00:07:14,107 --> 00:07:16,940 Watazamaji: Je, ni kwenda kuwa, sisi kuleta kompyuta yetu na kanuni there-- 165 00:07:16,940 --> 00:07:17,140 ANDI PENG: Hapana 166 00:07:17,140 --> 00:07:20,130 Ni kwenda kuwa nyie kuandika na kujibu maswali kwa mkono. 167 00:07:20,130 --> 00:07:21,160 >> Watazamaji: Oh. 168 00:07:21,160 --> 00:07:23,160 >> ANDI PENG: Hivyo tutaweza kutoa mazoea nje na mambo 169 00:07:23,160 --> 00:07:26,420 hivyo nyie kutaka labda kwenda nyuma na kuandika upya Mario kwa mkono tu 170 00:07:26,420 --> 00:07:28,100 kuhakikisha wewe guys kuwa wazo la jinsi ya kufanya hivyo. 171 00:07:28,100 --> 00:07:29,933 Kwa sababu wakati mwingine wakati kuandika kwa mkono wewe 172 00:07:29,933 --> 00:07:32,656 kusahau semicolons na mambo na kwamba ni mbaya. 173 00:07:32,656 --> 00:07:34,156 Watazamaji: Je, si kwamba kuwa [inaudible]? 174 00:07:34,156 --> 00:07:38,290 Kama, wewe ni kupata semicolon juu ya your-- 175 00:07:38,290 --> 00:07:40,270 >> ANDI PENG: Ndiyo na hapana. 176 00:07:40,270 --> 00:07:43,170 Tutaweza majadiliano zaidi katika kina kuhusu jinsi mpangilio jaribio ni 177 00:07:43,170 --> 00:07:44,550 na jinsi tunakwenda daraja. 178 00:07:44,550 --> 00:07:47,425 Lakini kimsingi, tu kujua kwamba ujumla format ni kwenda kuwa wewe 179 00:07:47,425 --> 00:07:49,930 guys ama kutafsiri code-- kujibu maswali ya msingi. 180 00:07:49,930 --> 00:07:51,370 Kama mimi aliuliza wewe, ni nini maktaba? 181 00:07:51,370 --> 00:07:53,450 Nyie lazima kujua nini a maktaba gani na kuandika kwamba chini. 182 00:07:53,450 --> 00:07:56,283 Au mimi anaweza kusema, kuandika mpango huo Prints Hello World kwa screen. 183 00:07:56,283 --> 00:08:01,140 Nyie bila kuandika, int kuu utupu printf hujambo dunia semicolon. 184 00:08:01,140 --> 00:08:01,908 Naam. 185 00:08:01,908 --> 00:08:04,398 >> Watazamaji: Hivyo si kwenda kwa kuwa mahali popote [inaudible] 186 00:08:04,398 --> 00:08:05,900 kiwango cha ugumu wa tatizo kuweka? 187 00:08:05,900 --> 00:08:06,170 >> ANDI PENG: Hapana 188 00:08:06,170 --> 00:08:06,380 Hakuna 189 00:08:06,380 --> 00:08:07,046 Sisi won't-- yeah. 190 00:08:07,046 --> 00:08:10,030 Kuandika ukamilifu wa mchezo wa 15 katika dakika 20, kwenda. 191 00:08:10,030 --> 00:08:12,120 Hapana, huwezi kuwa na kwamba. 192 00:08:12,120 --> 00:08:12,801 Hakuna 193 00:08:12,801 --> 00:08:13,342 Watazamaji: Sawa. 194 00:08:13,342 --> 00:08:15,326 Hivyo kwamba ni Jumatano. 195 00:08:15,326 --> 00:08:19,017 Wakati kwamba wiki sisi pia kuwa tatizo gumu kuweka? 196 00:08:19,017 --> 00:08:19,600 ANDI PENG: Hapana 197 00:08:19,600 --> 00:08:22,970 Hivyo tatizo hilo kutokana kuweka siku moja kabla ya kuanguka mapumziko. 198 00:08:22,970 --> 00:08:25,690 Schedule-- barua pepe kwa kweli kutuma nje 199 00:08:25,690 --> 00:08:27,232 Dakika 20 iliyopita kuhusu yote haya. 200 00:08:27,232 --> 00:08:28,689 Hivyo nyie tu kuangalia barua pepe yako. 201 00:08:28,689 --> 00:08:29,430 Ni utakuwa huko. 202 00:08:29,430 --> 00:08:30,060 Naam. 203 00:08:30,060 --> 00:08:31,701 Hakuna wasiwasi. 204 00:08:31,701 --> 00:08:32,200 Baridi. 205 00:08:32,200 --> 00:08:34,900 206 00:08:34,900 --> 00:08:38,900 >> Maswali yoyote ujumla kuhusu matangazo, grading, Quizzes, 207 00:08:38,900 --> 00:08:41,659 kabla ya sisi kupiga mbizi haki ndani kuyatumia ambayo itakuwa hutumia 208 00:08:41,659 --> 00:08:45,060 Wengi wa sehemu yetu wakati leo? 209 00:08:45,060 --> 00:08:47,030 Baridi. 210 00:08:47,030 --> 00:08:47,530 Sawa. 211 00:08:47,530 --> 00:08:50,905 Hivyo, nyie wote kuangalia lovely-- hii Sijui nini simu yake. 212 00:08:50,905 --> 00:08:53,490 Jambo ambapo claymation akapiga yenyewe up kwa sababu 213 00:08:53,490 --> 00:08:54,820 hakutumia pointer kwa usahihi. 214 00:08:54,820 --> 00:08:57,629 Naam, mpango wako ni kwenda pengine pigo yenyewe up kama wewe 215 00:08:57,629 --> 00:08:59,170 hawatumii kuyatumia kwa usahihi vile vile. 216 00:08:59,170 --> 00:09:01,250 Hivyo sisi ni kwenda kufanya kuhakikisha kwamba haina kutokea. 217 00:09:01,250 --> 00:09:04,810 >> Leo tunakwenda kufanya baadhi ya furaha pointer. 218 00:09:04,810 --> 00:09:08,970 Mimi nina kwenda juu ya mambo kama vizuri kama Nadhani 219 00:09:08,970 --> 00:09:10,790 Inawezekana katika sura ndogo wakati. 220 00:09:10,790 --> 00:09:14,592 Lakini kuna kiasi tu ili kufidia kwamba kwa kweli mimi nataka nyie, 221 00:09:14,592 --> 00:09:17,300 kama huna kuelewa kitu, na siyo tu napenda kuendelea. 222 00:09:17,300 --> 00:09:18,580 Kwa sababu kama huna kuelewa kitu, 223 00:09:18,580 --> 00:09:21,329 pengine wewe si kwenda kuelewa chochote nasema baada ya hapo. 224 00:09:21,329 --> 00:09:23,310 Hivyo tafadhali kuacha yangu na kuuliza swali. 225 00:09:23,310 --> 00:09:25,380 Kwa sababu kila aina ya snowballs pamoja. 226 00:09:25,380 --> 00:09:27,800 Kama, kuyatumia kuongoza katika kumbukumbu kuongoza katika mambo mengine. 227 00:09:27,800 --> 00:09:31,710 Na hivyo kama huna kuelewa kuyatumia, kunizuia na tutaweza ukafikirie 228 00:09:31,710 --> 00:09:35,070 na maisha itakuwa vizuri. 229 00:09:35,070 --> 00:09:35,680 >> Baridi. 230 00:09:35,680 --> 00:09:39,050 Hivyo ni jinsi wengi wenu guys katika hotuba, Daudi zilizotajwa kuyatumia, 231 00:09:39,050 --> 00:09:42,050 akili yako aina ya yamegeuka Jell-O? 232 00:09:42,050 --> 00:09:42,550 Naam. 233 00:09:42,550 --> 00:09:44,190 Nzuri. 234 00:09:44,190 --> 00:09:46,900 Sisi ni kwenda kujaribu kwa de-Jell-O akili yako leo. 235 00:09:46,900 --> 00:09:50,300 Tunakwenda kweli utaratibu kwenda kwa njia ya nini hasa pointer ni, 236 00:09:50,300 --> 00:09:52,530 kile yake, na jinsi sisi matumizi yao. 237 00:09:52,530 --> 00:09:56,620 >> Basi wote pointers-- hivyo kawaida na vigezo 238 00:09:56,620 --> 00:10:00,920 tumekuwa kutumia katika coding, kama vigezo kama vile integers au masharti 239 00:10:00,920 --> 00:10:04,790 au ikifungwa, wao ni wote kimsingi thamani kwa ajili yao 240 00:10:04,790 --> 00:10:06,870 kama vile anuani akizungumzia thamani hiyo. 241 00:10:06,870 --> 00:10:08,895 Hivyo nina kwenda kuteka haki hii sasa. 242 00:10:08,895 --> 00:10:14,270 243 00:10:14,270 --> 00:10:16,140 Tuna karibu hakuna chaki lakini hiyo ni sawa. 244 00:10:16,140 --> 00:10:25,550 >> Hivyo kwa mfano, kwa kawaida njia ambayo tumekuwa 245 00:10:25,550 --> 00:10:30,860 wamekuwa wakitumia vigezo ni sisi kujenga jina la kutofautiana wa aina int, hebu 246 00:10:30,860 --> 00:10:31,360 kusema tu. 247 00:10:31,360 --> 00:10:37,360 Hivyo hapa sisi tumepewa int x na tuko initializing kwamba int 50. 248 00:10:37,360 --> 00:10:42,390 Hivyo hapa katika hii block ya kumbukumbu juu ya yetu kompyuta tumekuwa kuhifadhiwa idadi ya 50. 249 00:10:42,390 --> 00:10:46,170 Hivyo ambapo kuyatumia kuja kucheza ni kwamba kompyuta yako itself-- kama, hapa, 250 00:10:46,170 --> 00:10:48,880 kimwili katika gari ngumu katika RAM ya computer-- yangu 251 00:10:48,880 --> 00:10:51,147 ni tu ina kiasi kidogo cha kumbukumbu. 252 00:10:51,147 --> 00:10:53,980 Huwezi tu kuendelea kuhifadhi vitu juu ya mambo juu ya mambo 253 00:10:53,980 --> 00:10:54,990 na kuwa nao wote. 254 00:10:54,990 --> 00:10:59,570 >> Hivyo njia kwamba sisi allot dynamically kumbukumbu ya kuwa na uwezo wa kuhifadhi nini tunataka 255 00:10:59,570 --> 00:11:03,150 na upatikanaji hilo, ni kwa kuwa na kuyatumia. 256 00:11:03,150 --> 00:11:06,210 Hivyo kufikiria katika kumbukumbu nafasi yako, sawa. 257 00:11:06,210 --> 00:11:10,420 Kama hii ni RAM ya yako kompyuta, una bits hizi kidogo 258 00:11:10,420 --> 00:11:14,540 au vitalu au ka ya kumbukumbu katika which-- hizi ni kidogo tu 259 00:11:14,540 --> 00:11:18,120 vitalu kwamba zimetengwa nje ya gari ngumu au RAM ya kompyuta yako, 260 00:11:18,120 --> 00:11:21,950 na ndani ya kila mmoja vitalu wale unaweza kuhifadhi mambo mbalimbali. 261 00:11:21,950 --> 00:11:26,990 Hivyo kwa mfano, moja safu katika mfano huu 262 00:11:26,990 --> 00:11:29,984 hapa ni byte moja ambayo ni yenye bits nane. 263 00:11:29,984 --> 00:11:32,900 Idadi hubadilika kutegemea mfumo wa uendeshaji wa kompyuta yako. 264 00:11:32,900 --> 00:11:35,942 Kwa mfano, jinsi wengi wenu kuwa kusikia 32-bit dhidi uendeshaji 64-bit 265 00:11:35,942 --> 00:11:36,441 mifumo? 266 00:11:36,441 --> 00:11:37,070 Hasa. 267 00:11:37,070 --> 00:11:38,860 >> Basi wote kwamba ni kusema ni kwamba memory-- 268 00:11:38,860 --> 00:11:42,420 kwa njia hiyo kwamba kompyuta yako itaweza kumbukumbu ni tofauti. 269 00:11:42,420 --> 00:11:45,370 Ambayo ni kwa nini ni kweli muhimu kuelewa 270 00:11:45,370 --> 00:11:49,450 nini majukumu ya kumbukumbu yenyewe badala kuliko makini na namba. 271 00:11:49,450 --> 00:11:52,400 Kwa hiyo sisi si kweli huduma jinsi kubwa safu hii 272 00:11:52,400 --> 00:11:55,710 ni, sisi tu haja ya huduma kuhusu jinsi kubwa tunahitaji int kuwa, 273 00:11:55,710 --> 00:11:58,350 jinsi kubwa kufanya tunahitaji kamba kuwa, jinsi kubwa ni pointer? 274 00:11:58,350 --> 00:12:00,630 275 00:12:00,630 --> 00:12:01,130 SAWA. 276 00:12:01,130 --> 00:12:03,690 Hivyo ni kwenda kuwa mengi ya nzito, mnene habari. 277 00:12:03,690 --> 00:12:07,005 Mimi nina kwenda kukupa guys a wanandoa Comic wakati misaada hapa. 278 00:12:07,005 --> 00:12:09,130 Nyie lazima wote kuwa na uwezo kuelewa sasa. 279 00:12:09,130 --> 00:12:12,550 Kwa sababu tunajua kwamba kuyatumia ni anwani, 280 00:12:12,550 --> 00:12:14,480 na wale ni tofauti na vigezo. 281 00:12:14,480 --> 00:12:14,980 SAWA. 282 00:12:14,980 --> 00:12:15,610 Baridi. 283 00:12:15,610 --> 00:12:17,065 CS utani ni bora, ndiyo? 284 00:12:17,065 --> 00:12:19,800 285 00:12:19,800 --> 00:12:23,450 >> Hivyo njia twende juu ya kuunda pointer 286 00:12:23,450 --> 00:12:25,750 ni aina maalumu sana ya syntax. 287 00:12:25,750 --> 00:12:27,870 Kama ilivyo kwa kujenga yoyote aina ya kutofautiana, ni 288 00:12:27,870 --> 00:12:30,240 kwenda kuwa maalum syntax sisi kutumia ili kujenga yake. 289 00:12:30,240 --> 00:12:34,830 Hivyo wakati akitangaza pointer wowote, pointer ni essentially-- 290 00:12:34,830 --> 00:12:37,040 Nadhani muhimu sehemu ya kuyatumia ni 291 00:12:37,040 --> 00:12:41,650 kwamba wakati kutofautiana ina wote thamani na mitaani, 292 00:12:41,650 --> 00:12:44,100 pointer ni mahali. 293 00:12:44,100 --> 00:12:45,740 Thamani yake ni mahali. 294 00:12:45,740 --> 00:12:48,120 Hivyo ni kuhifadhiwa anuani katika anwani tofauti. 295 00:12:48,120 --> 00:12:49,120 Kama kwamba inafanya hisia yoyote. 296 00:12:49,120 --> 00:12:52,390 Tutaweza kwenda juu hili kwa undani zaidi, lakini hiyo ni aina ya kurefusha maisha 297 00:12:52,390 --> 00:12:54,370 ya why-- ya jinsi mashine ni kuhifadhiwa. 298 00:12:54,370 --> 00:12:58,900 >> Hivyo njia kwamba kujenga pointer ni kwa kufanya aina yoyote ya data 299 00:12:58,900 --> 00:13:02,840 kwamba pointer ni kwenda kuwa referencing na then-- 300 00:13:02,840 --> 00:13:05,324 na star-- na kisha jina la pointer. 301 00:13:05,324 --> 00:13:07,240 Hivyo hapa, kama sisi alitaka kujenga pointer kwamba 302 00:13:07,240 --> 00:13:11,640 Alisema kuelekea integer, na sisi alitaka jina la pointer kuwa x, 303 00:13:11,640 --> 00:13:13,880 tunataka kufanya int x nyota. 304 00:13:13,880 --> 00:13:14,380 Yeah? 305 00:13:14,380 --> 00:13:16,680 >> Watazamaji: Na hivyo kama line zifuatazo wewe 306 00:13:16,680 --> 00:13:20,045 kufanya int x, mapenzi int x nyota zinaonyesha eneo la x 307 00:13:20,045 --> 00:13:21,170 wewe ni kufafanua baadaye? 308 00:13:21,170 --> 00:13:22,000 >> ANDI PENG: Swali Kweli nzuri. 309 00:13:22,000 --> 00:13:23,860 Tutaweza kwenda juu katika hii wanandoa slides baadaye. 310 00:13:23,860 --> 00:13:24,920 Naam. 311 00:13:24,920 --> 00:13:27,610 Na jambo moja na kisha char na sawa ikifungwa kitu. 312 00:13:27,610 --> 00:13:29,950 Tu kujua kwamba katika hatua hii tumeunda pointer, 313 00:13:29,950 --> 00:13:32,470 sisi si kweli kuweka ni kwa sawa chochote bado. 314 00:13:32,470 --> 00:13:34,110 Sisi si kweli inatazamwa yake. 315 00:13:34,110 --> 00:13:36,087 Kitu kimoja hapa wakati kujenga kutofautiana, 316 00:13:36,087 --> 00:13:39,420 umeunda jina la kutofautiana, wewe si kweli kuweka thamani yake. 317 00:13:39,420 --> 00:13:41,410 Same kitu hapa. 318 00:13:41,410 --> 00:13:42,110 >> SAWA. 319 00:13:42,110 --> 00:13:44,670 Hivyo ni jinsi gani sisi kuweka maadili kwa kuyatumia? 320 00:13:44,670 --> 00:13:47,190 Ni kwa referencing na dereferencing. 321 00:13:47,190 --> 00:13:52,260 Hivyo njia kwamba tunaweza rejea a varia-- pointer, kwa asili 322 00:13:52,260 --> 00:13:56,630 sisi kurudi anuani katika kumbukumbu ambao kutofautiana ni kuhifadhiwa. 323 00:13:56,630 --> 00:14:02,550 Hivyo kama mimi alikuwa pointer mimi itabidi kuteka hii mara moja sisi kupata slide ijayo, 324 00:14:02,550 --> 00:14:05,760 lakini tu kujua kwamba, kimsingi, and-- ampersand 325 00:14:05,760 --> 00:14:10,240 na kutofautiana yote anafanya ni kukuambia anuani 326 00:14:10,240 --> 00:14:11,780 ya ambapo kitu ni kuhifadhiwa. 327 00:14:11,780 --> 00:14:15,730 Na dereferencing ni kinyume ya kwamba, ambayo ni tu nyota. 328 00:14:15,730 --> 00:14:18,950 Nyota tu anatoa halisi data kuhifadhiwa katika anwani hiyo. 329 00:14:18,950 --> 00:14:21,090 >> Hivyo moja anatoa anuani kuhifadhiwa katika mitaani, 330 00:14:21,090 --> 00:14:23,945 mengine anatoa halisi thamani kuhifadhiwa katika mahali. 331 00:14:23,945 --> 00:14:25,820 Hivyo wawili kati yao kutoa wewe mambo mbalimbali. 332 00:14:25,820 --> 00:14:27,755 333 00:14:27,755 --> 00:14:29,880 Kwa mara nyingine tena, slides ni yote online hivyo hakuna wasiwasi 334 00:14:29,880 --> 00:14:33,200 kama nyie hawawezi nakala chini hii kwa wakati. 335 00:14:33,200 --> 00:14:36,330 >> Hivyo hebu tuangalie katika mfano huu hapa. 336 00:14:36,330 --> 00:14:40,530 Hivyo sisi tumepewa kubwa kumbukumbu safu hapa, sawa? 337 00:14:40,530 --> 00:14:42,920 Ambapo sisi tu vitalu ya , au kumbukumbu ka ya kumbukumbu, 338 00:14:42,920 --> 00:14:45,060 ambayo tunaweza kuhifadhi vitu mbalimbali. 339 00:14:45,060 --> 00:14:47,310 Hebu sema tu hizi ni anuani pointi katika kumbukumbu. 340 00:14:47,310 --> 00:14:51,350 Hivyo wakati wowote una - tazama 0x, kwamba wote ni nawaambia ni kwamba 341 00:14:51,350 --> 00:14:52,930 hiyo ni ya tarakimu hexadesimoli. 342 00:14:52,930 --> 00:14:56,310 Kama nyie wote tunajua, idadi inaweza kuwa msingi katika misingi mbalimbali. 343 00:14:56,310 --> 00:14:58,770 Msingi 10 ni jinsi sisi kawaida kutafsiri namba. 344 00:14:58,770 --> 00:15:00,550 Kuna pia msingi 2, ambayo ni mapacha. 345 00:15:00,550 --> 00:15:03,366 Na katika kesi hii, hexadecimal ni msingi 16. 346 00:15:03,366 --> 00:15:06,240 Ni tu njia tofauti ya kusema kutoka sifuri kwa 10-- au sifuri hadi tisa 347 00:15:06,240 --> 00:15:10,904 na kisha pia, B, C, D, E, F. Pia marejeo namba mbalimbali. 348 00:15:10,904 --> 00:15:12,570 Daudi akaenda ng'ambo hii katika hotuba kwa ufupi. 349 00:15:12,570 --> 00:15:14,280 Kama nyie ni kuchanganyikiwa, tu Google ni. 350 00:15:14,280 --> 00:15:17,370 Kuna njia kweli rahisi kujifunza nini tarakimu hexadesimoli ni. 351 00:15:17,370 --> 00:15:19,510 Wote kwamba ni kweli muhimu sasa hivi ni kwa ajili yenu 352 00:15:19,510 --> 00:15:24,170 guys kujua kwamba a hexadecimal tarakimu katika C 353 00:15:24,170 --> 00:15:27,090 anaelezea you-- kwamba kwa kawaida atakwambia kwamba ni pointer. 354 00:15:27,090 --> 00:15:29,150 Au kwamba ni mahali. 355 00:15:29,150 --> 00:15:33,310 >> Hivyo katika mfano huu hapa, int x sawa 5. 356 00:15:33,310 --> 00:15:36,350 Sisi ni kujenga integer-- pole, kutofautiana wa aina 357 00:15:36,350 --> 00:15:39,090 integer na sisi ni initializing yake kwa 5. 358 00:15:39,090 --> 00:15:47,040 Hivyo hapa juu ya kumbukumbu bodi yetu, tunaweza kuona kwamba x ni kwa anwani ya 0x0 359 00:15:47,040 --> 00:15:50,550 na thamani kwamba wameweza kuhifadhiwa ndani yake ni 5. 360 00:15:50,550 --> 00:15:52,370 Kwamba lazima kufanya maana kwa kila mtu, sawa? 361 00:15:52,370 --> 00:15:53,030 SAWA. 362 00:15:53,030 --> 00:15:56,520 >> Na kisha kile ambacho tumefanya katika mstari wa pili wa kanuni 363 00:15:56,520 --> 00:16:00,290 ni kwamba tumeunda pointer ya aina int. 364 00:16:00,290 --> 00:16:02,750 Hiyo ni nini int nyota pointer ni kufanya. 365 00:16:02,750 --> 00:16:07,320 Na kwamba ni sawa na kwamba ampersand x ni kutoa pepe ya kitu fulani. 366 00:16:07,320 --> 00:16:12,120 Hivyo pepe ya x katika mfano huu ni 0x0. 367 00:16:12,120 --> 00:16:15,630 Na hivyo anwani hiyo ni kuwa kuhifadhiwa katika kwamba pointer. 368 00:16:15,630 --> 00:16:17,360 Je, hiyo mantiki kwa kila mtu? 369 00:16:17,360 --> 00:16:19,965 >> Hivyo kufikiria Haya kufikiria pointers-- hapa 370 00:16:19,965 --> 00:16:24,780 katika Yale tuna mfumo SLP ambapo kila mwanafunzi ana barua 371 00:16:24,780 --> 00:16:26,960 kushughulikia ambapo unaweza kwenda ndani ya basement ya LW 372 00:16:26,960 --> 00:16:30,492 na unaweza tu kwenda na kunyakua chochote unahitaji kutoka anwani hiyo. 373 00:16:30,492 --> 00:16:32,450 Kitu kimoja kinachotokea hapa katika kompyuta. 374 00:16:32,450 --> 00:16:36,770 Una ka hizo kumbukumbu kwamba unaweza kuhifadhi habari katika, 375 00:16:36,770 --> 00:16:39,529 lakini ili kujua ambayo vipande vya taarifa 376 00:16:39,529 --> 00:16:42,570 match up ya kile wewe ni kujaribu kupata na wapi, unahitaji pointer kwamba 377 00:16:42,570 --> 00:16:43,740 anaelezea jinsi ya kwenda huko. 378 00:16:43,740 --> 00:16:47,270 >> Hivyo kwa mfano, kwa ajili yangu, PO wangu sanduku, Nina maalum tano tarakimu idadi. 379 00:16:47,270 --> 00:16:48,400 Hiyo ni anwani yangu. 380 00:16:48,400 --> 00:16:51,880 Hivyo siwezi kimwili kwenda kumbukumbu, Siwezi kuangalia mitaani, 381 00:16:51,880 --> 00:16:54,507 Naweza kwenda kuwa SLP na kupata data ndani. 382 00:16:54,507 --> 00:16:57,090 Je, hiyo mantiki Kila mtu Kompyuta yako ni kimsingi 383 00:16:57,090 --> 00:16:59,000 kufanya exact kitu. 384 00:16:59,000 --> 00:17:02,750 >> Basi wote pointer ni kufanya ni kwamba ni kujenga kumbukumbu tu 385 00:17:02,750 --> 00:17:06,099 na takwimu zake kumbukumbu ni kweli pepe ya kitu kingine. 386 00:17:06,099 --> 00:17:08,210 Basi unaweza kwenda na kupata hiyo. 387 00:17:08,210 --> 00:17:09,060 Kila mtu mwema? 388 00:17:09,060 --> 00:17:10,720 Kila mtu mzuri na mimi hadi sasa? 389 00:17:10,720 --> 00:17:11,360 SAWA. 390 00:17:11,360 --> 00:17:11,859 Baridi. 391 00:17:11,859 --> 00:17:14,311 392 00:17:14,311 --> 00:17:14,810 Sawa. 393 00:17:14,810 --> 00:17:19,160 Hivyo karibu kitu kimoja kama kabla. 394 00:17:19,160 --> 00:17:23,849 Hivyo tuna, kwanza, kutofautiana kuitwa x ambao case-- 395 00:17:23,849 --> 00:17:27,700 Mimi nina kwenda na mabadiliko ya thamani huu kwa 5. 396 00:17:27,700 --> 00:17:31,820 Hebu tu kusema anuani ya hii katika kumbukumbu ni 0x0. 397 00:17:31,820 --> 00:17:33,070 00. 398 00:17:33,070 --> 00:17:33,570 Kubwa. 399 00:17:33,570 --> 00:17:35,320 >> Hivyo basi, juu ya pili yetu mstari wa kanuni, tuko 400 00:17:35,320 --> 00:17:41,210 kwenda kujenga pointer aitwaye PTR pointer. 401 00:17:41,210 --> 00:17:45,760 Na anuani ya kwamba, hebu tu kusema kwamba ni 0x01 katika kumbukumbu. 402 00:17:45,760 --> 00:17:48,280 Na sisi kweli wanataka store-- ampersand 403 00:17:48,280 --> 00:17:50,620 x anatoa pepe ya nini x alikuwa. 404 00:17:50,620 --> 00:17:53,990 Na anuani ya x ilikuwa 0x00. 405 00:17:53,990 --> 00:17:57,300 Hivyo pointer hii sasa kweli ina anuani 406 00:17:57,300 --> 00:18:00,210 kuhifadhiwa kama thamani yake ya kile x ilikuwa. 407 00:18:00,210 --> 00:18:01,700 Kila mtu na mimi hadi sasa? 408 00:18:01,700 --> 00:18:02,320 Baridi. 409 00:18:02,320 --> 00:18:04,670 >> Na kisha, kwa njia hiyo tunataka nakala hiyo, 410 00:18:04,670 --> 00:18:09,650 ni kama tunataka kutangaza na initialize kuzuia nyingine ya kumbukumbu ya aina int. 411 00:18:09,650 --> 00:18:10,150 Sawa? 412 00:18:10,150 --> 00:18:11,130 Hii itakuwa int. 413 00:18:11,130 --> 00:18:14,130 Itakuwa kuitwa nakala. 414 00:18:14,130 --> 00:18:17,120 Na wewe ni kwenda get-- hivyo nyota pointer anatoa 415 00:18:17,120 --> 00:18:19,080 data halisi kutoka anwani hiyo. 416 00:18:19,080 --> 00:18:22,490 Ampersand anatoa mitaani, nyota anatoa data. 417 00:18:22,490 --> 00:18:24,630 Hivyo data kwenye pointer. 418 00:18:24,630 --> 00:18:29,420 Pointer hii ni akizungumzia 5. 419 00:18:29,420 --> 00:18:33,140 Na hivyo kazi hii here-- nyota pointer 420 00:18:33,140 --> 00:18:39,740 unaendelea, anapata vilivyomo katika kuzuia hili na maduka hapa. 421 00:18:39,740 --> 00:18:41,730 Kila mtu wazi juu ya jinsi yaliyotokea? 422 00:18:41,730 --> 00:18:45,490 >> Hivyo waendeshaji mbili haki there-- ampersand na star-- 423 00:18:45,490 --> 00:18:48,250 tu kufanya mambo mbalimbali wakati kutumika juu ya kuyatumia. 424 00:18:48,250 --> 00:18:50,837 Moja anapata mitaani, moja anapata thamani halisi. 425 00:18:50,837 --> 00:18:53,670 Ili kuhakikisha wakati nyie ni coding kwamba usiwachanganye mbili 426 00:18:53,670 --> 00:18:55,650 kwa sababu wao ni tofauti kabisa. 427 00:18:55,650 --> 00:18:58,880 Hapa tuna mfano mzuri wa 0x01. 428 00:18:58,880 --> 00:19:01,207 Hiyo ni kweli nzuri idadi ndogo kukumbuka. 429 00:19:01,207 --> 00:19:03,040 Katika kompyuta yako halisi wewe ni kwenda na 430 00:19:03,040 --> 00:19:06,740 kubwa punda idadi hiyo ni kitu si kwamba nzuri, si mazuri. 431 00:19:06,740 --> 00:19:08,280 Ni kwenda kuwa baadhi ya thamani ya takataka. 432 00:19:08,280 --> 00:19:10,920 Na hivyo ni kwenda kweli, kweli fujo up programu yako. 433 00:19:10,920 --> 00:19:12,670 Ni muhimu sana sasa hivi kwamba tuna 434 00:19:12,670 --> 00:19:16,150 misingi chini kwa why-- kama, kile kinachotokea wakati kimwili 435 00:19:16,150 --> 00:19:18,270 wewe ni mbio vitalu wale wa kanuni. 436 00:19:18,270 --> 00:19:19,120 Everyone-- yeah? 437 00:19:19,120 --> 00:19:21,425 >> Watazamaji: Hivyo int x sawa int nakala? 438 00:19:21,425 --> 00:19:24,650 439 00:19:24,650 --> 00:19:34,970 >> ANDI PENG: Hakuna sababu, katika kesi hii, int x-- thamani ya x-- sawa na 5, sawa? 440 00:19:34,970 --> 00:19:40,546 Na kisha int nakala sawa na 5. 441 00:19:40,546 --> 00:19:43,420 Hivyo kama ungekuwa equate yao kwa kila mmoja kwa sababu wao ni integers, 442 00:19:43,420 --> 00:19:46,379 ndiyo, wangeweza kutathmini kwa kweli. 443 00:19:46,379 --> 00:19:49,670 Lakini kama walikuwa masharti katika kumbukumbu, kama moja kwamba Daudi alifanya wakati wa mfano, 444 00:19:49,670 --> 00:19:51,670 hiyo ni tofauti kwa sababu re referencing 445 00:19:51,670 --> 00:19:54,920 anwani ya maeneo katika kumbukumbu na wangeweza equate na uongo. 446 00:19:54,920 --> 00:20:00,070 >> Hivyo hapa itakuwa kweli kwa sababu wewe ni moja kwa moja kulinganisha values-- integers-- 447 00:20:00,070 --> 00:20:02,240 lakini kwa wengine uko referencing pointi. 448 00:20:02,240 --> 00:20:05,290 Kwa sababu kamba ni katika safu, na all-- tutaweza majadiliano juu ya hii later-- 449 00:20:05,290 --> 00:20:09,940 lakini safu ni kimsingi tu pointer kwa kundi la chars katika kumbukumbu. 450 00:20:09,940 --> 00:20:11,610 Basi hizo tofauti kidogo. 451 00:20:11,610 --> 00:20:14,642 Lakini katika kesi hii, ndiyo, unaweza kufanya hivyo. 452 00:20:14,642 --> 00:20:17,354 >> Watazamaji: Je, unaweza kueleza pepe ya nakala? 453 00:20:17,354 --> 00:20:18,020 ANDI PENG: Naam. 454 00:20:18,020 --> 00:20:20,030 Hivyo hiyo ni just-- mimi hakuwa kujaza thamani 455 00:20:20,030 --> 00:20:23,022 lakini ni baadhi tu random mengine takataka thamani kwamba hatuna huduma ya juu. 456 00:20:23,022 --> 00:20:25,730 Kwa sababu mara tu kuanza mpango wewe kutambua kwamba sisi si kweli 457 00:20:25,730 --> 00:20:28,150 kweli huduma nini anwani halisi ni, 458 00:20:28,150 --> 00:20:30,470 sisi tu haja ya kujua nini katika anwani. 459 00:20:30,470 --> 00:20:31,608 Naam. 460 00:20:31,608 --> 00:20:36,034 >> Watazamaji: nyota karibu na int juu ya mstari wa pili, hiyo ni than-- tofauti 461 00:20:36,034 --> 00:20:36,700 ANDI PENG: Naam. 462 00:20:36,700 --> 00:20:39,015 Watazamaji: --the dereferencing na referencing nyota? 463 00:20:39,015 --> 00:20:39,681 ANDI PENG: Naam. 464 00:20:39,681 --> 00:20:43,180 Hivyo waandishi wa C-- yeyote aliamua kuandika lugha ya C-- 465 00:20:43,180 --> 00:20:44,200 Haikuwa smart sana. 466 00:20:44,200 --> 00:20:46,830 Hawakuwa smart sana katika kujaribu kufikiri kwa nini tunapaswa kufanya hivyo. 467 00:20:46,830 --> 00:20:49,413 Kama ilivyokuwa kwangu, napenda dhahiri kutumia herufi mbili tofauti. 468 00:20:49,413 --> 00:20:52,100 Lakini waliamua kutumia moja moja. 469 00:20:52,100 --> 00:20:56,607 >> Hivyo nyota baada int, kwamba anaelezea kompyuta 470 00:20:56,607 --> 00:20:58,190 kwamba wewe ni kuhusu kuunda pointer. 471 00:20:58,190 --> 00:21:00,820 Lakini kama wewe ni kujaribu dereference something-- kwa maneno mengine, 472 00:21:00,820 --> 00:21:03,780 kwenda anwani na kuvuta data kutoka somewhere-- 473 00:21:03,780 --> 00:21:05,070 nyota ni kutumika kwa njia tofauti. 474 00:21:05,070 --> 00:21:08,750 Hivyo nyie tu kuwa makini kuhusu si messing up matumizi mawili. 475 00:21:08,750 --> 00:21:09,870 Baridi. 476 00:21:09,870 --> 00:21:10,605 Yeah? 477 00:21:10,605 --> 00:21:14,680 >> Watazamaji: Hivyo tu kurudia kwa kuhakikisha kwamba mimi nina following-- 478 00:21:14,680 --> 00:21:16,252 >> ANDI PENG: Kabisa faini. 479 00:21:16,252 --> 00:21:20,491 >> Watazamaji: --in upande wa mkono wa kushoto wa kwamba slide, tunafanya jambo ambalo tunajua. 480 00:21:20,491 --> 00:21:23,124 Tunatangaza integer [Inaudible] ambazo ni sawa na 5. 481 00:21:23,124 --> 00:21:23,790 ANDI PENG: Naam. 482 00:21:23,790 --> 00:21:24,456 Watazamaji: Haki. 483 00:21:24,456 --> 00:21:28,960 Na kisha tuna kitu int nyota na inayosema kwamba, sawa, aina ya kama sisi 484 00:21:28,960 --> 00:21:31,235 alitangaza integer, sasa sisi ni kutangaza pointer. 485 00:21:31,235 --> 00:21:32,110 ANDI PENG: Usahihi. 486 00:21:32,110 --> 00:21:32,410 Sahihi. 487 00:21:32,410 --> 00:21:32,710 >> Watazamaji: Haki? 488 00:21:32,710 --> 00:21:33,870 Na pointer wetu ni PTR. 489 00:21:33,870 --> 00:21:34,080 >> ANDI PENG: Yep. 490 00:21:34,080 --> 00:21:35,460 Jina la pointer ni PTR. 491 00:21:35,460 --> 00:21:35,959 Pointer. 492 00:21:35,959 --> 00:21:39,000 Watazamaji: Na kisha sawa nx kwamba tu anasema C 493 00:21:39,000 --> 00:21:44,667 kwamba anataka kupata thamani katika integer x-- thamani kwamba integer x 494 00:21:44,667 --> 00:21:45,800 ilikuwa kwa ajili. 495 00:21:45,800 --> 00:21:49,050 >> ANDI PENG: Kuwa makini kwa sababu ampersand x kweli 496 00:21:49,050 --> 00:21:53,120 anasema kompyuta you-- kwamba wanataka kuvuta pepe ya nini x ni. 497 00:21:53,120 --> 00:21:56,350 Hivyo ampersand anatoa mitaani, nyota anatoa thamani. 498 00:21:56,350 --> 00:21:58,255 >> Watazamaji: Hivyo tunataka mahali. 499 00:21:58,255 --> 00:22:02,075 Hebu sema x ilikuwa at-- 500 00:22:02,075 --> 00:22:03,950 ANDI PENG: Sisi kwa kweli kujua nini x ni, sawa? 501 00:22:03,950 --> 00:22:06,790 Kwa sababu tunajua kwamba x was-- mimi nina kufanya hii juu lakini hebu sema tu, 502 00:22:06,790 --> 00:22:08,760 kiholela, ilikuwa 0x00. 503 00:22:08,760 --> 00:22:09,590 Sawa? 504 00:22:09,590 --> 00:22:14,120 Hivyo tunajua anwani ni 0x00, na hivyo wakati sisi kwenda na ampersand x, 505 00:22:14,120 --> 00:22:17,050 Tunajua kwamba kuwa lazima kutathmini kwa 0x00. 506 00:22:17,050 --> 00:22:20,810 Ambayo ni kwa nini sisi kuhifadhiwa kwamba kama thamani ya pointer yetu. 507 00:22:20,810 --> 00:22:21,924 Je, hiyo mantiki? 508 00:22:21,924 --> 00:22:22,832 >> Watazamaji: Ndiyo. 509 00:22:22,832 --> 00:22:28,057 Na nakala huenda kwa dereference ptr-- 510 00:22:28,057 --> 00:22:28,765 ANDI PENG: Haki. 511 00:22:28,765 --> 00:22:30,473 Watazamaji: --which ni pointer kwamba tumekuwa 512 00:22:30,473 --> 00:22:35,220 alitangaza kwamba inatuambia pepe ya integer x. 513 00:22:35,220 --> 00:22:36,160 >> ANDI PENG: Naam. 514 00:22:36,160 --> 00:22:39,272 >> Watazamaji: Na katika hili kesi moja, nyota PTR ni 515 00:22:39,272 --> 00:22:41,256 sawa na thamani ya x ambayo ni sawa na 5. 516 00:22:41,256 --> 00:22:42,744 >> ANDI PENG: Sahihi. 517 00:22:42,744 --> 00:22:44,728 >> Watazamaji: Moto. 518 00:22:44,728 --> 00:22:49,382 Na kwamba ni njia rahisi ya kupata kuwa au ni kwamba tu way-- 519 00:22:49,382 --> 00:22:51,840 ANDI PENG: Kwa hiyo hivi sasa ni haionekani mantiki sana kwa ajili yetu 520 00:22:51,840 --> 00:22:54,690 kwa kutumia yote ya wakati huu kufanya hii kitu super ngumu wakati 521 00:22:54,690 --> 00:22:57,606 zote tumefanya ni kuunda wawili tu integers kwa thamani ya 5, sawa? 522 00:22:57,606 --> 00:22:58,900 Ni haina mantiki. 523 00:22:58,900 --> 00:23:03,060 Lakini mara tutaweza kwenda juu mgao kumbukumbu and-- tutaweza 524 00:23:03,060 --> 00:23:06,067 kwenda juu kwa nini hii inaweza kuwa Handy na manufaa baadaye. 525 00:23:06,067 --> 00:23:09,150 Matumaini yangu wakati mimi kusema hatuna tu kujenga kazi hizi holela kwa wewe 526 00:23:09,150 --> 00:23:11,340 guys kujifunza kwa sababu tuko kujaribu kwa fujo na wewe. 527 00:23:11,340 --> 00:23:14,550 Kuna kweli anatumia kwa yote haya mambo na sisi majadiliano kuhusu wao. 528 00:23:14,550 --> 00:23:14,950 >> Watazamaji: Ajabu. 529 00:23:14,950 --> 00:23:15,350 >> ANDI PENG: Naam. 530 00:23:15,350 --> 00:23:16,150 >> Watazamaji: [inaudible]. 531 00:23:16,150 --> 00:23:16,450 >> ANDI PENG: Swali Mwema. 532 00:23:16,450 --> 00:23:17,510 >> Watazamaji: [inaudible]. 533 00:23:17,510 --> 00:23:18,000 >> ANDI PENG: Siyo. 534 00:23:18,000 --> 00:23:18,666 Ni kweli si. 535 00:23:18,666 --> 00:23:21,050 Watazamaji: vigezo --two kwamba pia sawa [inaudible]. 536 00:23:21,050 --> 00:23:22,400 SAWA. 537 00:23:22,400 --> 00:23:23,070 >> ANDI PENG: Naam. 538 00:23:23,070 --> 00:23:23,570 SAWA. 539 00:23:23,570 --> 00:23:25,249 Kabla ya kusonga mbele, ni wote wa wazi? 540 00:23:25,249 --> 00:23:26,790 Najua Taylor, wewe got katika kidogo marehemu. 541 00:23:26,790 --> 00:23:27,490 Ni sawa. 542 00:23:27,490 --> 00:23:28,100 Ni online. 543 00:23:28,100 --> 00:23:30,600 Itabidi kuangalia kwanza 20 dakika na wewe utakuwa na kila tendo jema. 544 00:23:30,600 --> 00:23:31,190 SAWA. 545 00:23:31,190 --> 00:23:31,690 Baridi. 546 00:23:31,690 --> 00:23:35,597 547 00:23:35,597 --> 00:23:37,140 >> Sawa. 548 00:23:37,140 --> 00:23:41,270 Hivyo hii ni kimsingi aina ya jambo kama hilo kwamba sisi tu alivyofanya. 549 00:23:41,270 --> 00:23:43,100 Ni tu katika fomu graphical. 550 00:23:43,100 --> 00:23:47,070 Kama ungekuwa na kufuatilia nini ilitokea tu, int x sawa 5, 551 00:23:47,070 --> 00:23:52,159 zote tumefanya katika hatua hii ni kujenga kutofautiana aitwaye x ya aina int. 552 00:23:52,159 --> 00:23:54,200 Tunakwenda kuhifadhi thamani ya 5 ndani yake. 553 00:23:54,200 --> 00:23:57,366 Hakuna pointer kwa sababu tuna si kweli kuundwa pointer bado, sawa? 554 00:23:57,366 --> 00:24:00,302 Na kisha katika ijayo mstari, int nyota pointer, 555 00:24:00,302 --> 00:24:02,760 hapo ndipo sisi ni kweli kimwili kujenga pointer 556 00:24:02,760 --> 00:24:05,010 na sisi ni kuweka kwamba sawa na, au referencing 557 00:24:05,010 --> 00:24:07,250 pointer, kwa ampersand x. 558 00:24:07,250 --> 00:24:10,002 Ambayo ni ambapo popote katika kumbukumbu hii ilitokea kuwa. 559 00:24:10,002 --> 00:24:12,210 Sikuwa kweli kujisumbua maamuzi juu ya thamani wakati huu. 560 00:24:12,210 --> 00:24:14,900 Lakini katika kesi hii, hatua hiyo ungekuwa sawa na ile. 561 00:24:14,900 --> 00:24:18,060 >> Na kisha chini huko, nyota pointer ni dereferencing. 562 00:24:18,060 --> 00:24:20,310 Hiyo ambapo sisi ni kuunganisha habari. 563 00:24:20,310 --> 00:24:24,170 Hivyo kwamba thamani katika x ni kweli kwenda kuwa sawa na 35. 564 00:24:24,170 --> 00:24:30,390 Hivyo katika hatua hii, tumekuwa kimsingi tu reinitialized x kwa 35 565 00:24:30,390 --> 00:24:32,320 bila ya kweli kugusa x. 566 00:24:32,320 --> 00:24:34,560 Tu kwa njia ya pointer kwamba alikuwa akizungumzia x, 567 00:24:34,560 --> 00:24:36,910 sisi kweli unaweza kubadilisha nini x alikuwa. 568 00:24:36,910 --> 00:24:38,420 Mimi nina kwenda kuteka hii nje pia. 569 00:24:38,420 --> 00:24:52,200 >> Hivyo hapa tumeunda baadhi anuani random hapa. 570 00:24:52,200 --> 00:24:54,734 Hebu tu kusema 0x00 tena. 571 00:24:54,734 --> 00:24:56,150 Hebu tu kusema kwamba ni mahali. 572 00:24:56,150 --> 00:25:00,830 Na tumeunda integer aitwaye x na thamani nimekuwa ajili ya ni 5. 573 00:25:00,830 --> 00:25:03,840 Katika mstari wa pili, int pointer hivyo sasa tumekuwa 574 00:25:03,840 --> 00:25:07,820 got jambo hili la pili hapa aitwaye pointer 575 00:25:07,820 --> 00:25:14,310 na tunakwenda to-- hebu sema tu ni baadhi ya wengine bila mpangilio kumbukumbu ya mahali. 576 00:25:14,310 --> 00:25:18,460 >> Hivyo sisi ni kwenda kuweka hii sawa na chochote kwamba alikuwa. 577 00:25:18,460 --> 00:25:21,540 578 00:25:21,540 --> 00:25:25,880 Na pointer hii ni kwenda kuelekezea thamani ya x 579 00:25:25,880 --> 00:25:30,090 Na kisha, kama sisi mabadiliko the-- kama sisi kufanya nyota pointer, 580 00:25:30,090 --> 00:25:32,800 ambayo inaenda thamani ya pointer yetu. 581 00:25:32,800 --> 00:25:36,979 Katika kesi hiyo, ni kwenda kufuatilia huu mshale juu ya thamani hii ya x 582 00:25:36,979 --> 00:25:38,395 na ni kwenda mabadiliko hayo kwa 35. 583 00:25:38,395 --> 00:25:41,400 584 00:25:41,400 --> 00:25:44,760 Kwa ufanisi, sisi tu iliyopita x bila kugusa x. 585 00:25:44,760 --> 00:25:48,970 Kupitia referencing tu kuyatumia, tunaweza kwenda na mabadiliko ya thamani ya x. 586 00:25:48,970 --> 00:25:50,050 Je, hiyo mantiki? 587 00:25:50,050 --> 00:25:55,200 >> Hivyo kwa njia hii, tunaweza kweli kubadili jina na rechange na reassign maadili 588 00:25:55,200 --> 00:25:57,750 kwa mambo ambayo hatukuwa kweli kufanya sisi wenyewe. 589 00:25:57,750 --> 00:26:00,925 Je, hiyo mantiki kwa kila mtu? 590 00:26:00,925 --> 00:26:01,425 Baridi. 591 00:26:01,425 --> 00:26:04,450 592 00:26:04,450 --> 00:26:05,310 SAWA. 593 00:26:05,310 --> 00:26:08,210 Hivyo tata mchoro hapa. 594 00:26:08,210 --> 00:26:09,360 Kwenda mstari kwa mstari. 595 00:26:09,360 --> 00:26:12,055 Kimsingi, tu kufanya halisi kitu kimoja kwamba mimi tu alifanya. 596 00:26:12,055 --> 00:26:15,977 597 00:26:15,977 --> 00:26:17,810 Kabla ya kusonga mbele, mimi kweli wanataka tu kufanya 598 00:26:17,810 --> 00:26:19,370 kuhakikisha kwamba kila mtu kweli wazi juu ya hili. 599 00:26:19,370 --> 00:26:26,260 Hivyo hapa, kanuni na kwamba tuna ni int a sawa na 3, b sawa na 4, c sawa na 5. 600 00:26:26,260 --> 00:26:33,130 Hivyo tumeunda integers tatu aitwaye a, b na c kwamba ni sawa na 3, 4 na 5. 601 00:26:33,130 --> 00:26:38,460 Na kisha sisi ni kujenga kuyatumia tatu hatua hiyo kwa kila moja ya vigezo hizo. 602 00:26:38,460 --> 00:26:41,760 >> Na sasa tunakwenda kwenda juu ya kimsingi 603 00:26:41,760 --> 00:26:44,240 kile kinachotokea wakati kazi juu yao. 604 00:26:44,240 --> 00:26:45,490 Hivyo kuteka yao nje. 605 00:26:45,490 --> 00:26:48,156 Kuchukua karatasi ya paper-- mimi si kujua kama nyie wote wana karatasi, 606 00:26:48,156 --> 00:26:50,930 lakini wale ambao hawana, labda kukopa kutoka wale ambao kufanya. 607 00:26:50,930 --> 00:26:53,580 Kuchukua karatasi na kwenda mstari kwa mstari. 608 00:26:53,580 --> 00:26:59,390 Na katika kila kazi kwamba kufanya, Nataka nyie kweli kuandika nje 609 00:26:59,390 --> 00:27:00,800 kile ni, b na c katika hatua hii. 610 00:27:00,800 --> 00:27:03,550 Na nini ni anwani, nini ni kuyatumia kwamba uhakika na b na c 611 00:27:03,550 --> 00:27:04,410 katika hatua hii? 612 00:27:04,410 --> 00:27:07,150 >> Na kisha hopefully hii itakuwa aina ya hatua nyie 613 00:27:07,150 --> 00:27:08,900 kupitia jinsi ya kufikiri juu ya kuyatumia. 614 00:27:08,900 --> 00:27:10,650 Sisi siyo kwenda njia zote za kwao. 615 00:27:10,650 --> 00:27:13,450 Labda mimi nitakupa five-- kama, dakika tatu. 616 00:27:13,450 --> 00:27:14,660 Kupata kuanza juu ya kwanza wachache. 617 00:27:14,660 --> 00:28:10,410 618 00:28:10,410 --> 00:28:10,959 Loo. 619 00:28:10,959 --> 00:28:11,459 Oops. 620 00:28:11,459 --> 00:28:20,940 621 00:28:20,940 --> 00:28:26,950 >> Watazamaji: Katika mstari wa pili, kwa nini si nyota [inaudible] kutofautiana? 622 00:28:26,950 --> 00:28:29,410 >> ANDI PENG: Kumbuka katika waendeshaji, katika wiki ya kwanza, 623 00:28:29,410 --> 00:28:31,730 kuongelea jinsi mkifanya sawa pamoja, 624 00:28:31,730 --> 00:28:35,320 kwamba tu ina maana sawa na pamoja c. 625 00:28:35,320 --> 00:28:39,370 Katika hili case-- hivyo hii ni mwingine njia ambayo nyota zinaweza kutumika. 626 00:28:39,370 --> 00:28:42,040 Mbali na referencing na kutangaza kuyatumia, 627 00:28:42,040 --> 00:28:44,440 kukumbuka kwamba pia ina maana kuzidisha. 628 00:28:44,440 --> 00:28:46,575 Hivyo katika kesi hii, ni d tu kuwa sawa na nyakati c. 629 00:28:46,575 --> 00:28:48,450 Hiyo tu kama tofauti njia ya kuandika kwamba. 630 00:28:48,450 --> 00:28:49,776 >> Watazamaji: sawa mara c. 631 00:28:49,776 --> 00:28:50,442 ANDI PENG: Naam. 632 00:28:50,442 --> 00:30:43,488 633 00:30:43,488 --> 00:30:47,130 >> Watazamaji: Ni nini maana ikiwa inasema ampersand barua? 634 00:30:47,130 --> 00:30:50,900 >> ANDI PENG: Ampersand njia wewe ni kwenda that-- uko 635 00:30:50,900 --> 00:30:54,760 kwenda mahali pointer ni akizungumzia na kuunganisha mahali. 636 00:30:54,760 --> 00:31:01,270 Hivyo ampersand anatoa mitaani, nyota anatoa thamani halisi huko. 637 00:31:01,270 --> 00:31:03,090 >> Watazamaji: Je, sisi kujenga juu ya mstari kwa mstari? 638 00:31:03,090 --> 00:31:04,881 >> ANDI PENG: Wewe kujenga juu ya mstari kwa mstari. 639 00:31:04,881 --> 00:31:07,260 Hivyo tu kwenda mstari mmoja katika muda na then-- wewe 640 00:31:07,260 --> 00:31:08,470 si kuwa na wasiwasi kuhusu kumaliza jambo zima. 641 00:31:08,470 --> 00:31:10,428 Hebu jaribu kupata kupitia labda mbili, mistari mitatu 642 00:31:10,428 --> 00:31:12,445 na kisha tutaweza kuitisha na kumaliza hii. 643 00:31:12,445 --> 00:31:15,530 644 00:31:15,530 --> 00:31:17,470 >> Ni kabisa OK ikiwa nyie ni waliopotea. 645 00:31:17,470 --> 00:31:19,334 Hii ni dhana ngumu kweli kweli. 646 00:31:19,334 --> 00:31:22,500 Kama nyie ni wasiwasi kwamba daraja la huenda kama hii kama Daudi alikuwa akisema, 647 00:31:22,500 --> 00:31:23,190 haina. 648 00:31:23,190 --> 00:31:25,949 Sisi ni kufikia dhana kilele cha ugumu 649 00:31:25,949 --> 00:31:27,740 na kisha itakuja kuwa kushuka sloping. 650 00:31:27,740 --> 00:31:29,110 Hivyo nyie ni karibu na hapo. 651 00:31:29,110 --> 00:31:31,080 Sisi wana kura ya pipi kupata nyie kupitia nundu. 652 00:31:31,080 --> 00:31:32,940 Nadhani pretty much baada ya kuanguka kuvunja tutaweza kuwa juu ya nundu 653 00:31:32,940 --> 00:31:34,220 na maisha itakuwa vizuri tena. 654 00:31:34,220 --> 00:31:36,580 Hivyo hakuna wasiwasi wakati wote. 655 00:31:36,580 --> 00:32:30,732 656 00:32:30,732 --> 00:32:31,232 Sawa. 657 00:32:31,232 --> 00:32:33,650 Mimi nitakupa guys 20 sekunde zaidi wa kufuta. 658 00:32:33,650 --> 00:33:12,560 659 00:33:12,560 --> 00:33:13,330 SAWA. 660 00:33:13,330 --> 00:33:13,830 Sawa. 661 00:33:13,830 --> 00:33:16,370 Hebu kuchukua kumchoma katika hili. 662 00:33:16,370 --> 00:33:19,430 Kama nyie nipe majibu, Mimi tu kwenda kwa aina yao katika. 663 00:33:19,430 --> 00:33:22,140 Na pengine we-- Unaweza mimi? 664 00:33:22,140 --> 00:33:23,317 Mimi kwa kweli hawawezi aina yake katika. 665 00:33:23,317 --> 00:33:24,400 Mimi itabidi kuteka ni juu ya bodi. 666 00:33:24,400 --> 00:33:31,420 667 00:33:31,420 --> 00:33:35,900 >> Hivyo hapa katika mstari huu kwanza tuna sawa na b nyota c. 668 00:33:35,900 --> 00:33:38,060 Pia Elliot kulelewa kweli, hatua nzuri kwa kweli. 669 00:33:38,060 --> 00:33:42,500 Kwa sababu mimi nilimsahau kwamba zaidi ya njia mbili tunaweza kutumia nyota alama, 670 00:33:42,500 --> 00:33:43,750 kuna kweli njia tatu. 671 00:33:43,750 --> 00:33:44,990 Kuzidisha. 672 00:33:44,990 --> 00:33:51,380 Na hivyo si tu kupata kuchanganyikiwa kwa sababu kuwa ni njia ya kwanza ya kutumia nyota. 673 00:33:51,380 --> 00:33:54,470 Ni kuwaambia tu kompyuta kwamba mimi nina kuhusu kujenga pointer. 674 00:33:54,470 --> 00:34:00,600 >> Njia ya pili kwa kufanya nyota wa pointer yako, 675 00:34:00,600 --> 00:34:04,320 kwamba anaelezea pointer kwamba unataka kupata data wakati huo pointer. 676 00:34:04,320 --> 00:34:06,710 Na kisha, bila shaka, kuna kuzidisha rahisi tu 677 00:34:06,710 --> 00:34:09,564 kati ya namba mbili kwamba anasema kuwa nataka kuzidisha mbili. 678 00:34:09,564 --> 00:34:11,730 Hivyo kuna mengi ya njia tunaweza kutumia nyota alama. 679 00:34:11,730 --> 00:34:13,830 Je, si kupata kuchanganyikiwa. 680 00:34:13,830 --> 00:34:16,991 Tu kuhakikisha kwamba nyie kuelewa nini hasa zote tatu wao 681 00:34:16,991 --> 00:34:18,630 unafanya. 682 00:34:18,630 --> 00:34:22,920 >> Hivyo katika mstari huu wa kwanza, a sawa na mara b c. 683 00:34:22,920 --> 00:34:26,850 Basi hebu kwenda kwa njia ya kile ni, ni nini b, ni nini c? 684 00:34:26,850 --> 00:34:32,600 Na ni nini pointer ya, pointer b, na c pointer? 685 00:34:32,600 --> 00:34:34,050 Je, ni sawa na wale wote? 686 00:34:34,050 --> 00:34:34,600 SAWA. 687 00:34:34,600 --> 00:34:38,650 >> Hivyo sisi kuanza mbali na ni sawa na 3, b sawa na 4, na c ni sawa na 5, sawa? 688 00:34:38,650 --> 00:34:42,230 Kwa hiyo baada ya kuwa mstari wa kwanza, unaweza mtu kuniambia nini a ni? 689 00:34:42,230 --> 00:34:42,730 Naam. 690 00:34:42,730 --> 00:34:44,229 Kujisikia huru na haki kuita majibu. 691 00:34:44,229 --> 00:34:44,929 20. 692 00:34:44,929 --> 00:34:45,550 Nzuri. 693 00:34:45,550 --> 00:34:46,410 Nini b? 694 00:34:46,410 --> 00:34:47,777 >> Watazamaji: 4. 695 00:34:47,777 --> 00:34:48,610 ANDI PENG: Nini c? 696 00:34:48,610 --> 00:34:49,659 Watazamaji: 5. 697 00:34:49,659 --> 00:34:50,770 ANDI PENG: Yay. 698 00:34:50,770 --> 00:34:51,639 Nzuri. 699 00:34:51,639 --> 00:34:55,707 Je, ni pa, AS, na pc? 700 00:34:55,707 --> 00:34:58,564 >> Watazamaji: 000001 na 002? 701 00:34:58,564 --> 00:34:59,230 ANDI PENG: Naam. 702 00:34:59,230 --> 00:35:02,390 Hivyo aina ya swali hila lakini si kweli kwa sababu mimi hapa 703 00:35:02,390 --> 00:35:04,760 akatoa kumbukumbu halisi. 704 00:35:04,760 --> 00:35:08,520 Lakini kwa sababu, kwa mfano, hatufanyi kweli kujua nini wale idadi ni, 705 00:35:08,520 --> 00:35:10,326 tunaweza tu kusema ampersand. 706 00:35:10,326 --> 00:35:12,200 Mimi wala hata kujua kama mimi wanaweza kuteka ampersand. 707 00:35:12,200 --> 00:35:18,022 Ni like-- ni jinsi gani unaweza kufanya hivyo? 708 00:35:18,022 --> 00:35:19,790 >> Watazamaji: Kama kuchora nane. 709 00:35:19,790 --> 00:35:20,870 >> ANDI PENG: Kama nane. 710 00:35:20,870 --> 00:35:21,580 Kama hiyo. 711 00:35:21,580 --> 00:35:22,080 SAWA. 712 00:35:22,080 --> 00:35:23,446 Watazamaji: Bingo. 713 00:35:23,446 --> 00:35:25,350 >> ANDI PENG: Mauaji hayo. 714 00:35:25,350 --> 00:35:28,202 Hivyo ampersand, unaweza tu kufanya hivyo. 715 00:35:28,202 --> 00:35:30,410 Kwa sababu sisi si kweli huduma ya kile thamani ya kwamba 716 00:35:30,410 --> 00:35:32,880 ni, na ni baadhi ya muda mrefu thamani punda anyways, 717 00:35:32,880 --> 00:35:35,220 sisi ni kutumia giƓng tu kusema ampersand a. 718 00:35:35,220 --> 00:35:37,024 Kisha nini PB? 719 00:35:37,024 --> 00:35:37,940 Watazamaji: [inaudible]. 720 00:35:37,940 --> 00:35:38,606 ANDI PENG: Naam. 721 00:35:38,606 --> 00:35:42,490 722 00:35:42,490 --> 00:35:43,500 Baridi. 723 00:35:43,500 --> 00:35:44,010 Sawa. 724 00:35:44,010 --> 00:35:44,770 Easy kwanza line. 725 00:35:44,770 --> 00:35:45,270 Tulipata hii. 726 00:35:45,270 --> 00:35:46,330 Kuyatumia ni rahisi. 727 00:35:46,330 --> 00:35:47,450 Ni sawa. 728 00:35:47,450 --> 00:35:48,740 >> Pili line. 729 00:35:48,740 --> 00:35:52,400 Na hivyo nyota ni sawa na ni sawa Jambo akisema ni sawa na mara c. 730 00:35:52,400 --> 00:35:54,730 Ni tu njia rahisi ya kuandika. 731 00:35:54,730 --> 00:35:57,170 Hivyo sisi siyo kujaribu kufanya hatua au kitu chochote hapa. 732 00:35:57,170 --> 00:36:00,600 Hivyo kufanywa na mstari wa kwanza. 733 00:36:00,600 --> 00:36:05,144 Ni nini juu ya mstari wa pili baada ya kufanya sawa na mara c? 734 00:36:05,144 --> 00:36:05,777 >> Watazamaji: 100? 735 00:36:05,777 --> 00:36:06,610 ANDI PENG: Ni 100. 736 00:36:06,610 --> 00:36:07,795 Nzuri. 737 00:36:07,795 --> 00:36:08,864 Vipi kuhusu b? 738 00:36:08,864 --> 00:36:10,256 >> Watazamaji: [inaudible]. 739 00:36:10,256 --> 00:36:11,335 >> ANDI PENG: Vipi kuhusu c? 740 00:36:11,335 --> 00:36:12,490 >> Watazamaji: [inaudible]. 741 00:36:12,490 --> 00:36:14,530 >> ANDI PENG: Na vipi kuhusu kuyatumia? 742 00:36:14,530 --> 00:36:15,800 Je, they-- huo, sawa? 743 00:36:15,800 --> 00:36:20,640 744 00:36:20,640 --> 00:36:21,940 SAWA. 745 00:36:21,940 --> 00:36:23,820 Sasa mstari wa tatu. 746 00:36:23,820 --> 00:36:26,400 747 00:36:26,400 --> 00:36:27,350 Kidogo trickier. 748 00:36:27,350 --> 00:36:29,760 b sawa na nyota pa. 749 00:36:29,760 --> 00:36:34,189 Je, mtu kuniambia, kwanza, nini nyota pa sawa? 750 00:36:34,189 --> 00:36:36,159 >> Watazamaji: Ni thamani ambayo imehifadhiwa katika. 751 00:36:36,159 --> 00:36:36,950 ANDI PENG: Hasa. 752 00:36:36,950 --> 00:36:38,070 Na ni nini thamani ambayo imehifadhiwa katika? 753 00:36:38,070 --> 00:36:38,860 >> Watazamaji: 100. 754 00:36:38,860 --> 00:36:39,660 >> ANDI PENG: Sawa. 755 00:36:39,660 --> 00:36:43,462 Hivyo nini itakuwa baada ya utekelezaji kuwa mstari wa kanuni? 756 00:36:43,462 --> 00:36:44,760 >> Watazamaji: [inaudible]. 757 00:36:44,760 --> 00:36:45,870 >> ANDI PENG: Je kuhusu b? 758 00:36:45,870 --> 00:36:46,780 >> Watazamaji: 100. 759 00:36:46,780 --> 00:36:47,620 >> ANDI PENG: Naam. 760 00:36:47,620 --> 00:36:49,995 Na kisha kila kitu kingine ni pretty much unchanged, sawa? 761 00:36:49,995 --> 00:36:51,239 Kwa sababu hatukuwa kugusa yake. 762 00:36:51,239 --> 00:36:55,370 763 00:36:55,370 --> 00:36:57,010 Baridi. 764 00:36:57,010 --> 00:36:58,390 Mstari wa nne. 765 00:36:58,390 --> 00:37:00,390 Kidogo ngumu zaidi. 766 00:37:00,390 --> 00:37:06,910 Hivyo pc-- kwa mara nyingine tena, ni pointer pc kwamba alisema kwa c-- sawa na pa. 767 00:37:06,910 --> 00:37:11,520 768 00:37:11,520 --> 00:37:12,360 Ni nini? 769 00:37:12,360 --> 00:37:14,525 >> Watazamaji: 100. 770 00:37:14,525 --> 00:37:15,400 ANDI PENG: ni b ni nini? 771 00:37:15,400 --> 00:37:17,920 Watazamaji: 100. 772 00:37:17,920 --> 00:37:18,862 ANDI PENG: c ni nini? 773 00:37:18,862 --> 00:37:19,993 Watazamaji: 5. 774 00:37:19,993 --> 00:37:20,867 ANDI PENG: Nini pa? 775 00:37:20,867 --> 00:37:22,775 Watazamaji: ampersand. 776 00:37:22,775 --> 00:37:23,730 ANDI PENG: PB? 777 00:37:23,730 --> 00:37:26,010 Watazamaji: Ampersand b. 778 00:37:26,010 --> 00:37:27,730 ANDI PENG: Na gumu, ni nini pc sasa? 779 00:37:27,730 --> 00:37:28,410 Watazamaji: ampersand. 780 00:37:28,410 --> 00:37:29,034 ANDI PENG: Yay. 781 00:37:29,034 --> 00:37:31,790 Woo hoo. 782 00:37:31,790 --> 00:37:32,500 Nyie kuona kitu gani? 783 00:37:32,500 --> 00:37:33,282 Hii ni sawa. 784 00:37:33,282 --> 00:37:33,990 Ni si mbaya sana. 785 00:37:33,990 --> 00:37:38,730 Tuna pipi zaidi kama siyo zote haki, lakini nadhani ni sawa. 786 00:37:38,730 --> 00:37:41,900 Na tunakwenda kwenda juu moja tu zaidi kabla ya sisi kugonga ndio ngumu. 787 00:37:41,900 --> 00:37:43,710 Majibu nina hapa. 788 00:37:43,710 --> 00:37:47,050 >> Kimsingi, kujua kwamba hii ni kama hesabu katika hatua hii. 789 00:37:47,050 --> 00:37:53,240 Wakati una equations rahisi kama pamoja na b, c mara, hiyo ni rahisi kufanya. 790 00:37:53,240 --> 00:37:56,390 Na wakati wa kuanza kupanua juu ya hivyo, tu kwenda utaratibu wa shughuli. 791 00:37:56,390 --> 00:37:57,830 Kitu kimoja kama kabla. 792 00:37:57,830 --> 00:38:00,030 >> Kuweka wimbo wa kama yako nyota ni kabla ya kitu fulani. 793 00:38:00,030 --> 00:38:01,640 Kwamba anaelezea thamani. 794 00:38:01,640 --> 00:38:04,640 Kama una na kabla kitu, atakwambia mahali. 795 00:38:04,640 --> 00:38:07,860 Na unapaswa kuwapa ama kuyatumia au thamani hiyo. 796 00:38:07,860 --> 00:38:11,260 Basi hebu kwenda juu ya hii mwisho moja ya haraka ya kweli. 797 00:38:11,260 --> 00:38:12,520 Si hii moja ya mwisho, pole. 798 00:38:12,520 --> 00:38:13,340 Kwa kweli, nyie anaweza kuchukua. 799 00:38:13,340 --> 00:38:16,006 Ambayo moja je, guys wanataka kwenda zaidi nje ya tatu iliyobaki 800 00:38:16,006 --> 00:38:17,449 kwamba tuna? 801 00:38:17,449 --> 00:38:20,490 Sidhani kama tunaweza tu kufanya hivyo kwa sababu hatuwezi tu kuruka kwa mstari. 802 00:38:20,490 --> 00:38:21,000 SAWA. 803 00:38:21,000 --> 00:38:25,700 Nyie hawana uchaguzi, ni tu ya tatu kwa mara ya mwisho moja. 804 00:38:25,700 --> 00:38:29,228 >> Star pc sawa na mara b c. 805 00:38:29,228 --> 00:38:30,144 >> Watazamaji: Star PB? 806 00:38:30,144 --> 00:38:32,117 >> Watazamaji: Star PB. 807 00:38:32,117 --> 00:38:32,825 ANDI PENG: Sorry? 808 00:38:32,825 --> 00:38:33,599 Watazamaji: Star PB. 809 00:38:33,599 --> 00:38:34,390 ANDI PENG: Star PB. 810 00:38:34,390 --> 00:38:35,100 Oh, mbaya wangu. 811 00:38:35,100 --> 00:38:38,647 Star PB sawa na mara b c. 812 00:38:38,647 --> 00:38:40,230 Mimi nina kwenda kukupa guys sekunde 10. 813 00:38:40,230 --> 00:38:41,140 Haraka tu kufikiri. 814 00:38:41,140 --> 00:38:43,450 Hii ni kwamba tuna hivyo mbali, nini kinatokea baada ya sisi 815 00:38:43,450 --> 00:38:46,770 kutekeleza kwamba mstari wa tano pale pale? 816 00:38:46,770 --> 00:38:54,030 817 00:38:54,030 --> 00:38:55,980 SAWA. 818 00:38:55,980 --> 00:38:58,720 Ni nini? 819 00:38:58,720 --> 00:38:59,560 >> Watazamaji: 100. 820 00:38:59,560 --> 00:39:02,470 >> ANDI PENG: 100. 821 00:39:02,470 --> 00:39:03,610 Ni nini b sasa? 822 00:39:03,610 --> 00:39:04,330 >> Watazamaji: 500. 823 00:39:04,330 --> 00:39:05,250 >> ANDI PENG: Good. 824 00:39:05,250 --> 00:39:08,570 Je, mtu unataka kueleza kwangu kwa nini hii ni 500? 825 00:39:08,570 --> 00:39:10,540 Sijisikii kama sisi kweli milele kuguswa b. 826 00:39:10,540 --> 00:39:13,950 Jinsi gani sisi kusimamia na mabadiliko thamani ya b bila kugusa b? 827 00:39:13,950 --> 00:39:15,090 Yeah? 828 00:39:15,090 --> 00:39:18,239 >> Watazamaji: Kwa sababu nyota PB ina maana thamani kwenye pb-- 829 00:39:18,239 --> 00:39:19,030 ANDI PENG: Hasa. 830 00:39:19,030 --> 00:39:19,790 Watazamaji: --which ni b. 831 00:39:19,790 --> 00:39:20,581 ANDI PENG: Hasa. 832 00:39:20,581 --> 00:39:26,880 Hivyo hapa katika mchoro wetu, pointer yetu PB ni kweli akizungumzia haki hii 833 00:39:26,880 --> 00:39:28,690 hapa, ambayo ni halisi ya kimwili b. 834 00:39:28,690 --> 00:39:31,340 Na hivyo kama wewe kwenda na kufanya nyota AS, hiyo ni 835 00:39:31,340 --> 00:39:36,080 kufuatia mshale yako ya pointer yako na kimwili kubadilisha thamani ya b. 836 00:39:36,080 --> 00:39:39,532 Hivyo ndiyo sababu tuna b iliyopita na 500 bila kweli kugusa b. 837 00:39:39,532 --> 00:39:42,490 Na kisha kila kitu kingine bado sawa kwa sababu hatukuwa kugusa hiyo. 838 00:39:42,490 --> 00:39:47,060 839 00:39:47,060 --> 00:39:48,530 Hiyo ni b. 840 00:39:48,530 --> 00:39:49,420 Baridi. 841 00:39:49,420 --> 00:39:50,485 Na then-- 842 00:39:50,485 --> 00:39:51,910 >> Watazamaji: Mimi tu swali. 843 00:39:51,910 --> 00:39:52,730 >> ANDI PENG: Yeah? 844 00:39:52,730 --> 00:39:56,000 >> Watazamaji: Kwa kuwa we've-- hakuna tena ampersand c, 845 00:39:56,000 --> 00:39:59,620 Hiyo ina maana ampersand a kuelekeza kwa kitu kimoja sasa? 846 00:39:59,620 --> 00:40:00,520 >> ANDI PENG: Yep. 847 00:40:00,520 --> 00:40:01,582 So-- 848 00:40:01,582 --> 00:40:03,540 Watazamaji: Hivyo mshale aina ya tu hatua and-- 849 00:40:03,540 --> 00:40:04,030 ANDI PENG: Kwa hiyo essentially-- 850 00:40:04,030 --> 00:40:05,405 Watazamaji: --now hatuwezi access-- 851 00:40:05,405 --> 00:40:08,387 ANDI PENG: --when sisi dereference c on-- mimi mzushi. 852 00:40:08,387 --> 00:40:08,970 Nini ilikuwa hivyo? 853 00:40:08,970 --> 00:40:09,560 Mstari wa tatu? 854 00:40:09,560 --> 00:40:10,060 Nne. 855 00:40:10,060 --> 00:40:11,490 Mstari wa nne. 856 00:40:11,490 --> 00:40:14,910 Wote sisi alifanya alikuwa, kimsingi, mabadiliko mshale huu 857 00:40:14,910 --> 00:40:16,680 na kuwa ni muelekeo wa badala. 858 00:40:16,680 --> 00:40:19,480 >> Watazamaji: Hivyo sisi hawawezi kupata c tena. 859 00:40:19,480 --> 00:40:22,520 >> ANDI PENG: Kama ulikuwa hii halisi idadi, unaweza kupata huduma hiyo. 860 00:40:22,520 --> 00:40:23,260 Lakini, hakuna. 861 00:40:23,260 --> 00:40:25,680 Hatuna pointer akizungumzia kuelekea c tena. 862 00:40:25,680 --> 00:40:27,430 Nadhani kama alitaka upya upatikanaji hilo, 863 00:40:27,430 --> 00:40:30,390 ingekuwa kujenga mwingine pointer kwamba re-alisema kwa c 864 00:40:30,390 --> 00:40:32,856 au dereferenced hii na alisema nyuma. 865 00:40:32,856 --> 00:40:35,730 Hivyo, hakuna, kama ya sasa hivi, tatu kuyatumia, hakuna hata mmoja wao uhakika na c. 866 00:40:35,730 --> 00:40:38,800 867 00:40:38,800 --> 00:40:40,110 >> Kila mtu mwema? 868 00:40:40,110 --> 00:40:41,440 Majibu ni online. 869 00:40:41,440 --> 00:40:45,210 Kujisikia huru, baada ya kifungu cha, kwenda juu mbili na mtihani wa mwisho wenyewe. 870 00:40:45,210 --> 00:40:47,840 Dhana hiyo, tu kidogo trickier kidogo. 871 00:40:47,840 --> 00:40:51,860 Kufuata tu kwa njia ya mantiki ya kwa nini mambo ni mambo mbalimbali. 872 00:40:51,860 --> 00:40:54,530 Na ladha, kuyatumia ni mada kwamba tunapenda 873 00:40:54,530 --> 00:40:58,780 kufunika juu ya Quizzes kwa sababu wao ni conceptually sana changamoto. 874 00:40:58,780 --> 00:41:01,360 Hivyo napenda kupendekeza kwamba wewe guys wote kupitia mchoro huu 875 00:41:01,360 --> 00:41:05,916 au kufyeka dhana sawa na hii kabla ya jaribio yako wiki ijayo. 876 00:41:05,916 --> 00:41:06,864 >> Watazamaji: Samahani. 877 00:41:06,864 --> 00:41:07,530 >> ANDI PENG: Yeah? 878 00:41:07,530 --> 00:41:09,708 Watazamaji: [inaudible] mwisho one-- [inaudible]. 879 00:41:09,708 --> 00:41:12,710 880 00:41:12,710 --> 00:41:15,770 >> ANDI PENG: 50,000? 881 00:41:15,770 --> 00:41:17,850 Napenda haja ya kufuata nyuma chini. 882 00:41:17,850 --> 00:41:22,530 Lakini somewhere-- Nadhani mstari kabla, wewe uliumba thamani kubwa c. 883 00:41:22,530 --> 00:41:26,250 c sawa na jambo hili kubwa ambayo ni 100 mara 500. 884 00:41:26,250 --> 00:41:27,006 Hakuna 885 00:41:27,006 --> 00:41:28,000 >> Watazamaji: [inaudible]. 886 00:41:28,000 --> 00:41:28,625 >> ANDI PENG: Ndiyo. 887 00:41:28,625 --> 00:41:30,620 100 mara 100 ambayo ni 10,000. 888 00:41:30,620 --> 00:41:32,020 Ambayo ni 10,000. 889 00:41:32,020 --> 00:41:35,410 Hivyo nyuma chini huko uko kuzidisha b na c. 890 00:41:35,410 --> 00:41:43,165 Hivyo pointer kwamba pointi kwa b-- ambayo ni thamani ya mara 500-- a-- 891 00:41:43,165 --> 00:41:44,480 >> Watazamaji: [inaudible]. 892 00:41:44,480 --> 00:41:45,730 ANDI PENG: Labda hilo ni kosa. 893 00:41:45,730 --> 00:41:49,514 Watazamaji: Hapana, hapana, siyo. [Inaudible] pointer katika c sasa akionyesha a-- 894 00:41:49,514 --> 00:41:50,180 ANDI PENG: Naam. 895 00:41:50,180 --> 00:41:50,840 Yeye ni haki. 896 00:41:50,840 --> 00:41:56,477 >> Watazamaji: --it ni katika wake katika usawa a times-- ni thamani ya c. 897 00:41:56,477 --> 00:41:59,560 ANDI PENG: Je, unaweza kusema kwamba kidogo kidogo nguvu zaidi ili kila mtu anaweza kusikia wewe? 898 00:41:59,560 --> 00:42:04,879 Watazamaji: Hivyo pointer katika c sasa anasema kwa nini pointer kwa uhakika wa kutumika 899 00:42:04,879 --> 00:42:09,460 to-- na bado does-- lakini wao uhakika na kitu kimoja ambayo ni a, sawa? 900 00:42:09,460 --> 00:42:12,925 Thamani a, hata hivyo imekuwa ni wapya inavyoelezwa. 901 00:42:12,925 --> 00:42:17,875 Na mwanzoni mwa kwamba wewe ni akisema awali alikuwa mara 100 902 00:42:17,875 --> 00:42:21,340 thamani katika b ambayo ni 500. 903 00:42:21,340 --> 00:42:24,305 Na hivyo ndiyo hata hivyo, kwamba ni. 904 00:42:24,305 --> 00:42:24,805 50,000. 905 00:42:24,805 --> 00:42:32,860 Wao uko reassigning kwamba kwa nini kumbukumbu nafasi katika c is-- pointer katika c 906 00:42:32,860 --> 00:42:34,510 ni akizungumzia ambayo ni. 907 00:42:34,510 --> 00:42:38,460 Hivyo wewe ni upya na kuwa 50,000. 908 00:42:38,460 --> 00:42:40,210 ANDI PENG: Yeye anaweza kufundisha kifungu kwa ajili yangu. 909 00:42:40,210 --> 00:42:41,260 Wakati mwingine ni yako yote. 910 00:42:41,260 --> 00:42:41,440 Hapa. 911 00:42:41,440 --> 00:42:42,564 Hapa ni pipi zaidi kwa ajili hiyo. 912 00:42:42,564 --> 00:42:45,790 Unastahili pipi kwa ajili hiyo. 913 00:42:45,790 --> 00:42:47,260 >> Watazamaji: Mimi karibu hawakupata hiyo. 914 00:42:47,260 --> 00:42:47,660 >> ANDI PENG: Wewe karibu hawakupata hiyo. 915 00:42:47,660 --> 00:42:48,450 Hiyo ni sawa. 916 00:42:48,450 --> 00:42:48,950 Naam. 917 00:42:48,950 --> 00:42:50,033 Lakini yeye alikuwa sahihi kabisa. 918 00:42:50,033 --> 00:42:54,469 Kwa hiyo kile una kufanya ni that-- Nadhani sisi 919 00:42:54,469 --> 00:42:56,510 una kufuata ukweli kwamba kuyatumia ni sasa 920 00:42:56,510 --> 00:42:57,880 akizungumzia maadili tofauti. 921 00:42:57,880 --> 00:43:01,785 Hivyo value-- pole, pointer ya c repointed kwa. 922 00:43:01,785 --> 00:43:04,390 Na hivyo kuwa kubadilishwa yote ya idadi yetu. 923 00:43:04,390 --> 00:43:08,930 Na hii ndiyo maana, wakati wewe kupata thamani kuhifadhiwa huko, ni tofauti. 924 00:43:08,930 --> 00:43:10,490 Je, hiyo mantiki? 925 00:43:10,490 --> 00:43:11,380 SAWA. 926 00:43:11,380 --> 00:43:12,820 Baridi. 927 00:43:12,820 --> 00:43:16,635 Kila mtu mwema, kabla ya mimi kuondoka? 928 00:43:16,635 --> 00:43:25,332 >> Watazamaji: Je, the-- wakati wewe ni kwenda chini ya safu katika safu ya kushoto, 929 00:43:25,332 --> 00:43:30,494 haina safu ya kwanza kuathiri safu ya pili na kisha second-- kama, ni all-- 930 00:43:30,494 --> 00:43:31,160 ANDI PENG: Naam. 931 00:43:31,160 --> 00:43:37,610 Hivyo kufikiria ni kanuni ambapo mimi tu typed katika sawa b nyakati c, nyota ni sawa na c. 932 00:43:37,610 --> 00:43:40,290 Hebu fikiria kwamba nimekuwa tu mbio kificho hii 933 00:43:40,290 --> 00:43:42,710 na sikuweza magazeti nje nini mambo yote haya walikuwa. 934 00:43:42,710 --> 00:43:46,200 Kama ningekuwa tu magazeti kwanza Jambo juu, itakuwa hapa. 935 00:43:46,200 --> 00:43:48,510 Kama baada ya mimi mbio zote za wale mistari ya kificho, 936 00:43:48,510 --> 00:43:51,160 nini maadili haya lazima kuwa mwishoni ni kwamba. 937 00:43:51,160 --> 00:43:53,290 >> Hivyo nimekuwa kweli imeandikwa mpango hapa. 938 00:43:53,290 --> 00:43:55,840 Mimi sina kosa yote ya kuzidisha. 939 00:43:55,840 --> 00:43:58,310 Lakini tu kufikiria. 940 00:43:58,310 --> 00:44:00,370 Hivyo hapa mimi tu na mpango ujulikanao kuyatumia. 941 00:44:00,370 --> 00:44:04,190 Mimi nina kwenda kuvuta kama wewe guys-- sawa. 942 00:44:04,190 --> 00:44:07,580 Hivyo nimekuwa kuundwa vigezo, b, na c. 943 00:44:07,580 --> 00:44:09,640 Nimekuwa kuweka yao sawa na 3, 4, na 5 na nimekuwa 944 00:44:09,640 --> 00:44:11,770 umba kuyatumia yao sambamba. 945 00:44:11,770 --> 00:44:14,550 Na kisha hapa mimi nina kwenda tu magazeti nje nini kwamba ni. 946 00:44:14,550 --> 00:44:15,833 Hivyo basi mimi kukimbia huo. 947 00:44:15,833 --> 00:44:21,520 948 00:44:21,520 --> 00:44:24,750 >> Je, guys see-- crap. 949 00:44:24,750 --> 00:44:28,150 Je, guys kuona jinsi, b na c ni maadili hayo 950 00:44:28,150 --> 00:44:33,530 lakini kuyatumia yao ni kubwa hii takataka thamani kwamba hatuna huduma ya juu? 951 00:44:33,530 --> 00:44:36,690 Hivyo kama ningekuwa kweli kuziba katika kuzidisha zote 952 00:44:36,690 --> 00:44:39,770 na kisha kikachapishwa wote wa huu, ingekuwa kutekeleza nje 953 00:44:39,770 --> 00:44:44,509 kwa nini kuwa ni chini. 954 00:44:44,509 --> 00:44:47,300 Hivyo kama wewe guys wanataka kucheza karibu kwa kweli kimwili coding, 955 00:44:47,300 --> 00:44:49,000 nyie unaweza kuziba tu wale wote katika. 956 00:44:49,000 --> 00:44:52,860 Kificho itakuwa online na kisha yako maadili lazima magazeti kwa kuwa baadaye. 957 00:44:52,860 --> 00:44:56,170 >> Na kisha utaona jinsi pointer anwani kwa kweli reassigned. 958 00:44:56,170 --> 00:44:59,190 Hivyo utaona jinsi pepe ya c kweli inakuwa 959 00:44:59,190 --> 00:45:00,920 kwa sawa chochote pepe ya mara. 960 00:45:00,920 --> 00:45:04,140 Na wao itabidi mechi chochote idadi hiyo kubwa ni. 961 00:45:04,140 --> 00:45:06,530 Nzuri swali. 962 00:45:06,530 --> 00:45:07,550 Kila mtu sawa? 963 00:45:07,550 --> 00:45:10,300 Moja wito wa mwisho kwa maswali. 964 00:45:10,300 --> 00:45:11,590 SAWA. 965 00:45:11,590 --> 00:45:12,090 Sawa. 966 00:45:12,090 --> 00:45:15,940 Ili kujiandaa kuwa na akili yako barugumu kidogo kidogo zaidi. 967 00:45:15,940 --> 00:45:18,000 Arrays ni kweli kuyatumia tu. 968 00:45:18,000 --> 00:45:19,010 Hayo ni yote walipo. 969 00:45:19,010 --> 00:45:20,410 Na kumbuka, ni masharti? 970 00:45:20,410 --> 00:45:21,630 Wao ni pia arrays. 971 00:45:21,630 --> 00:45:23,110 Kwa hiyo kile ni masharti kweli? 972 00:45:23,110 --> 00:45:27,100 Wao ni kama kuyatumia kwa mwanzo wa char ya chars zaidi. 973 00:45:27,100 --> 00:45:29,970 >> Hivyo ni dhana tu kwamba kuanza kujenga juu ya kila mmoja. 974 00:45:29,970 --> 00:45:32,030 Hivyo hiyo ni why-- wewe kumbuka katika hotuba, Daudi, 975 00:45:32,030 --> 00:45:34,990 wakati yeye alikuwa na kwamba kulinganisha ya int kamba mama 976 00:45:34,990 --> 00:45:37,640 ni kitu na kisha mwingine kamba mama na wewe 977 00:45:37,640 --> 00:45:41,240 kujaribu equate mbili kwa kila mmoja, wao kukupa maadili tofauti. 978 00:45:41,240 --> 00:45:44,370 Ni kwa sababu masharti wenyewe si maadili. 979 00:45:44,370 --> 00:45:48,860 Wote hao ni watu anwani kumbukumbu char-- wao ni arrays ya chars na arrays 980 00:45:48,860 --> 00:45:50,050 ni kuyatumia tu. 981 00:45:50,050 --> 00:45:54,022 >> Hivyo, kwa asili, wakati Daudi alikuwa comparing-- 982 00:45:54,022 --> 00:45:55,355 je, ni sawa kama mimi kufuta yote haya? 983 00:45:55,355 --> 00:46:02,320 984 00:46:02,320 --> 00:46:09,750 Hivyo katika hotuba wakati Daudi alikuwa mama sawa sawa na mama, 985 00:46:09,750 --> 00:46:11,630 kwetu kwamba inaonekana kuwa kitu kimoja. 986 00:46:11,630 --> 00:46:12,317 Sawa? 987 00:46:12,317 --> 00:46:15,150 Lakini, katika kompyuta chini kofia, nini ni kweli yanatokea 988 00:46:15,150 --> 00:46:18,380 ni kwamba kamba hii, yote ambayo ni safu. 989 00:46:18,380 --> 00:46:21,420 990 00:46:21,420 --> 00:46:25,390 Kwa ampersand-- au, pole, pamoja null Terminator mwishoni. 991 00:46:25,390 --> 00:46:28,311 992 00:46:28,311 --> 00:46:28,810 Sawa? 993 00:46:28,810 --> 00:46:29,940 Backslash 0. 994 00:46:29,940 --> 00:46:32,900 Vibaya backslash. 995 00:46:32,900 --> 00:46:35,960 >> Basi wote hao were-- zote masharti hayo mawili were-- 996 00:46:35,960 --> 00:46:40,360 ni safu ya ukubwa fours kwa barua ya mama na mama. 997 00:46:40,360 --> 00:46:44,780 Lakini nini arrays kwa kweli ni watu tu kuyatumia kwa mahali maalum katika kumbukumbu 998 00:46:44,780 --> 00:46:47,140 kwamba anaelezea kuanza safu yako. 999 00:46:47,140 --> 00:46:52,370 Hivyo katika kesi hii, yote hii ilikuwa Ilikuwa baadhi tu ya thamani ya takataka, 1000 00:46:52,370 --> 00:46:54,230 baadhi pointer bila mpangilio. 1001 00:46:54,230 --> 00:46:56,330 Na yote hii ilikuwa ilikuwa baadhi ya wengine takataka thamani. 1002 00:46:56,330 --> 00:46:59,830 Hebu tu kusema 0x200. 1003 00:46:59,830 --> 00:47:02,410 >> Na hivyo wakati wewe kujaribu sawa nao wawili kwa kila mmoja, 1004 00:47:02,410 --> 00:47:06,130 wao kutathmini kwa uongo kwa sababu addresses-- kuyatumia 1005 00:47:06,130 --> 00:47:08,390 kuwa wao were-- yalikuwa tofauti. 1006 00:47:08,390 --> 00:47:11,400 Wakati ni tofauti kama wewe ni kujaribu kulinganisha integers halisi. 1007 00:47:11,400 --> 00:47:15,820 Kama kama alitaka compare-- katika mwisho example-- int a b, 1008 00:47:15,820 --> 00:47:17,640 wangeweza kutathmini kwa kweli kama Elliot alisema 1009 00:47:17,640 --> 00:47:19,431 kwa sababu walikuwa integers kwamba walikuwa kuhifadhiwa 1010 00:47:19,431 --> 00:47:21,320 na wewe ni kutathmini tu maadili. 1011 00:47:21,320 --> 00:47:25,090 Hapa, kwa sababu masharti ni arrays na arrays wote ni kuyatumia, 1012 00:47:25,090 --> 00:47:28,080 hiyo ndiyo sababu wao si sawa kwa kila mmoja. 1013 00:47:28,080 --> 00:47:31,210 >> Hivyo aina ya utata, kwamba graphic. 1014 00:47:31,210 --> 00:47:32,450 Lakini hebu tu kufikiria. 1015 00:47:32,450 --> 00:47:38,110 Tumekuwa kujenga safu ya ukubwa 3 na ripoti kutoka 0 kwa 2-- 0, 1016 00:47:38,110 --> 00:47:41,530 1, 2 na maadili ya 1, 2, na 3 kuhifadhiwa katika wao. 1017 00:47:41,530 --> 00:47:43,820 Safu zote kweli does-- hapa, hebu tu 1018 00:47:43,820 --> 00:47:46,720 kusema mimi nina kujenga pointer kwa kuwa safu hiyo ni 1019 00:47:46,720 --> 00:47:50,810 kupata thamani katika kwanza ripoti ya safu hii. 1020 00:47:50,810 --> 00:47:52,890 Hivyo hapa itakuwa 0. 1021 00:47:52,890 --> 00:47:53,390 Sawa? 1022 00:47:53,390 --> 00:47:56,820 Je, kila mtu kuelewa jinsi kuwa mstari wa kwanza tathmini? 1023 00:47:56,820 --> 00:47:57,420 Kubwa. 1024 00:47:57,420 --> 00:48:00,800 >> Na hivyo kama alitaka initialize maadili ziada baada ya hapo, 1025 00:48:00,800 --> 00:48:04,390 wote sisi ni kufanya ni reassigning. 1026 00:48:04,390 --> 00:48:08,810 Hivyo 0, 1, 2, 1. 1027 00:48:08,810 --> 00:48:12,770 Hivyo pointer hii kwamba mara kwa mara akizungumzia hapa, kila tuko kufanya 1028 00:48:12,770 --> 00:48:15,540 ni kusonga chini. 1029 00:48:15,540 --> 00:48:16,970 Hilo ndilo pamoja na 1 ni kufanya. 1030 00:48:16,970 --> 00:48:18,500 Na kisha tunaweza kuweka 2 huko. 1031 00:48:18,500 --> 00:48:23,250 Kama sisi alitaka kuweka 3 katika moja baada, tunataka kufuta pointer hii, 1032 00:48:23,250 --> 00:48:25,170 kuweka 3 katika huko. 1033 00:48:25,170 --> 00:48:26,420 Je, hiyo mantiki kila mtu? 1034 00:48:26,420 --> 00:48:26,920 Naam. 1035 00:48:26,920 --> 00:48:28,086 Je, una swali? 1036 00:48:28,086 --> 00:48:30,711 Watazamaji: Ni [inaudible] na swali, mimi itabidi kusema hivyo. 1037 00:48:30,711 --> 00:48:35,496 Sidhani kama ni kweli swali but-- kwa Kiingereza, safu 1038 00:48:35,496 --> 00:48:37,448 sawa na 1 hufanya akili. 1039 00:48:37,448 --> 00:48:39,888 Sisi ni kama, sawa, kitu cha kwanza. 1040 00:48:39,888 --> 00:48:44,280 Lakini mambo 0 ripoti [Inaudible] safu sawa na 0 1041 00:48:44,280 --> 00:48:48,024 zinaonyesha doa kwanza. 1042 00:48:48,024 --> 00:48:48,690 ANDI PENG: Naam. 1043 00:48:48,690 --> 00:48:53,740 Hivyo kweli nini mimi kufanya hapa ni Mimi si kupata ripoti ya kwanza. 1044 00:48:53,740 --> 00:48:57,930 Wote nilikuwa doing-- hivyo kwanza ya yote, kuniambia nini nyota safu nini? 1045 00:48:57,930 --> 00:48:59,480 Je nyota kabla pointer nini? 1046 00:48:59,480 --> 00:49:00,855 >> Watazamaji: Inaonyesha pointer. 1047 00:49:00,855 --> 00:49:02,910 Kuwa wewe ni kutangaza pointer. 1048 00:49:02,910 --> 00:49:04,380 Ni de-- 1049 00:49:04,380 --> 00:49:07,520 >> ANDI PENG: Ni dereferences ambayo ina maana unaendelea na kwa kweli anapata thamani. 1050 00:49:07,520 --> 00:49:08,020 Sawa? 1051 00:49:08,020 --> 00:49:13,030 Hivyo katika kesi hii, unataka kupata thamani hapa na kuweka kwamba kwa 1. 1052 00:49:13,030 --> 00:49:13,800 Yeah? 1053 00:49:13,800 --> 00:49:17,050 Hivyo mimi nina si actually-- mimi si kweli huduma kuhusu ripoti hii, 1054 00:49:17,050 --> 00:49:21,406 zote mimi nina kufanya ni iterating chini tu na kusonga pointer yangu chini safu. 1055 00:49:21,406 --> 00:49:23,280 Na kisha hatimaye mimi kuwa na kuacha hayo, haki? 1056 00:49:23,280 --> 00:49:26,750 Na kwa njia hiyo mimi kuacha ni wakati mimi kugonga, katika kesi 1057 00:49:26,750 --> 00:49:28,750 ya kamba, null Terminator. 1058 00:49:28,750 --> 00:49:32,710 Najua, loo, kama mimi hit back-- kama mimi kuona backslash 0, najua mimi nina kufanyika kwa hii 1059 00:49:32,710 --> 00:49:35,270 na najua kwamba siwezi tu kuacha iterating kupitia. 1060 00:49:35,270 --> 00:49:36,200 Mzuri swali. 1061 00:49:36,200 --> 00:49:40,210 >> Na tutaweza kweli kwenda mbali zaidi kwa kina katika wiki hii ijayo 1062 00:49:40,210 --> 00:49:43,990 kwa sababu kipande ambayo inaenda kuhusisha mengi ya matumizi ya kuyatumia. 1063 00:49:43,990 --> 00:49:48,459 Lakini tu kujua kwamba hivi sasa, hiyo ni more-- tofauti 1064 00:49:48,459 --> 00:49:51,250 hiyo ni njia tofauti kwa kompyuta kuandika, kimsingi, 1065 00:49:51,250 --> 00:49:52,470 nini tumekuwa kufanya. 1066 00:49:52,470 --> 00:49:54,900 Kama Daudi alisema katika hotuba, kwa njia hiyo sisi 1067 00:49:54,900 --> 00:50:01,720 kupata safu ni tu kwa kufanya safu 0, mabano 0, kama sisi tu 1068 00:50:01,720 --> 00:50:04,050 alitaka kupata thamani kwanza. 1069 00:50:04,050 --> 00:50:10,280 >> Kompyuta zote ni kufanya ni kugeuka kwamba katika kuwa na iterating yenyewe. 1070 00:50:10,280 --> 00:50:13,580 Hivyo sisi kuiita kisintaksia sukari ambayo ni haki 1071 00:50:13,580 --> 00:50:18,420 njia dhana ya kusema user kirafiki njia ya sisi kujua jinsi ya mpango. 1072 00:50:18,420 --> 00:50:21,560 Lakini kompyuta chini, nini ni kufanya, 1073 00:50:21,560 --> 00:50:23,997 ni kweli kuwa tu pointer hiyo kurekebisha. 1074 00:50:23,997 --> 00:50:26,330 Lakini njia hiyo sisi kuandika, kwa sababu ni rahisi kwa sisi 1075 00:50:26,330 --> 00:50:30,240 kufikiri juu ya mambo katika suala la masanduku na jinsi ya kusonga chini masanduku, 1076 00:50:30,240 --> 00:50:32,190 ni kwa kuwa na mabano. 1077 00:50:32,190 --> 00:50:36,394 Samahani, kwamba alikuwa kweli, kweli hafifu but-- yeah. 1078 00:50:36,394 --> 00:50:38,310 Watazamaji: Hivyo ni jinsi gani kulinganisha masharti mawili 1079 00:50:38,310 --> 00:50:40,560 kuona kama uko sawa kwa kila mmoja? 1080 00:50:40,560 --> 00:50:42,690 >> ANDI PENG: Kwa hiyo Daudi aliandika mpango huu katika hotuba 1081 00:50:42,690 --> 00:50:45,274 hivyo mimi nina kwenda tu kwenda zaidi ya haraka na kwa ufupi. 1082 00:50:45,274 --> 00:50:47,440 Namna gani kufanya hivyo ni kwamba wewe ungekuwa kweli 1083 00:50:47,440 --> 00:50:51,300 haja ya kwenda na kulinganisha addresses-- au maadili 1084 00:50:51,300 --> 00:50:52,810 zilizopatikana kutoka kuyatumia. 1085 00:50:52,810 --> 00:50:55,140 Basi kumbuka, jinsi gani unaweza kupata thamani hapa? 1086 00:50:55,140 --> 00:50:56,825 Sijali kuhusu anuani hapa. 1087 00:50:56,825 --> 00:50:58,950 Je, mimi kwa kweli kupata thamani ya chochote hapa? 1088 00:50:58,950 --> 00:50:59,470 >> Watazamaji: [inaudible]. 1089 00:50:59,470 --> 00:51:00,261 >> ANDI PENG: Hasa. 1090 00:51:00,261 --> 00:51:05,090 Hivyo kulinganisha nyota hapa dhidi ya nyota hapa. 1091 00:51:05,090 --> 00:51:06,150 Ni wale sawa. 1092 00:51:06,150 --> 00:51:07,690 Na kisha kwenda chini. 1093 00:51:07,690 --> 00:51:09,530 Ni nyota hapa na nyota hapa sawa? 1094 00:51:09,530 --> 00:51:10,030 SAWA. 1095 00:51:10,030 --> 00:51:10,283 Wao ni sawa. 1096 00:51:10,283 --> 00:51:12,866 Na wewe tu kuendelea kwenda chini mpaka umefanya kugonga mwisho wa wote. 1097 00:51:12,866 --> 00:51:16,190 Na kama wote ni sawa, basi unajua kamba yako ni sawa. 1098 00:51:16,190 --> 00:51:18,130 Na C kwa kweli ina kazi kuandikwa inaitwa 1099 00:51:18,130 --> 00:51:20,713 Kamba Comp ambayo kwa kweli tu anafanya hivyo kwa ajili yenu hivyo huna ' 1100 00:51:20,713 --> 00:51:22,140 kuandika hivyo mwenyewe. 1101 00:51:22,140 --> 00:51:23,274 Yeah? 1102 00:51:23,274 --> 00:51:26,970 >> Watazamaji: Nadhani katika hotuba ni wakati hatuna kulinganisha. 1103 00:51:26,970 --> 00:51:29,520 Sisi si kweli haja kukabiliana na kama pi, sawa? 1104 00:51:29,520 --> 00:51:34,310 >> ANDI PENG: Je, si kwa sababu sisi si kweli huduma 1105 00:51:34,310 --> 00:51:36,250 jinsi masanduku mengi tumekuwa iterated kupitia. 1106 00:51:36,250 --> 00:51:39,580 Wote sisi huduma ni kwamba tunakwenda kuendelea mpaka Najua kuacha. 1107 00:51:39,580 --> 00:51:41,990 Na unajua kuacha wakati kuna aina fulani ya dalili 1108 00:51:41,990 --> 00:51:45,310 kuwa uko katika null Terminator. 1109 00:51:45,310 --> 00:51:45,930 Naam. 1110 00:51:45,930 --> 00:51:47,154 So-- 1111 00:51:47,154 --> 00:51:48,070 Watazamaji: [inaudible]. 1112 00:51:48,070 --> 00:51:48,736 ANDI PENG: Naam. 1113 00:51:48,736 --> 00:51:51,950 Hivyo katika kesi ya kulinganisha masharti, mimi si kweli 1114 00:51:51,950 --> 00:51:54,207 huduma barua ni wangapi are-- nahitaji kulinganisha 1115 00:51:54,207 --> 00:51:56,540 kama uko kweli au uongo iwapo wao uko sawa kwa kila mmoja. 1116 00:51:56,540 --> 00:51:58,914 Sijali barua ni wangapi ni katika kila mmoja wao, sawa? 1117 00:51:58,914 --> 00:52:01,130 I just huduma ya kwamba hii mechi na hii na moja 1118 00:52:01,130 --> 00:52:05,311 baada ya mechi na moja baada ya mechi njia yote hadi mwisho. 1119 00:52:05,311 --> 00:52:05,810 Sawa? 1120 00:52:05,810 --> 00:52:07,000 Je, hiyo mantiki? 1121 00:52:07,000 --> 00:52:10,166 >> Hivyo mimi si kweli huduma barua ni wangapi, I just huduma ya kwamba wote wa barua 1122 00:52:10,166 --> 00:52:11,050 mechi. 1123 00:52:11,050 --> 00:52:12,910 Naam. 1124 00:52:12,910 --> 00:52:13,920 SAWA. 1125 00:52:13,920 --> 00:52:16,840 Je, mimi hoja juu ya kutokana na hili? 1126 00:52:16,840 --> 00:52:18,489 Kubwa. 1127 00:52:18,489 --> 00:52:21,280 Sisi ni mbio fupi juu kidogo wakati hivyo mimi nina kwenda kwa kuruhusu tu 1128 00:52:21,280 --> 00:52:23,670 guys kwa ufupi kuangalia hii. 1129 00:52:23,670 --> 00:52:26,430 Kukimbia ndani ID wako kama nyie ni wadadisi. 1130 00:52:26,430 --> 00:52:30,030 Na nyie unaweza kuona nini hii itakuwa uchapishaji nje. 1131 00:52:30,030 --> 00:52:30,640 SAWA. 1132 00:52:30,640 --> 00:52:34,990 >> Hivyo kitu ambacho tutaweza pia zinagusa kidogo ni wazo la pointer hesabu. 1133 00:52:34,990 --> 00:52:38,180 Ambayo, kila ilivyo, ni badala ya kurekebisha 1134 00:52:38,180 --> 00:52:42,610 maadili ya nini ni kuhifadhiwa katika anuani ya pointer yako, 1135 00:52:42,610 --> 00:52:45,030 ni tu kwa kweli kubadilisha anuani yenyewe. 1136 00:52:45,030 --> 00:52:49,420 Hivyo kama wewe kama binadamu alitaka kurekebisha pointer yako mwenyewe, 1137 00:52:49,420 --> 00:52:52,700 namna gani kufanya hivyo ni tu kufanya n mara ukubwa wa pointer. 1138 00:52:52,700 --> 00:52:53,240 Sawa? 1139 00:52:53,240 --> 00:52:54,810 >> Hivyo int. 1140 00:52:54,810 --> 00:52:58,580 Int ka wangapi katika kumbukumbu ni int? 1141 00:52:58,580 --> 00:52:59,640 Ni wanne, sawa? 1142 00:52:59,640 --> 00:53:03,520 Hivyo kama mimi kujua nina safu ya yote ints na mimi nataka kwa uhakika na moja 1143 00:53:03,520 --> 00:53:08,470 baadaye, Ningependa kujua mimi tu na hoja ya pointer yangu chini ka nne, sawa? 1144 00:53:08,470 --> 00:53:12,440 Na hivyo n mara ukubwa ya ka pointer 1145 00:53:12,440 --> 00:53:15,890 ni ka hata hivyo wengi uko tu kwenda hoja pointer yako chini kwa. 1146 00:53:15,890 --> 00:53:20,350 >> Hivyo kwa mfano, kama tuna safu ya ints, moja ya kwanza, hebu sema tu, 1147 00:53:20,350 --> 00:53:22,280 ni kuhifadhiwa kama 0x00. 1148 00:53:22,280 --> 00:53:26,150 Unajua moja ijayo ni kwenda kuwa katika 0x04 kwa sababu hiyo ni ka nne baadaye. 1149 00:53:26,150 --> 00:53:31,030 Na moja baada ya ambayo inaenda kuwa 0x08 na kadhalika na kadhalika. 1150 00:53:31,030 --> 00:53:33,830 Na hivyo, guys, tuangalie. 1151 00:53:33,830 --> 00:53:36,640 >> Wote unafanya hapa ni kwamba una pointer y 1152 00:53:36,640 --> 00:53:43,700 na wewe ni kuongeza kwamba kwa yako kumbukumbu ili uweze hoja chini 1153 00:53:43,700 --> 00:53:45,559 vitalu ya kumbukumbu zilizotengwa. 1154 00:53:45,559 --> 00:53:46,850 Aina ya dhana ngazi za juu. 1155 00:53:46,850 --> 00:53:48,820 Nyie si haja kujua kwa wiki hii, 1156 00:53:48,820 --> 00:53:51,290 lakini hiyo yote ni kufanya huko chini. 1157 00:53:51,290 --> 00:53:55,190 1158 00:53:55,190 --> 00:53:55,900 SAWA. 1159 00:53:55,900 --> 00:53:56,710 >> Utani wakati mwingine. 1160 00:53:56,710 --> 00:54:01,360 1161 00:54:01,360 --> 00:54:02,780 Masharti mawili kutembea ndani ya bar. 1162 00:54:02,780 --> 00:54:05,713 Mmoja wenu anaposema, Ningependa rom na Coke maadili takataka. 1163 00:54:05,713 --> 00:54:08,796 Wengine anasema, itabidi udhuru rafiki yangu, yeye si null kukoma. 1164 00:54:08,796 --> 00:54:10,390 Nyie kupata. 1165 00:54:10,390 --> 00:54:10,890 Pole. 1166 00:54:10,890 --> 00:54:13,490 Hii ni jinsi mimi kuweka mwenyewe kwenda wakati mimi prep kwa sehemu 1167 00:54:13,490 --> 00:54:15,650 ni mimi kuingiza slides wanandoa mzaha. 1168 00:54:15,650 --> 00:54:16,150 Anyways. 1169 00:54:16,150 --> 00:54:21,460 1170 00:54:21,460 --> 00:54:21,960 SAWA. 1171 00:54:21,960 --> 00:54:24,290 Kabla ya mimi hoja on-- hivyo, kimsingi, tumekuwa 1172 00:54:24,290 --> 00:54:30,600 kufunikwa zote dhana masuala yanayohusiana na kuyatumia. 1173 00:54:30,600 --> 00:54:34,090 Na kisha tunakwenda talk-- kusonga zaidi, majadiliano juu ya nini hiyo ni muhimu 1174 00:54:34,090 --> 00:54:37,810 na jinsi inafaa katika wazo la usimamizi wa kumbukumbu. 1175 00:54:37,810 --> 00:54:39,810 Lakini kabla ya kusonga mbele, haina mtu yeyote una maswali 1176 00:54:39,810 --> 00:54:43,880 kuhusu matumizi pointer, nini kinaendelea juu ya wakati wewe ni kujenga kuyatumia, 1177 00:54:43,880 --> 00:54:47,540 jinsi ni referencing kila mengine, jinsi ndio dereferencing? 1178 00:54:47,540 --> 00:54:51,760 Maswali yoyote kuhusu kwamba kabla mimi hoja juu ya? 1179 00:54:51,760 --> 00:54:53,060 SAWA. 1180 00:54:53,060 --> 00:54:54,770 Kubwa. 1181 00:54:54,770 --> 00:54:58,170 >> Hivyo hii inatuleta katika hii kubwa dhana ngazi za juu 1182 00:54:58,170 --> 00:55:00,310 ya kumbukumbu ya usimamizi kwa ujumla. 1183 00:55:00,310 --> 00:55:02,720 Hivyo, kimsingi, katika kompyuta yako, kuna 1184 00:55:02,720 --> 00:55:06,300 aina mbili za msingi za kumbukumbu au mikoa ambayo kumbukumbu ni kuhifadhiwa. 1185 00:55:06,300 --> 00:55:10,210 Una hapa kile kinachoitwa lundo na una chini hapa 1186 00:55:10,210 --> 00:55:11,550 kile kinachoitwa stack. 1187 00:55:11,550 --> 00:55:13,966 Na sisi ni kwenda kuzungumza kuhusu stack kwanza kwa sababu ni 1188 00:55:13,966 --> 00:55:16,910 moja zaidi finagley kwamba kuwa na aina ya conceptually 1189 00:55:16,910 --> 00:55:18,570 kuelewa nini kinaendelea. 1190 00:55:18,570 --> 00:55:23,930 >> Hivyo stack zote is-- kufikiria kama stack kimwili ya kumbukumbu 1191 00:55:23,930 --> 00:55:28,880 ambapo una block ya kumbukumbu hiyo ni kuweka kando kwa ajili ya mpango wako 1192 00:55:28,880 --> 00:55:30,180 wakati ni mbio. 1193 00:55:30,180 --> 00:55:34,480 Na hii ni mahali ambapo, kimsingi, kila ya vigezo lako ni kuhifadhiwa. 1194 00:55:34,480 --> 00:55:38,300 Hivyo hii ni tu zoomed katika picha ya kwamba stack. 1195 00:55:38,300 --> 00:55:41,060 Stack chini huko, mimi nina zooming tu katika kidogo zaidi. 1196 00:55:41,060 --> 00:55:46,170 >> Hivyo, kimsingi, katika mkusanyiko una rundo la kazi katika mpango wako. 1197 00:55:46,170 --> 00:55:48,250 Basi hebu tu kwenda nyuma kwa mfano wiki mbili 1198 00:55:48,250 --> 00:55:51,450 ambapo tulikuwa na kazi yetu kuu kama vile mchemraba kazi 1199 00:55:51,450 --> 00:55:56,410 ambapo sisi alijaribu kujenga kazi ambayo cubed-- kwamba alichukua vigezo kama pembejeo, 1200 00:55:56,410 --> 00:55:59,110 cubed yao na kurudi kuwarejesha kwenye kuu. 1201 00:55:59,110 --> 00:56:02,459 Hivyo njia kwamba hiyo ni kuhifadhiwa katika kumbukumbu ni kwamba una kazi yako kuu 1202 00:56:02,459 --> 00:56:03,250 hapa chini. 1203 00:56:03,250 --> 00:56:06,630 Na kisha kwa kazi kila ziada kwamba wewe piga na kuongeza juu ya kwamba, 1204 00:56:06,630 --> 00:56:07,960 kumbukumbu tu mwingi juu. 1205 00:56:07,960 --> 00:56:10,190 Fikiria kama stack kimwili. 1206 00:56:10,190 --> 00:56:13,570 >> Na hivyo kuwa nyote kuu vigezo ya kazi yako kuu, 1207 00:56:13,570 --> 00:56:15,260 kila kitu ambacho kinaendelea hapa, kuhifadhiwa. 1208 00:56:15,260 --> 00:56:17,440 Na kisha wakati wewe kuitwa mchemraba, unaendelea na 1209 00:56:17,440 --> 00:56:20,810 inajenga nakala za wale wote vigezo na ni maduka yao 1210 00:56:20,810 --> 00:56:23,010 juu katika nafasi mbalimbali. 1211 00:56:23,010 --> 00:56:24,280 Na hivyo kwa nini sisi huduma? 1212 00:56:24,280 --> 00:56:29,220 Sababu sisi huduma ni kwamba hatuwezi tu kutumia vigezo here-- vigezo 1213 00:56:29,220 --> 00:56:33,080 here-- na sisi kuwabadilisha, tunatarajia wao pia inaweza kubadilishwa hapa, sawa? 1214 00:56:33,080 --> 00:56:35,910 >> Wazo ni kwamba wao ni kuokolewa katika maeneo mbalimbali katika kumbukumbu 1215 00:56:35,910 --> 00:56:40,540 hivyo kwamba, wakati wewe ni kupata mbalimbali kazi, nini unafikiri kinachotokea 1216 00:56:40,540 --> 00:56:45,520 si kweli yanatokea kwa sababu bits kumbukumbu si yanahusiana. 1217 00:56:45,520 --> 00:56:50,530 Na hivyo swali kwamba ni kweli muhimu kwetu aina ya kuelewa 1218 00:56:50,530 --> 00:56:54,100 ni, nini kama, wakati sisi ni mbio Mpango, ukubwa wa kazi 1219 00:56:54,100 --> 00:56:57,159 stack frame-- hivyo kimwili, jinsi kumbukumbu kiasi gani tuna kuwapa? 1220 00:56:57,159 --> 00:56:59,950 Labda ni kazi kubwa hivyo sisi na kuwapa kumbukumbu kwamba mengi. 1221 00:56:59,950 --> 00:57:02,230 Lakini kama ilivyokuwa ndogo tunatarajia haja ndogo kidogo. 1222 00:57:02,230 --> 00:57:05,980 >> Hivyo wazo ni kwamba wakati sisi ni mbio Mpango ukubwa wa kazi ambayo 1223 00:57:05,980 --> 00:57:09,100 unategemea jinsi wengi vigezo na aina ya vigezo 1224 00:57:09,100 --> 00:57:10,940 kwamba tunataka kuwapa. 1225 00:57:10,940 --> 00:57:13,910 Lakini nini kama idadi ya variables-- na ukubwa wao, 1226 00:57:13,910 --> 00:57:16,140 hiyo niliamua na wewe encoder lakini 1227 00:57:16,140 --> 00:57:20,580 imedhamiria kwa halisi mtumiaji wa programu yako. 1228 00:57:20,580 --> 00:57:24,240 Hivyo kama mimi alitaka kujenga kazi kwamba alichukua masharti kutoka kwa mtumiaji, 1229 00:57:24,240 --> 00:57:27,630 lakini mimi si kweli kujua jinsi kubwa masharti hayo ni, ni vigumu kwa mimi 1230 00:57:27,630 --> 00:57:30,220 kwa allot maalum kiasi cha kumbukumbu inahitajika. 1231 00:57:30,220 --> 00:57:30,920 Sawa? 1232 00:57:30,920 --> 00:57:35,234 >> Kwa sababu kama hii function-- kama mtumiaji huyu pembejeo kamba kubwa, 1233 00:57:35,234 --> 00:57:37,650 itakuja kujenga makosa ya kile kinachoitwa kimsingi 1234 00:57:37,650 --> 00:57:42,190 stack kufurika ambapo kwenda zaidi mipaka ya kumbukumbu kwamba wewe. 1235 00:57:42,190 --> 00:57:44,250 Na hivyo basi tunafanya nini? 1236 00:57:44,250 --> 00:57:47,290 Kama hatuwezi tu kujenga kubwa hii stack ambayo inaweza kuokoa kila kitu, 1237 00:57:47,290 --> 00:57:50,260 tunafanya nini ili kutatua tatizo hilo? 1238 00:57:50,260 --> 00:57:54,364 >> Hivyo sisi ni kwenda kuendelea na majadiliano kuhusu aina hii ya pili ya kumbukumbu 1239 00:57:54,364 --> 00:57:56,780 na kisha tunaweza kuongea kuhusu jinsi tunaweza kutumia pamoja mawili 1240 00:57:56,780 --> 00:57:58,550 kutatua swali hilo. 1241 00:57:58,550 --> 00:58:01,024 Hivyo sasa tunakwenda hoja juu kwa sehemu mbalimbali za kumbukumbu 1242 00:58:01,024 --> 00:58:01,690 katika kompyuta yetu. 1243 00:58:01,690 --> 00:58:03,215 Hiyo inaitwa lundo. 1244 00:58:03,215 --> 00:58:07,150 Hivyo chungu yote ni bwawa ya inapatikana kumbukumbu kwamba 1245 00:58:07,150 --> 00:58:08,690 inaweza kuwa zilizotengwa dynamically. 1246 00:58:08,690 --> 00:58:12,420 Hivyo kwamba anaweza kubadilisha wakati mpango wako ni mbio. 1247 00:58:12,420 --> 00:58:15,160 >> Na hivyo mkoa wa outnyttjade kumbukumbu ambayo inaweza 1248 00:58:15,160 --> 00:58:18,200 kuwa allowed-- ambayo inaweza kuwa kura na kazi 1249 00:58:18,200 --> 00:58:20,490 aitwaye malloc, au mgao kumbukumbu. 1250 00:58:20,490 --> 00:58:23,110 Hivyo, kimsingi, wakati wewe ni mbio mpango, 1251 00:58:23,110 --> 00:58:29,560 unaweza dynamically kuunda kumbukumbu kutoka lundo na kutumia yote chini hapa. 1252 00:58:29,560 --> 00:58:34,280 Na hivyo basi, yote ya kazi yako hapa unaweza kupata lundo. 1253 00:58:34,280 --> 00:58:37,960 >> Na hivyo malloc, wazo hili ambalo Daudi aina ya haraka, kwa ufupi glossed juu 1254 00:58:37,960 --> 00:58:41,570 katika hotuba, ni njia tu kwa kudhibiti kumbukumbu yako. 1255 00:58:41,570 --> 00:58:45,470 Kama, wakati wewe ni kujenga tu stack kazi, wakati uko tu 1256 00:58:45,470 --> 00:58:48,290 kuwa kazi yako kuu na kazi yako bila mpangilio, 1257 00:58:48,290 --> 00:58:52,270 unafikiri wao kama watoto kwamba tu walikimbia wakati yalifanyika pamoja nao. 1258 00:58:52,270 --> 00:58:53,690 Walikuwa watoto ni mbaya. 1259 00:58:53,690 --> 00:58:55,515 Wewe kujenga yao, kuwafundisha jambo fulani, 1260 00:58:55,515 --> 00:58:57,640 na kisha wakati unataka kuzipata tena wao uko 1261 00:58:57,640 --> 00:58:59,850 si pale kwa sababu yako kumbukumbu tu walikimbia. 1262 00:58:59,850 --> 00:59:04,140 >> Lakini malloc, au chungu, ni njia ya kuwa na watoto bora, ambapo 1263 00:59:04,140 --> 00:59:07,090 unaweza aina ya kuunda nao, hawawajui yao maadili, 1264 00:59:07,090 --> 00:59:11,080 kutumia them-- aliyepiga kweli bad-- kuzitumia hata hivyo alitaka, 1265 00:59:11,080 --> 00:59:14,002 lakini kisha kuwa na uwezo wa kudhibiti yao na kisha bure juu ya kumbukumbu 1266 00:59:14,002 --> 00:59:14,960 wakati wowote unahitaji yao. 1267 00:59:14,960 --> 00:59:18,085 Hivyo basi, wakati wewe ni kosa na yako kazi, watoto kuja nyuma yenu 1268 00:59:18,085 --> 00:59:20,290 na bado una data kwamba kuna. 1269 00:59:20,290 --> 00:59:25,690 >> Hivyo njia kwamba sisi malloc, au kuunda, kumbukumbu ni kwa kazi batili nyota 1270 00:59:25,690 --> 00:59:26,790 malloc ukubwa katika ka. 1271 00:59:26,790 --> 00:59:29,730 Hivyo hiyo ni mfano kwa nini sisi kufanya hivyo. 1272 00:59:29,730 --> 00:59:35,800 Hivyo mfano ni sisi kujenga pointer ya aina int int nyota pointer sawa 1273 00:59:35,800 --> 00:59:38,120 malloc ukubwa wa int. 1274 00:59:38,120 --> 00:59:41,734 Hivyo sababu tunafanya ukubwa ya na si tu number-- 1275 00:59:41,734 --> 00:59:43,650 kwa sababu sisi wote tunajua kwamba int ni ka nne, 1276 00:59:43,650 --> 00:59:48,310 right-- lakini int ni nne tu ka juu ya mifumo ya uendeshaji fulani. 1277 00:59:48,310 --> 00:59:50,410 >> Wazo kwa ajili yetu kama programmers ni kwamba sisi 1278 00:59:50,410 --> 00:59:53,160 unataka kujenga kificho kwamba wanaweza kukimbia kwenye kompyuta wote, siyo tu 1279 00:59:53,160 --> 00:59:54,860 rahisi wetu kompyuta. 1280 00:59:54,860 --> 00:59:58,350 Na hivyo ndiyo sababu sisi kama kutumia ukubwa wa na si tu namba nne. 1281 00:59:58,350 --> 00:59:59,970 Je, hiyo mantiki kwa kila mtu? 1282 00:59:59,970 --> 01:00:03,930 Hivyo ukubwa of-- yote ni C kazi au alama kwamba 1283 01:00:03,930 --> 01:00:09,350 anaelezea jinsi wengi ka ya kumbukumbu gani aina fulani ya kutofautiana kuchukua. 1284 01:00:09,350 --> 01:00:11,150 Hivyo katika kesi hii, ukubwa wa int ni nne. 1285 01:00:11,150 --> 01:00:12,090 Nne ka. 1286 01:00:12,090 --> 01:00:15,490 Na malloc ni kwenda bure up ka nne katika chungu yako, 1287 01:00:15,490 --> 01:00:18,790 basi unaweza kisha kutumia katika kuu yako kazi na kuwa na uwezo wa kuhifadhi kumbukumbu. 1288 01:00:18,790 --> 01:00:22,460 1289 01:00:22,460 --> 01:00:24,860 Ni kila mtu wazi juu ya kwamba hadi sasa? 1290 01:00:24,860 --> 01:00:25,918 Yeah? 1291 01:00:25,918 --> 01:00:28,122 >> Watazamaji: mimi nina wazi lakini tu kuwa juu ya clear-- 1292 01:00:28,122 --> 01:00:28,705 ANDI PENG: Sawa. 1293 01:00:28,705 --> 01:00:29,246 Kabisa faini. 1294 01:00:29,246 --> 01:00:32,176 Watazamaji: --size ya ni [inaudible] Unaweza kweli [inaudible] 1295 01:00:32,176 --> 01:00:34,384 na itakuwa kweli kufanya jambo ambalo sisi unataka kwa. 1296 01:00:34,384 --> 01:00:35,380 Siyo baadhi pseudocode. 1297 01:00:35,380 --> 01:00:35,878 >> ANDI PENG: Hapana 1298 01:00:35,878 --> 01:00:36,874 >> Watazamaji: Ni kama thing-- halisi 1299 01:00:36,874 --> 01:00:37,372 >> ANDI PENG: Hii ni kanuni ya kweli. 1300 01:00:37,372 --> 01:00:38,455 >> Watazamaji: --we anaweza kuitumia. 1301 01:00:38,455 --> 01:00:39,862 Ni halisi. 1302 01:00:39,862 --> 01:00:40,418 Baridi. 1303 01:00:40,418 --> 01:00:41,751 ANDI PENG: Michezo ya kuja na C. 1304 01:00:41,751 --> 01:00:43,475 Watazamaji: Kwamba inafanya maisha yangu furaha. 1305 01:00:43,475 --> 01:00:45,550 ANDI PENG: Naam. 1306 01:00:45,550 --> 01:00:48,610 Hivyo kama wewe ni programu wavivu kama mimi aina ya niko wakati mwingine, 1307 01:00:48,610 --> 01:00:50,402 Mimi si kama kukariri nini ukubwa wa int 1308 01:00:50,402 --> 01:00:52,734 yaani, sipendi kukumbuka na ukubwa wa kuelea ni. 1309 01:00:52,734 --> 01:00:55,160 Ukubwa wa tu anakwambia nini ni na hiyo ni rahisi sana. 1310 01:00:55,160 --> 01:00:59,880 1311 01:00:59,880 --> 01:01:00,440 >> Sawa. 1312 01:01:00,440 --> 01:01:02,160 Kwa hiyo, jambo muhimu kwamba nyie wote wanataka 1313 01:01:02,160 --> 01:01:04,620 kukumbuka wakati uko kutumia malloc ni kwamba daima 1314 01:01:04,620 --> 01:01:06,400 kuwa na kuangalia kuona kama ni null. 1315 01:01:06,400 --> 01:01:08,630 Hivyo kama nilivyosema, nyuma ya kwamba picha ya lundo. 1316 01:01:08,630 --> 01:01:11,390 Lundo ni kubwa hii mkusanyiko wa kumbukumbu kwamba nimepata. 1317 01:01:11,390 --> 01:01:16,740 Na unataka kuwa na uwezo wa kuchukua bonge ya kumbukumbu kutoka humo na matumizi yake, sawa? 1318 01:01:16,740 --> 01:01:19,750 >> Lakini nini kama wewe huna kumbukumbu zaidi katika kuwa chungu? 1319 01:01:19,750 --> 01:01:23,650 Nini kama nimekuwa tayari kutumika zote yake na mimi kujaribu malloc zaidi? 1320 01:01:23,650 --> 01:01:24,864 Hiyo haipo. 1321 01:01:24,864 --> 01:01:26,780 Naam, hiyo ni kwa nini uko kwenda kupata kosa. 1322 01:01:26,780 --> 01:01:29,220 Wewe ni kwenda kosa seg. Wewe ni kwenda kuwa na segmentation kosa ambapo 1323 01:01:29,220 --> 01:01:30,940 kujaribu kupata mambo ambayo si huko. 1324 01:01:30,940 --> 01:01:33,180 Na hivyo njia ya sisi kufanya kuwa na njia hiyo sisi 1325 01:01:33,180 --> 01:01:36,120 kuzuia kwamba ni kwamba sisi kuangalia ili kuona kama pointer ya null. 1326 01:01:36,120 --> 01:01:41,650 >> Hivyo kama ningekuwa malloc kitu na nilikuwa kumbukumbu tena, 1327 01:01:41,650 --> 01:01:45,501 ambayo ingeweza magazeti makosa kwa sababu pointer akarudi wewe ni tu null. 1328 01:01:45,501 --> 01:01:47,750 Na hivyo njia ya sisi kufanya Haya hii ni mpango mkubwa, 1329 01:01:47,750 --> 01:01:52,140 tu kukariri Haya ni kwamba yoyote wakati wewe kujaribu malloc chochote, 1330 01:01:52,140 --> 01:01:55,300 wewe ni kwenda haja ya kuangalia kuona kama ni null. 1331 01:01:55,300 --> 01:01:58,257 Kwa sababu wakati wowote kujaribu kupata kumbukumbu kutoka lundo, 1332 01:01:58,257 --> 01:02:00,340 daima kuwa kwa kufanya kuhakikisha kwamba una kumbukumbu. 1333 01:02:00,340 --> 01:02:01,350 Hayo ni yote ni. 1334 01:02:01,350 --> 01:02:04,980 >> Hivyo pretty much wale watatu mstari wa kanuni, kukariri. 1335 01:02:04,980 --> 01:02:06,830 Kila wakati malloc, plop yao katika. 1336 01:02:06,830 --> 01:02:08,190 Wewe ni kwenda haja yao. 1337 01:02:08,190 --> 01:02:10,540 Kwa sababu Mimi kuhakikisha, tunakwenda mtihani wewe juu ya kesi na kompyuta yako 1338 01:02:10,540 --> 01:02:13,498 ni kwenda kulipuka kwa sababu wewe ni kwenda kujaribu kupata kumbukumbu hiyo ni 1339 01:02:13,498 --> 01:02:16,680 si pale na mambo ni kwenda ajali na si kwenda kuwa nzuri. 1340 01:02:16,680 --> 01:02:19,290 Hivyo tu kuchimba kwamba ndani ya ubongo wako. 1341 01:02:19,290 --> 01:02:21,370 Malloc, null. 1342 01:02:21,370 --> 01:02:22,360 Nzuri. 1343 01:02:22,360 --> 01:02:22,860 Sawa. 1344 01:02:22,860 --> 01:02:26,280 1345 01:02:26,280 --> 01:02:28,340 >> Basi hii unasababisha Suala la nini kinatokea 1346 01:02:28,340 --> 01:02:30,550 baada ya sisi ni kosa kutumia kwamba kumbukumbu. 1347 01:02:30,550 --> 01:02:32,390 Kwa sababu wazo zima ya kuwa na malloc ilikuwa 1348 01:02:32,390 --> 01:02:36,460 kwamba tuna rundo hili kwamba tunaweza kuchukua kumbukumbu kutoka na kisha tunaweza kuitumia. 1349 01:02:36,460 --> 01:02:37,220 Sawa? 1350 01:02:37,220 --> 01:02:40,550 Na kisha nini tuna kukumbuka ni kwamba, baada ya sisi ni kosa na hilo, 1351 01:02:40,550 --> 01:02:41,900 sisi kisha unaweza bure hilo. 1352 01:02:41,900 --> 01:02:42,400 Basi ni kwenda. 1353 01:02:42,400 --> 01:02:43,979 Tunaweza basi ni kwenda. 1354 01:02:43,979 --> 01:02:47,020 Au mwingine ni pia kwenda kuvuja kumbukumbu na mambo zaidi mbaya kutokea. 1355 01:02:47,020 --> 01:02:49,010 >> Kimsingi, wakati wowote wewe ni kugusa kumbukumbu, 1356 01:02:49,010 --> 01:02:51,800 mambo mabaya kitatokea kama wewe hawafanyi mambo kwa usahihi. 1357 01:02:51,800 --> 01:02:55,150 Hivyo kuwa na kuangalia kuona, kwanza, kama una kumbukumbu za kutosha. 1358 01:02:55,150 --> 01:02:58,700 Na kisha baada ya wewe ni kosa, unataka bure ni na kuruhusu mfumo wa uendeshaji wako 1359 01:02:58,700 --> 01:03:00,690 kuchukua nyuma. 1360 01:03:00,690 --> 01:03:04,870 Hivyo njia sisi kufanya hivyo ni tu kwamba kazi, utupu bure, na pointer 1361 01:03:04,870 --> 01:03:06,370 kwa kuwa chungu ya kumbukumbu. 1362 01:03:06,370 --> 01:03:08,680 >> Hivyo mfano ni bure pointer. 1363 01:03:08,680 --> 01:03:11,580 Ni rahisi, rahisi, hawataki kusahau hayo. 1364 01:03:11,580 --> 01:03:14,687 Hivyo kuangalia kuona kama ni null, bure. 1365 01:03:14,687 --> 01:03:15,270 Kila mtu mwema? 1366 01:03:15,270 --> 01:03:22,660 1367 01:03:22,660 --> 01:03:27,325 Hivyo mara nyingine tena, kanuni na kwamba nyie Unaweza aina ya haraka kuchukua mtazamo saa. 1368 01:03:27,325 --> 01:03:34,964 1369 01:03:34,964 --> 01:03:37,880 Najua ni mengi ya syntax mpya na ni sawa kama wewe ni kama, ah, 1370 01:03:37,880 --> 01:03:38,963 hiyo ina maana gani tena? 1371 01:03:38,963 --> 01:03:40,250 Hakuna wasiwasi. 1372 01:03:40,250 --> 01:03:46,785 Haya yote ilikuwa na maana kuwa ni kuonyesha hatua, jinsi mambo yote haya 1373 01:03:46,785 --> 01:03:47,660 inaweza kutumika kwa pamoja. 1374 01:03:47,660 --> 01:03:52,190 1375 01:03:52,190 --> 01:03:54,190 Hivyo kwamba ni kuweka pamoja kama kundi la zamani 1376 01:03:54,190 --> 01:03:56,532 slides sisi tu akaenda kupitia katika programu moja. 1377 01:03:56,532 --> 01:03:58,240 Watazamaji: Kwa njia tuweze actually-- 1378 01:03:58,240 --> 01:03:59,570 ANDI PENG: Kwa njia hiyo tunaweza kweli matumizi. 1379 01:03:59,570 --> 01:04:02,379 Unaweza plop kwamba katika ID yako, unaweza kukimbia na ingekuwa kazi. 1380 01:04:02,379 --> 01:04:02,920 Watazamaji: Sawa. 1381 01:04:02,920 --> 01:04:04,140 Hivyo hiyo ni kweli? 1382 01:04:04,140 --> 01:04:05,580 >> ANDI PENG: Hiyo ni kweli. 1383 01:04:05,580 --> 01:04:06,430 Naam. 1384 01:04:06,430 --> 01:04:08,690 Mimi kujaribu kufanya hivyo hivyo fonts ni tofauti hivyo 1385 01:04:08,690 --> 01:04:11,770 kwamba wakati wowote mimi aina halisi kificho herufi ni herufi kificho 1386 01:04:11,770 --> 01:04:15,471 na kwamba kumbuka kificho wangu ni tofauti, lakini Sijui kama kwamba kweli kazi. 1387 01:04:15,471 --> 01:04:16,012 Watazamaji: Hapana 1388 01:04:16,012 --> 01:04:17,190 Nadhani that-- 1389 01:04:17,190 --> 01:04:18,213 >> ANDI PENG: Sawa. 1390 01:04:18,213 --> 01:04:20,578 >> Watazamaji: --sometimes [Inaudible] na mimi nina 1391 01:04:20,578 --> 01:04:23,416 kama, kwamba itakuwa kweli cute kama ilikuwa kweli jambo zinatumiwa 1392 01:04:23,416 --> 01:04:24,812 lakini basi si jambo inatumika. 1393 01:04:24,812 --> 01:04:26,270 Mimi kama kwamba hili ni jambo la inatumika. 1394 01:04:26,270 --> 01:04:27,010 >> ANDI PENG: Sawa. 1395 01:04:27,010 --> 01:04:27,510 Naam. 1396 01:04:27,510 --> 01:04:28,430 Mimi itabidi kupita kwamba pamoja. 1397 01:04:28,430 --> 01:04:33,266 Kuwa kama Daudi, watoto ni kweli huzuni wakati wewe kuandika kanuni bandia. 1398 01:04:33,266 --> 01:04:34,240 Sawa. 1399 01:04:34,240 --> 01:04:34,740 Yeah? 1400 01:04:34,740 --> 01:04:37,686 >> Watazamaji: Hivyo PTR hapa ni kweli si pointer, 1401 01:04:37,686 --> 01:04:41,130 ni kuzuia wa kumbukumbu? 1402 01:04:41,130 --> 01:04:45,130 >> ANDI PENG: Kwa hiyo wewe kuzungumza juu mstari wa kwanza au moja chini hapa? 1403 01:04:45,130 --> 01:04:48,170 Je, wewe ni kuzungumza juu ya hii moja hapa? 1404 01:04:48,170 --> 01:04:50,910 >> Watazamaji: PTR ni mambo mbalimbali in-- 1405 01:04:50,910 --> 01:04:53,230 >> ANDI PENG: Naam, hivyo hapa nini mimi doing-- kweli, 1406 01:04:53,230 --> 01:04:54,660 hebu tu kwenda kwa njia ya hapa. 1407 01:04:54,660 --> 01:04:57,120 Aina hii ya mahusiano katika vizuri wote wa dhana. 1408 01:04:57,120 --> 01:05:01,840 Hivyo hapa tuna int nyota PTR. 1409 01:05:01,840 --> 01:05:04,160 Hivyo int pointer, hapo ndipo sisi ni kweli kujenga 1410 01:05:04,160 --> 01:05:06,550 pointer kwamba pointi kwa integer. 1411 01:05:06,550 --> 01:05:08,230 Vizuri, ni kwenda kwa uhakika na integer. 1412 01:05:08,230 --> 01:05:12,135 Na tunakwenda malloc, au kuwapa, kumbukumbu ya kutosha kura 1413 01:05:12,135 --> 01:05:13,200 kuhifadhi integer. 1414 01:05:13,200 --> 01:05:14,910 Hivyo ka nne katika kesi hii. 1415 01:05:14,910 --> 01:05:18,024 >> Na kisha kama kuwa sawa sawa NULL sawa NULL tunakwenda magazeti. 1416 01:05:18,024 --> 01:05:20,440 Oh, una makosa kwa sababu uko nje ya kumbukumbu, sawa? 1417 01:05:20,440 --> 01:05:22,814 Vinginevyo moja kurudi, kwamba tu anasema mpango wako 1418 01:05:22,814 --> 01:05:24,170 kwamba nimepata kosa. 1419 01:05:24,170 --> 01:05:26,850 Na kisha kama huna na kwamba kumbukumbu, ni 1420 01:05:26,850 --> 01:05:33,230 kwenda kuhifadhi chochote kupata int anatoa katika eneo 1421 01:05:33,230 --> 01:05:35,460 na kuweka kama thamani ya pointer. 1422 01:05:35,460 --> 01:05:38,500 Hivyo ni kweli kwenda kimwili kufuta thamani huu 1423 01:05:38,500 --> 01:05:41,702 na kuweka chochote kupata faida int. 1424 01:05:41,702 --> 01:05:43,910 Na kisha utaenda magazeti chochote aliingia. 1425 01:05:43,910 --> 01:05:46,080 >> Watazamaji: Na hiyo ndiyo kwenda kuwa katika chungu? 1426 01:05:46,080 --> 01:05:47,060 >> ANDI PENG: Hiyo inaenda kuwa katika chungu. 1427 01:05:47,060 --> 01:05:48,768 >> Watazamaji: Na ili itakuwa kupatikana. 1428 01:05:48,768 --> 01:05:51,220 ANDI PENG: Hasa. 1429 01:05:51,220 --> 01:05:52,600 Nzuri. 1430 01:05:52,600 --> 01:05:53,756 Nzuri. 1431 01:05:53,756 --> 01:05:59,289 >> Watazamaji: Hivyo wakati sisi bure PTR katika hii Hatua ya mwisho, sisi ni kumkomboa pointer 1432 01:05:59,289 --> 01:06:00,724 au tuko kumkomboa kuzuia? 1433 01:06:00,724 --> 01:06:01,390 ANDI PENG: Naam. 1434 01:06:01,390 --> 01:06:05,570 Hivyo sisi ni kumkomboa pointer vizuri, kumkomboa block ya kumbukumbu. 1435 01:06:05,570 --> 01:06:08,780 Hivyo njia pekee tunaweza hata kupata kumbukumbu ni kwa kuwa pointer. 1436 01:06:08,780 --> 01:06:10,730 Kama huna pointer, uko kama, loo, sijui ni wapi, 1437 01:06:10,730 --> 01:06:11,290 sawa? 1438 01:06:11,290 --> 01:06:13,956 Hivyo kama wewe ni bure, wewe ni kimsingi kumkomboa kuzuia kwamba nzima. 1439 01:06:13,956 --> 01:06:16,500 Kisha kompyuta yako anajua, loo, kuna kitu zinatumiwa hapa, 1440 01:06:16,500 --> 01:06:19,396 Naweza tu kuweka takataka maadili nyuma ndani yake tena. 1441 01:06:19,396 --> 01:06:21,590 >> Watazamaji: Hivyo integers kufanya kuwepo katika suala hilo? 1442 01:06:21,590 --> 01:06:23,481 >> ANDI PENG: Je, integers zipo? 1443 01:06:23,481 --> 01:06:23,980 Pole. 1444 01:06:23,980 --> 01:06:25,271 Je, unaweza rephrase swali lako? 1445 01:06:25,271 --> 01:06:28,330 Watazamaji: Mimi maana, baada ya wewe bure pointer, integer kwamba kupata, 1446 01:06:28,330 --> 01:06:29,990 kwamba bado zipo? 1447 01:06:29,990 --> 01:06:31,360 >> ANDI PENG: Hapana, haiwezekani. 1448 01:06:31,360 --> 01:06:34,070 1449 01:06:34,070 --> 01:06:37,550 Au angalau kutakuwa na zipo katika yako kumbukumbu kabla kompyuta yako anafanya 1450 01:06:37,550 --> 01:06:40,231 chochote kwa hayo, lakini kuna hakuna njia kwa ajili ya kupata hiyo. 1451 01:06:40,231 --> 01:06:41,480 Kwa sababu wewe huru pointer. 1452 01:06:41,480 --> 01:06:43,150 Huwezi kujua ambapo ni tena. 1453 01:06:43,150 --> 01:06:43,650 Naam. 1454 01:06:43,650 --> 01:06:46,500 1455 01:06:46,500 --> 01:06:48,560 >> Mimi nina kwenda kuendelea na hapa. 1456 01:06:48,560 --> 01:06:49,060 Phew. 1457 01:06:49,060 --> 01:06:53,012 Hivyo sisi ni kupitia kura ya dhana matatizo ya usimamizi wa kumbukumbu 1458 01:06:53,012 --> 01:06:54,720 na tunakwenda tu kimsingi kutumia 1459 01:06:54,720 --> 01:06:57,090 5, dakika 10 kwenda zaidi ya syntax mambo ambayo 1460 01:06:57,090 --> 01:07:03,240 itakuwa inatumika na manufaa kwa nyie, lakini kitu pia conceptually huko nje. 1461 01:07:03,240 --> 01:07:03,740 SAWA. 1462 01:07:03,740 --> 01:07:06,930 >> Hivyo sisi ni kabisa kubadilisha gia hapa. 1463 01:07:06,930 --> 01:07:09,360 Kumbukumbu usimamizi, vigumu. Kuyatumia, magumu. Ndiyo. 1464 01:07:09,360 --> 01:07:10,530 Ni kweli, ngumu kweli kweli. 1465 01:07:10,530 --> 01:07:11,270 Kabisa faini. 1466 01:07:11,270 --> 01:07:13,800 Hiyo ni kwa nini kipande yako ni kwenda kuwa ngumu kweli kweli. 1467 01:07:13,800 --> 01:07:17,740 Lakini kama wewe kwenda na kufanya mambo ambayo tuko 1468 01:07:17,740 --> 01:07:19,860 wanatakiwa kufanya, kufanya mambo hakika ni null, 1469 01:07:19,860 --> 01:07:21,830 kuhakikisha kuangalia kama mambo ni null, kuhakikisha bure kumbukumbu, 1470 01:07:21,830 --> 01:07:23,910 kufanya mambo uhakika si kuvuja, wewe utakuwa na nzuri. 1471 01:07:23,910 --> 01:07:25,761 Utakuwa kuweka. 1472 01:07:25,761 --> 01:07:26,260 Sawa. 1473 01:07:26,260 --> 01:07:30,870 Hivyo sisi ni kwenda kuhamia katika hii dhana mpya kabisa ya redirection. 1474 01:07:30,870 --> 01:07:33,201 Na hivyo kabla ya sasa, njia kuu kwamba tumekuwa 1475 01:07:33,201 --> 01:07:35,700 wamekuwa mazungumzo na yetu mipango ni kupitia pembejeo kiwango 1476 01:07:35,700 --> 01:07:36,533 na pato standard. 1477 01:07:36,533 --> 01:07:37,040 Sawa? 1478 01:07:37,040 --> 01:07:39,230 Sisi kama pembejeo mtumiaji mambo na kompyuta 1479 01:07:39,230 --> 01:07:42,090 mtemi ni nyuma na sisi katika wastaafu. 1480 01:07:42,090 --> 01:07:44,770 >> Lakini kuna wengine njia kwa sisi kuingiliana 1481 01:07:44,770 --> 01:07:47,810 na kompyuta na yetu mipango ambayo si mimi tu 1482 01:07:47,810 --> 01:07:50,245 mambo kimwili kuandika katika wakati mimi nina ilisababisha. 1483 01:07:50,245 --> 01:07:52,620 Na njia ya sisi kufanya hivyo ni kupitia mkubwa kuliko karoti 1484 01:07:52,620 --> 01:07:53,453 na bomba alama. 1485 01:07:53,453 --> 01:07:55,970 1486 01:07:55,970 --> 01:07:58,630 Ili tuweze pia kusoma na kuandika kwa files kutumia hiyo. 1487 01:07:58,630 --> 01:08:03,230 >> Hivyo njia kwamba sisi kufanya hivyo ni mkubwa kuliko karoti, wote ni kufanya 1488 01:08:03,230 --> 01:08:07,410 anaandika chochote yako faili ana faili tofauti. 1489 01:08:07,410 --> 01:08:11,870 Hivyo kwa mfano, kama mimi alitaka kukimbia hujambo dunia 1490 01:08:11,870 --> 01:08:14,330 na nilitaka pato kwa kuokolewa katika faili mwingine 1491 01:08:14,330 --> 01:08:17,359 na si tu kuchapishwa na mimi, mimi Unaweza tu kufanya kubwa zaidi kuliko karoti, 1492 01:08:17,359 --> 01:08:18,410 output.txt. 1493 01:08:18,410 --> 01:08:22,609 Hivyo yote anafanya ni kuchukua hello.world mpango wangu, 1494 01:08:22,609 --> 01:08:26,359 na chochote pato ni, ni kuokoa katika faili inayoitwa output.txt. 1495 01:08:26,359 --> 01:08:29,850 Hivyo njia kwamba Daudi alifanya .csv na majina ya wanafunzi, 1496 01:08:29,850 --> 01:08:32,310 ni sawa kwamba nyie wanaweza kufanya. 1497 01:08:32,310 --> 01:08:35,137 >> Na nini hasa muhimu hapa ni mkubwa 1498 01:08:35,137 --> 01:08:38,220 than-- mbili kubwa kuliko karoti ishara ambayo unaweza append kwa pato 1499 01:08:38,220 --> 01:08:40,795 file, ambayo ina maana kwamba unaweza tu kuongeza juu yake. 1500 01:08:40,795 --> 01:08:43,420 Unaweza tu kuendelea kuongeza kwa output.txt wa kila kitu ziada 1501 01:08:43,420 --> 01:08:44,490 kwamba unafanya. 1502 01:08:44,490 --> 01:08:48,010 Au, kama kuanza kuingia katika zaidi mipango ngumu, mbili zaidi 1503 01:08:48,010 --> 01:08:50,939 kuliko karoti, kwamba tu prints nje ujumbe wa makosa. 1504 01:08:50,939 --> 01:08:53,340 Hivyo kusema kuwa kampuni kubwa Kiasi cha ujumbe wa makosa 1505 01:08:53,340 --> 01:08:54,810 na unataka kusoma kupitia wote na wewe 1506 01:08:54,810 --> 01:08:56,450 hawataki kuwa na kitabu kupitia terminal yako, 1507 01:08:56,450 --> 01:08:58,651 unaweza kweli tu kufanya mkubwa kuliko output.txt 1508 01:08:58,651 --> 01:09:00,359 na ni kwenda kuokoa wote wa makosa yako 1509 01:09:00,359 --> 01:09:02,900 katika faili inayoitwa output.txt kwamba unaweza kwenda kupitia na kusoma. 1510 01:09:02,900 --> 01:09:04,622 Watazamaji: wapi faili maandishi kuokolewa? 1511 01:09:04,622 --> 01:09:07,330 ANDI PENG: Ni kuokolewa katika moja directory kwamba mpango wako ni. 1512 01:09:07,330 --> 01:09:09,830 Hivyo wewe tu kwenda nyuma na kuangalia kwa ajili yake. 1513 01:09:09,830 --> 01:09:11,930 Na kitu kimoja sisi anaweza kufanya kwa ajili ya pembejeo ni 1514 01:09:11,930 --> 01:09:14,300 tuweze kweli kuchukua yaliyomo ya baadhi ya faili 1515 01:09:14,300 --> 01:09:16,380 na tunaweza pembejeo kwamba katika mpango wetu. 1516 01:09:16,380 --> 01:09:19,930 Hivyo badala ya kuwa na kufanya amri hoja mstari wa wapi kimwili 1517 01:09:19,930 --> 01:09:21,680 kuwa na aina ya mambo kila wakati, wewe 1518 01:09:21,680 --> 01:09:27,890 unaweza kweli tu na faili inayoitwa input.txt kwamba tu kuiweka wote katika. 1519 01:09:27,890 --> 01:09:31,970 >> Na kisha bomba ni hasa kwa sababu ya baridi inaweza kuchukua pato la mpango moja 1520 01:09:31,970 --> 01:09:34,170 na kuitumia kama pembejeo ya mpango mwingine. 1521 01:09:34,170 --> 01:09:38,430 Hivyo kwa mfano, katika guys wako Vigenere, kuna mstari wa kanuni kwamba 1522 01:09:38,430 --> 01:09:42,010 guys ni mbio kwamba labda labda si kweli kujua nini ilikuwa doing-- 1523 01:09:42,010 --> 01:09:46,910 hii ./generate 1000 bomba ./42. 1524 01:09:46,910 --> 01:09:47,510 Sawa? 1525 01:09:47,510 --> 01:09:51,100 >> Hivyo yote anafanya, kama sisi tu tuangalie hatua kwa hatua, 1526 01:09:51,100 --> 01:09:55,870 ./generate, hiyo ina maana mimi nina kuendesha programu yangu kuzalisha. 1527 01:09:55,870 --> 01:09:58,850 Hiyo ni kuchukua katika 1000 katika mchango wake. 1528 01:09:58,850 --> 01:10:03,330 Hivyo nataka kuzalisha 1,000 random idadi na mimi nina kwenda kwa bomba that-- 1529 01:10:03,330 --> 01:10:07,790 au mimi nina kwenda kutumia pato that-- kama pembejeo kwa mpango wangu aitwaye kupata. 1530 01:10:07,790 --> 01:10:12,110 Na mimi nina kwenda kujaribu kupata 42 nje ya idadi yanayotokana na wale 1,000 1531 01:10:12,110 --> 01:10:13,130 namba. 1532 01:10:13,130 --> 01:10:15,410 Je, kuwa mstari wa kanuni hufanya maana kila mtu mwingine? 1533 01:10:15,410 --> 01:10:17,820 >> Hivyo kwa njia hii sisi ni kuokoa sisi wenyewe tani ya hatua. 1534 01:10:17,820 --> 01:10:21,880 Hatuna kuendesha kuzalisha, ila faili na kisha kuiweka katika kupata. 1535 01:10:21,880 --> 01:10:23,800 Tunaweza tu kufanya hivyo wote katika mstari mmoja. 1536 01:10:23,800 --> 01:10:28,080 Kwa hiyo chochote kuzalisha ni outputting, plop ni haki ya nyuma katika kupata. 1537 01:10:28,080 --> 01:10:28,580 Yeah? 1538 01:10:28,580 --> 01:10:32,484 >> Watazamaji: Na katika suala la amri hoja mstari, ni that-- hiyo ni 1539 01:10:32,484 --> 01:10:33,948 tatu hoja mstari amri? 1540 01:10:33,948 --> 01:10:38,340 Ni kuzalisha, find-- hapana, four-- kuzalisha, 1000, kutafuta na 42? 1541 01:10:38,340 --> 01:10:39,134 Au ni the-- 1542 01:10:39,134 --> 01:10:42,050 ANDI PENG: Kwa hiyo bomba kweli haina kuhesabu kama hoja mstari amri 1543 01:10:42,050 --> 01:10:44,590 kwa sababu compiler au wastaafu anajua kwamba filimbi, 1544 01:10:44,590 --> 01:10:48,590 loo, najua kwamba lazima kuangalia kabla bomba kwa sababu hiyo ni pato langu 1545 01:10:48,590 --> 01:10:51,220 na ni lazima kuwatunza bomba kwa sababu hiyo ni pembejeo yangu. 1546 01:10:51,220 --> 01:10:54,520 Hivyo anajua that-- ./generate na 1000, 1547 01:10:54,520 --> 01:10:57,390 wale ni wawili amri kisha hoja tu kwa ajili ya mpango wa kwanza. 1548 01:10:57,390 --> 01:11:01,760 Na kisha ./find 42 ni amri mbili hoja mstari kwa ajili ya mpango wa pili. 1549 01:11:01,760 --> 01:11:02,980 Naam. 1550 01:11:02,980 --> 01:11:06,150 Kila mtu mzuri juu ya hili? 1551 01:11:06,150 --> 01:11:10,610 >> Hivyo tu halisi haraka, je, mistari hii mitatu ya maadili ya nini? 1552 01:11:10,610 --> 01:11:11,606 Haki rahisi. 1553 01:11:11,606 --> 01:11:13,605 Mtu yeyote wanataka kuniambia nini mstari wa kwanza anafanya? 1554 01:11:13,605 --> 01:11:18,201 1555 01:11:18,201 --> 01:11:19,117 Watazamaji: [inaudible]. 1556 01:11:19,117 --> 01:11:23,540 1557 01:11:23,540 --> 01:11:26,534 >> ANDI PENG: Fikiria kama just-- nini zaidi kuliko karoti kufanya? 1558 01:11:26,534 --> 01:11:29,299 >> Watazamaji: Ni unaweka kitu ndani ya mstari wa pili. 1559 01:11:29,299 --> 01:11:31,090 ANDI PENG: Kwa hiyo kile ni kinyume cha hayo? 1560 01:11:31,090 --> 01:11:33,514 Watazamaji: Ni unaweka ijayo Jambo katika jambo la kwanza. 1561 01:11:33,514 --> 01:11:34,180 ANDI PENG: Naam. 1562 01:11:34,180 --> 01:11:37,550 Hivyo yote anafanya ni uko kuendesha programu .hello-- 1563 01:11:37,550 --> 01:11:40,010 wewe ni mbio mpango aitwaye hodi. 1564 01:11:40,010 --> 01:11:42,960 Wewe ni kwenda kuwapa pembejeo aitwaye input.txt. 1565 01:11:42,960 --> 01:11:43,460 Sawa? 1566 01:11:43,460 --> 01:11:46,250 Kwa sababu kufikiria kama tu kimwili kwenda katika hodi. 1567 01:11:46,250 --> 01:11:50,632 Na kisha wewe ni kwenda kuokoa pato katika faili inayoitwa output.txt. 1568 01:11:50,632 --> 01:11:51,715 Vipi kuhusu mstari wa pili? 1569 01:11:51,715 --> 01:11:54,164 Unataka kuniambia nini mstari wa pili gani? 1570 01:11:54,164 --> 01:11:55,080 Watazamaji: [inaudible]. 1571 01:11:55,080 --> 01:12:00,522 1572 01:12:00,522 --> 01:12:01,230 ANDI PENG: Sorry. 1573 01:12:01,230 --> 01:12:03,560 Kusema kwamba tena. 1574 01:12:03,560 --> 01:12:04,060 Elliot. 1575 01:12:04,060 --> 01:12:06,560 >> Watazamaji: Hivyo unaweka orodha ya namba katika kupata. 1576 01:12:06,560 --> 01:12:07,540 >> ANDI PENG: Naam. 1577 01:12:07,540 --> 01:12:10,790 Hivyo kupata, kumbuka, katika Ili kuendesha kupata 1578 01:12:10,790 --> 01:12:13,209 haja ya kujua ambapo wewe ni kutafuta. 1579 01:12:13,209 --> 01:12:15,500 Na hivyo kila kitu ni kufanya hapa ni kwamba ni kuwapa ninyi 1580 01:12:15,500 --> 01:12:18,720 kabla kupewa seti ya idadi, kisha kupata ni kwenda 1581 01:12:18,720 --> 01:12:21,680 kutafuta wale kwa idadi ya 42. 1582 01:12:21,680 --> 01:12:23,620 Na kisha 15. 1583 01:12:23,620 --> 01:12:25,870 Kumbuka, nyie mbio huu wakati kupimwa kanuni yako. 1584 01:12:25,870 --> 01:12:27,590 Sasa je, kuelewa nini alikuwa akifanya? 1585 01:12:27,590 --> 01:12:31,069 1586 01:12:31,069 --> 01:12:33,520 >> Watazamaji: Ni kuweka katika seti ya maelekezo 1587 01:12:33,520 --> 01:12:38,860 kwa [inaudible] kwa njia ya tatu na tatu kupata the-- kushinda mchezo. 1588 01:12:38,860 --> 01:12:39,560 >> ANDI PENG: Naam. 1589 01:12:39,560 --> 01:12:41,480 >> Watazamaji: Ni pembejeo wale maelekezo katika mpango. 1590 01:12:41,480 --> 01:12:42,438 >> ANDI PENG: Pretty sana. 1591 01:12:42,438 --> 01:12:47,840 Hivyo CS50 tilde. / Pset3 / 3x3, wote alikuwa akifanya ni kwamba sisi aliumba asilia 1592 01:12:47,840 --> 01:12:50,700 faili kwamba walikuwa wote vyeo tayari kwa nyie. 1593 01:12:50,700 --> 01:12:56,020 Na hivyo kwa mchezo wako kucheza, wewe just-- sisi tu ya kuweka kwamba katika mpango wako. 1594 01:12:56,020 --> 01:12:58,230 Hivyo tulikuwa na umba hii ubao na kisha sisi ni 1595 01:12:58,230 --> 01:13:02,890 kuweka bodi kwamba katika mpango wako kwamba mbio ni na kuundwa tile ya tatu 1596 01:13:02,890 --> 01:13:03,390 na tatu. 1597 01:13:03,390 --> 01:13:04,730 Hayo ni yote kwamba alikuwa akifanya. 1598 01:13:04,730 --> 01:13:07,331 >> Na hivyo kulikuwa na kweli uchawi kinachoendelea nyuma ya pazia 1599 01:13:07,331 --> 01:13:09,330 kwamba nyie hakuwa Mpango kwamba sisi iliyowekwa. 1600 01:13:09,330 --> 01:13:13,120 Lakini sasa nyie kuelewa kwa nini sisi alifanya hivyo hivyo ni yote mema. 1601 01:13:13,120 --> 01:13:15,750 Sawa. 1602 01:13:15,750 --> 01:13:22,200 >> Hivyo wakati redirection ni sana muhimu, C ina utaratibu ujumla 1603 01:13:22,200 --> 01:13:25,030 kwa kusoma na kuandika mafaili ya peke yake. 1604 01:13:25,030 --> 01:13:26,780 Hakuna kitu conceptually ngumu hapa hivyo mimi nina 1605 01:13:26,780 --> 01:13:28,330 tu kwenda kupitia kweli, kweli haraka. 1606 01:13:28,330 --> 01:13:30,621 Wote ni baadhi ya kukariri na kuhakikisha nyie 1607 01:13:30,621 --> 01:13:32,680 ni syntactically kutumia kwa usahihi. 1608 01:13:32,680 --> 01:13:35,640 Njia ambayo tunatarajia kufanya hivyo ni kujenga kumbukumbu ya faili, 1609 01:13:35,640 --> 01:13:38,473 tunatarajia kufungua faili, na kisha sisi atafanya zote kusoma na kuandika 1610 01:13:38,473 --> 01:13:39,929 na kisha kufunga faili. 1611 01:13:39,929 --> 01:13:41,720 Wakati kitu nyie wanataka kukumbuka ni 1612 01:13:41,720 --> 01:13:47,360 kwamba wakati akifanya hivyo, kwa sababu sisi ni kufunga na kufungua faili, 1613 01:13:47,360 --> 01:13:51,230 amri zote za wale ni pamoja na katika standard-- kiwango I / O 1614 01:13:51,230 --> 01:13:51,730 maktaba. 1615 01:13:51,730 --> 01:13:54,410 Ili kuhakikisha wakati wowote uko kufanya hivyo kwa kuwa umefanya included-- 1616 01:13:54,410 --> 01:13:59,020 # included-- kiwango I / O nukta h. 1617 01:13:59,020 --> 01:14:01,691 >> Hivyo halisi haraka. 1618 01:14:01,691 --> 01:14:03,940 Hatua moja, unataka kujenga kumbukumbu ya faili hilo. 1619 01:14:03,940 --> 01:14:07,670 Na sasa kwamba tumekuwa kuyatumia done, wewe guys unaweza kuniambia nini kuwa mstari wa kanuni 1620 01:14:07,670 --> 01:14:08,630 ni kufanya. 1621 01:14:08,630 --> 01:14:10,250 Sawa? 1622 01:14:10,250 --> 01:14:15,397 Yote ni kufanya ni kujenga pointer aitwaye faili la aina ya faili. 1623 01:14:15,397 --> 01:14:17,980 Kwa sababu unajua kwamba ni kwenda kwa uhakika na faili na uko 1624 01:14:17,980 --> 01:14:20,460 kwenda kufungua faili. 1625 01:14:20,460 --> 01:14:23,320 Basi uko f open-- zote haina ni kufungua faili. 1626 01:14:23,320 --> 01:14:24,560 >> Hii ni jina la faili. 1627 01:14:24,560 --> 01:14:26,060 Na kuna mambo matatu unaweza kufanya. 1628 01:14:26,060 --> 01:14:28,195 Unaweza kusoma, kuandika au append. 1629 01:14:28,195 --> 01:14:30,320 Wengi kwa ujumla, nyie Itakuwa kusoma au kuandika 1630 01:14:30,320 --> 01:14:33,195 kwa sababu wewe ni ama kwenda kuwa inputting faili au outputting moja. 1631 01:14:33,195 --> 01:14:36,500 R hivyo pretty much na w mambo mawili mambo wewe ni kwenda kuwa na kutumia zaidi. 1632 01:14:36,500 --> 01:14:41,722 >> Hivyo katika kesi hii, kila nafanya ni kujenga pointer faili inayoitwa faili. 1633 01:14:41,722 --> 01:14:47,900 Mimi kufungua na mimi nina reading-- mimi nina kufungua faili hii inaitwa file.txt 1634 01:14:47,900 --> 01:14:49,020 na mimi nina kusoma hiyo. 1635 01:14:49,020 --> 01:14:51,730 Hayo ni yote mimi nina kufanya katika hatua hii. 1636 01:14:51,730 --> 01:14:55,270 Na kisha hizi ni baadhi tu ya kazi zake katika ambayo unaweza kusoma mambo mbalimbali 1637 01:14:55,270 --> 01:14:57,750 au kuandika mambo mbalimbali au kutofika kwa maeneo mbalimbali 1638 01:14:57,750 --> 01:14:59,420 ambapo unataka kuangalia. 1639 01:14:59,420 --> 01:15:01,200 Zote hizi ni online. 1640 01:15:01,200 --> 01:15:02,960 Yote haya unaweza tu Google. 1641 01:15:02,960 --> 01:15:04,280 Hakuna haja ya kukariri yao. 1642 01:15:04,280 --> 01:15:07,160 Wao ni tu pale, ziada kwa ajili ya matumizi yako 1643 01:15:07,160 --> 01:15:09,360 kama ungependa kuwa na uwezo wa kuzitumia. 1644 01:15:09,360 --> 01:15:13,210 >> Hivyo kama nilitaka kusoma tu katika tabia moja kwa wakati mmoja, 1645 01:15:13,210 --> 01:15:15,360 Napenda kufanya faili fgetc. 1646 01:15:15,360 --> 01:15:18,850 Au kama nilitaka kusoma katika mstari wa Nakala wakati huo, napenda kufanya fgets. 1647 01:15:18,850 --> 01:15:19,840 Na kadhalika na kadhalika. 1648 01:15:19,840 --> 01:15:23,640 Yote haya tu kufanya tofauti mambo nyie unaweza kutumia. 1649 01:15:23,640 --> 01:15:25,920 >> Na kisha mwisho, baada ya mimi nina kosa kusoma au kuandika, 1650 01:15:25,920 --> 01:15:27,770 Mimi tu kwenda kwa fclose faili hilo. 1651 01:15:27,770 --> 01:15:31,760 Na kumbuka, hii ni moja ya wale, kumbuka, tafadhali 1652 01:15:31,760 --> 01:15:34,220 kufanya hivyo au mwingine faili yako si kwenda kufanya kazi. 1653 01:15:34,220 --> 01:15:36,130 Daima kufungua faili kabla kusoma au kusoma, 1654 01:15:36,130 --> 01:15:38,310 una daima kulifunga kama wewe kuufungua. 1655 01:15:38,310 --> 01:15:40,210 Same kitu na kumbukumbu, sawa? 1656 01:15:40,210 --> 01:15:42,390 Una daima kuchukua kumbukumbu na bure yake. 1657 01:15:42,390 --> 01:15:45,200 Hapa una daima kufungua faili kabla ya kujaribu kusoma 1658 01:15:45,200 --> 01:15:47,360 na wewe daima kuwa na kulifunga baada kuufungua. 1659 01:15:47,360 --> 01:15:50,650 1660 01:15:50,650 --> 01:15:52,190 >> Hivyo hii ni pia online. 1661 01:15:52,190 --> 01:15:55,590 Mimi nina kwenda changamoto nyie aina ya kuandika mpango kwamba Prints 1662 01:15:55,590 --> 01:15:57,080 hello.world na faili. 1663 01:15:57,080 --> 01:15:58,280 Ni kweli ni rahisi. 1664 01:15:58,280 --> 01:16:00,854 Ni kimsingi inahusisha tu mistari michache ya kificho 1665 01:16:00,854 --> 01:16:02,270 kwamba walikuwa tu imeandikwa hapo awali. 1666 01:16:02,270 --> 01:16:04,311 Wewe ni kwenda kuziweka pamoja na kuandika kwamba. 1667 01:16:04,311 --> 01:16:06,630 1668 01:16:06,630 --> 01:16:10,950 >> Hivyo baadhi ya mambo muhimu kukumbuka wakati nyie ni kujaribu kutumia hii. 1669 01:16:10,950 --> 01:16:14,410 Kama hii yote ni muhimu sana kwa pset yako wiki hii, 1670 01:16:14,410 --> 01:16:18,000 ni kwamba fopen inajenga faili pointer. 1671 01:16:18,000 --> 01:16:19,500 Siyo kweli ya faili kimwili. 1672 01:16:19,500 --> 01:16:22,260 Wote ni akizungumzia faili unataka kufungua. 1673 01:16:22,260 --> 01:16:26,070 Na wewe ni kimsingi, wakati wowote unatumia yoyote ya kazi nyingine 1674 01:16:26,070 --> 01:16:30,130 kama fread au fwrite au fgetc au fgets, ni 1675 01:16:30,130 --> 01:16:33,380 kwamba wewe ni kupita tu kuzunguka huu pointer kwa wote wa kazi hizo. 1676 01:16:33,380 --> 01:16:36,510 Hivyo wewe si kweli kuchukua kwamba faili na kutumia kwa ajili ya kazi yako, 1677 01:16:36,510 --> 01:16:39,540 wewe ni kuchukua tu pointer na kuweka kwa kazi hizo 1678 01:16:39,540 --> 01:16:41,620 ili uweze kutumia. 1679 01:16:41,620 --> 01:16:45,360 >> Na kama wewe kusahau kwa karibu faili yako baada ya matumizi yake, 1680 01:16:45,360 --> 01:16:47,710 Mpango wako ni kwenda kuvuja kumbukumbu. 1681 01:16:47,710 --> 01:16:50,700 Kimsingi, njia kwamba wote ni kwamba mambo mabaya yatatokea 1682 01:16:50,700 --> 01:16:52,960 na mpango wako mapenzi si kazi ipasavyo. 1683 01:16:52,960 --> 01:16:54,880 Na kadhalika pset katika mwanzo, nadhani 1684 01:16:54,880 --> 01:16:59,180 kuna short ambako explained-- Nate explained-- nini Valgrind alikuwa. 1685 01:16:59,180 --> 01:17:02,350 Wote Valgrind ni njia kwa ajili ya wewe kuhakikisha wewe si kuvuja kumbukumbu. 1686 01:17:02,350 --> 01:17:04,433 Hivyo nyie wanataka kufanya kuhakikisha kuangalia kwamba fupi 1687 01:17:04,433 --> 01:17:08,771 kwa sababu kwamba anaelezea ni vizuri nini kinatokea. 1688 01:17:08,771 --> 01:17:09,270 SAWA. 1689 01:17:09,270 --> 01:17:11,260 Basi, mimi nikaenda kupitia kwamba kweli, kweli haraka kwa sababu mimi kwa kweli 1690 01:17:11,260 --> 01:17:13,870 wanataka kupata kuzungumza juu pset kabla nyie kuondoka. 1691 01:17:13,870 --> 01:17:16,690 Je, mtu yeyote una maswali conceptually? 1692 01:17:16,690 --> 01:17:20,060 Wengi wao wakiwa yote haya ni syntax tu kwamba unaweza kutumia kusoma wala kuandika mafaili. 1693 01:17:20,060 --> 01:17:25,090 1694 01:17:25,090 --> 01:17:28,140 >> Hatimaye, favorite ya kila mtu. 1695 01:17:28,140 --> 01:17:31,760 Tunakwenda kuzungumzia pset sasa. 1696 01:17:31,760 --> 01:17:35,990 Hivyo, show ya mikono, ni wangapi kati nyie kusoma spec wiki hii? 1697 01:17:35,990 --> 01:17:36,660 Oh, hiyo ni nusu. 1698 01:17:36,660 --> 01:17:38,000 Hiyo ni nzuri. 1699 01:17:38,000 --> 01:17:41,430 Hivyo hii ni kweli kweli, kweli na furaha pset kwa maana ya 1700 01:17:41,430 --> 01:17:43,889 kwamba wewe kujisikia kama upelelezi kwa sababu wewe ni 1701 01:17:43,889 --> 01:17:46,930 kufanya haya mambo ya kweli ya baridi zote kuwa sikujua kwamba unaweza kufanya 1702 01:17:46,930 --> 01:17:49,050 lakini sasa ni kweli baridi ambayo unaweza kufanya nao. 1703 01:17:49,050 --> 01:17:52,400 Na ni kweli mengi rahisi kuliko nyie kufikiri. 1704 01:17:52,400 --> 01:17:56,640 >> Hivyo nusu ya msingi ya mpango huu ni uko 1705 01:17:56,640 --> 01:18:00,330 kwenda kushusha chanzo kanuni au usambazaji sheria iliyoandikwa na sisi. 1706 01:18:00,330 --> 01:18:03,540 Na wewe ni kwenda na folder moja aitwaye BMP na folder mwingine 1707 01:18:03,540 --> 01:18:05,550 aitwaye JPG. 1708 01:18:05,550 --> 01:18:08,370 Ndani ya BMP yako, wewe ni kwenda na mipango ya tatu. 1709 01:18:08,370 --> 01:18:10,400 Mmoja wao ni tayari imeandikwa kwa ajili yenu. 1710 01:18:10,400 --> 01:18:12,477 Hivyo copy.c ni mpango tumekuwa tayari imeandikwa 1711 01:18:12,477 --> 01:18:14,060 kwa kuwa wewe ni kwenda kupakua. 1712 01:18:14,060 --> 01:18:19,440 Wote kwamba hana ni kuchukua kama pembejeo picha na hufanya nakala yake kama pato. 1713 01:18:19,440 --> 01:18:22,150 Hiyo ni faili kwamba wote ni kufanya. 1714 01:18:22,150 --> 01:18:25,260 >> Lakini nini unataka kufanya kwa whodunit-- hivyo jinsi wengi wenu 1715 01:18:25,260 --> 01:18:30,450 guys kumbuka katika darasa la tano au maybe-- wewe ni younger-- daraja labda tatu, 1716 01:18:30,450 --> 01:18:33,945 wakati nyie alikuwa ujumbe siri na alikuwa na kuweka kipande cha karatasi juu yake 1717 01:18:33,945 --> 01:18:35,440 kusimbua ujumbe? 1718 01:18:35,440 --> 01:18:36,000 Yeah? 1719 01:18:36,000 --> 01:18:39,580 Hivyo kwamba wote sisi ni kufanya isipokuwa wakati huu kwa kompyuta. 1720 01:18:39,580 --> 01:18:41,832 Hivyo tumekuwa kupeni picha hii nzuri. 1721 01:18:41,832 --> 01:18:43,540 Haina kuangalia kama chochote lakini chini 1722 01:18:43,540 --> 01:18:49,660 ni fununu kwamba itakuja kusaidia kwa kujibu swali tunakuomba. 1723 01:18:49,660 --> 01:18:54,170 >> Kimsingi nini unataka kufanya ni pembejeo kwamba faili, 1724 01:18:54,170 --> 01:18:56,610 tweak baadhi ya mambo kote, labda kurekebisha rangi, 1725 01:18:56,610 --> 01:19:00,730 kuhama mambo, ili lo lote Ujumbe ni wanaweza kuja kwa njia ya. 1726 01:19:00,730 --> 01:19:03,740 Hivyo ndani ya huko ni siri saizi na taarifa 1727 01:19:03,740 --> 01:19:07,140 kwamba kama wewe kuandika kanuni yako kwa usahihi kinaenda Decode na kukuambia 1728 01:19:07,140 --> 01:19:08,500 nini fununu hii ni. 1729 01:19:08,500 --> 01:19:12,480 Na baadhi hivyo mwanga msaada wa jinsi d kwenda juu inakaribia hii. 1730 01:19:12,480 --> 01:19:15,180 >> Kweli unataka familiarize mwenyewe na faili I / O 1731 01:19:15,180 --> 01:19:18,760 kwa sababu sisi ni kusoma kutoka mafaili na kuandika kwa files. 1732 01:19:18,760 --> 01:19:19,260 Sawa? 1733 01:19:19,260 --> 01:19:21,430 Na hivyo wakati sisi kufanya kwamba, ambayo inahusisha 1734 01:19:21,430 --> 01:19:25,170 faili I / O. Wewe ni kwenda na familiarize mwenyewe 1735 01:19:25,170 --> 01:19:27,450 pamoja, jinsi gani unaweza kufungua files picha? 1736 01:19:27,450 --> 01:19:29,960 Jinsi gani unaweza kuandika kwa files kama picha? 1737 01:19:29,960 --> 01:19:31,640 Jinsi gani unaweza kufanya mambo yote hayo? 1738 01:19:31,640 --> 01:19:33,660 Hiyo inaenda kuwa na manufaa kwa kweli. 1739 01:19:33,660 --> 01:19:36,190 >> Pili, una hali gani kwenda kuwa na uwezo wa kubadilisha 1740 01:19:36,190 --> 01:19:38,140 rangi ya kwamba wazi juu ya picha hii? 1741 01:19:38,140 --> 01:19:43,660 Ni pengine kwenda kuhusisha kurekebisha saizi yako au maadili yako RGB 1742 01:19:43,660 --> 01:19:45,390 mahali fulani huko, kimsingi. 1743 01:19:45,390 --> 01:19:47,800 Hakuna njia ya haki kutatua hii kwa muda mrefu kama wewe 1744 01:19:47,800 --> 01:19:52,560 can-- kama muda mrefu kama unaweza aina ya kurekebisha saizi wale ili iwe 1745 01:19:52,560 --> 01:19:54,640 kuangalia kama kitu ambacho unaowajali. 1746 01:19:54,640 --> 01:19:56,207 Hayo ni yote sisi huduma ya juu pia. 1747 01:19:56,207 --> 01:19:57,540 Hivyo kuna njia nyingi za kufanya hivyo. 1748 01:19:57,540 --> 01:20:00,039 Tu kucheza karibu na hayo mpaka kupata kitu ambacho kazi. 1749 01:20:00,039 --> 01:20:02,900 Na wewe itakuwa kweli kushangaa mistari michache ya kificho jinsi 1750 01:20:02,900 --> 01:20:04,510 unahitaji kwa kweli kufanya hili. 1751 01:20:04,510 --> 01:20:08,700 Mimi kuzungumza kama tatu mstari wa kanuni jumla 1752 01:20:08,700 --> 01:20:11,310 kwamba unahitaji kuandika ili kufanya hivyo. 1753 01:20:11,310 --> 01:20:15,470 Hivyo kama wewe mwenyewe kupata kuandika 40, mistari 30 ya kificho, 1754 01:20:15,470 --> 01:20:16,960 pengine wewe kufanya hivyo vibaya. 1755 01:20:16,960 --> 01:20:19,390 Wote una kufanya ni aina ya kucheza karibu na rangi 1756 01:20:19,390 --> 01:20:22,960 na kuona ni jinsi kwamba kazi nje. 1757 01:20:22,960 --> 01:20:27,040 >> Hivyo basi sisi kichwa katika kidogo kwa bidii ya tatizo. 1758 01:20:27,040 --> 01:20:30,190 Hapa tuna resize ambapo sisi ni kuuliza wewe 1759 01:20:30,190 --> 01:20:34,210 to-- sisi ni kutoa kama mchango picha na resizing yako 1760 01:20:34,210 --> 01:20:36,710 picha hii katika kitu kubwa au kitu kidogo 1761 01:20:36,710 --> 01:20:38,500 kutegemea vipimo sisi kukupa. 1762 01:20:38,500 --> 01:20:41,260 Basi kumbuka katika hotuba Daudi haraka 1763 01:20:41,260 --> 01:20:45,780 akapiga juu jinsi habari ni wanaona na kompyuta yako 1764 01:20:45,780 --> 01:20:47,590 kwa maana ni aina ya faili. 1765 01:20:47,590 --> 01:20:50,530 Hivyo faili Neno ina maalum wahusika mbele ya kwamba 1766 01:20:50,530 --> 01:20:52,040 kuwaambia kompyuta yako ni faili Neno. 1767 01:20:52,040 --> 01:20:53,090 Same kitu na JPEG. 1768 01:20:53,090 --> 01:20:55,131 Katika kesi hiyo tunakwenda kukupa JPEG faili. 1769 01:20:55,131 --> 01:20:58,300 Tunachojua ni kwamba JPEG faili ni picha, sawa? 1770 01:20:58,300 --> 01:21:01,430 Lakini tofauti kati ya kompyuta hivyo kwa njia maalum sana. 1771 01:21:01,430 --> 01:21:04,070 Hivyo mwanzoni mwa faili yoyote JPEG, uko 1772 01:21:04,070 --> 01:21:08,210 kwenda na kile kinachoitwa bitmap Maelezo kichwa na bitmap faili header. 1773 01:21:08,210 --> 01:21:11,080 Wote wale ni watu vipande mbalimbali ya data 1774 01:21:11,080 --> 01:21:14,870 kwamba kuwaambia kompyuta yako, hey, kusikiliza up, JPEGs kuja juu 1775 01:21:14,870 --> 01:21:17,820 na hizi ni vipimo au tabia ya kuwa JPEG. 1776 01:21:17,820 --> 01:21:21,280 >> Hivyo nyie kweli unataka kujua nini habari ni kuhifadhiwa ndani ya 1777 01:21:21,280 --> 01:21:23,560 ya vichwa vya wale na kile ni kawaida miongoni mwao. 1778 01:21:23,560 --> 01:21:25,640 Kwa sababu wakati wewe ni mbio kupitia mpango wako, 1779 01:21:25,640 --> 01:21:27,370 wewe ni kwenda kutaka ruka juu ya kiwango hicho. 1780 01:21:27,370 --> 01:21:27,940 Sawa? 1781 01:21:27,940 --> 01:21:29,910 Kwa sababu huna huduma kuhusu kubadilisha kichwa, 1782 01:21:29,910 --> 01:21:31,493 unaowajali kubadilisha nini baada. 1783 01:21:31,493 --> 01:21:32,450 Sawa? 1784 01:21:32,450 --> 01:21:36,040 Ili kuhakikisha guys kujua jinsi kubwa mambo hayo ni. 1785 01:21:36,040 --> 01:21:39,065 >> Pili, kabla ya kuanza kujaribu resize picha yako, 1786 01:21:39,065 --> 01:21:41,940 pengine wewe kwenda kutaka kuokoa vipimo ya awali. 1787 01:21:41,940 --> 01:21:42,520 Sawa? 1788 01:21:42,520 --> 01:21:45,550 Kwa sababu kama mimi nawaambia picha hii ni 100 saizi na 100, saizi 1789 01:21:45,550 --> 01:21:47,630 na mimi nataka kufanya ni mara nne kubwa, 1790 01:21:47,630 --> 01:21:50,460 unajua kwamba una kuzidisha vipimo wale na watu wanne. 1791 01:21:50,460 --> 01:21:54,960 Hivyo basi unataka pato faili 400 na 400 saizi, kwa mfano. 1792 01:21:54,960 --> 01:21:58,300 Hivyo ni muhimu kweli kweli kwa nyie kwa kuokoa vipimo ya awali. 1793 01:21:58,300 --> 01:22:00,780 Na kisha baada ya hapo, baada ya wewe ni kosa resizing, 1794 01:22:00,780 --> 01:22:06,270 unaweza kuandika vichwa vya mpya na vipimo wale mpya baada ya resizing. 1795 01:22:06,270 --> 01:22:10,750 >> Na kwa njia hiyo wewe kimwili Unaweza kuunda katika saizi kubwa 1796 01:22:10,750 --> 01:22:13,380 ni kwamba unaweza kuandika mpya RGB-- kumbuka, RGB, 1797 01:22:13,380 --> 01:22:17,784 yote anasimama kwa ni nyekundu, kijani, na saizi blue-- na faili nje. 1798 01:22:17,784 --> 01:22:20,200 Na wewe ni kwenda kutaka na kiasi tofauti ya yale 1799 01:22:20,200 --> 01:22:21,200 tunatoa wito padding. 1800 01:22:21,200 --> 01:22:24,780 Padding ipo zote ni nafasi kabla na baada ya picha 1801 01:22:24,780 --> 01:22:29,265 kwamba kuwaambia your-- kimsingi kwamba kuwaambia picha yako jinsi kubwa ni 1802 01:22:29,265 --> 01:22:30,589 lazima kuwa na kuchukua up. 1803 01:22:30,589 --> 01:22:33,630 Hii ni abstract sana kwa mengi ya wewe kama wewe si kusoma spec pset, 1804 01:22:33,630 --> 01:22:35,410 lakini itakuja kuwa muhimu sana kwa wakati 1805 01:22:35,410 --> 01:22:36,460 wewe ni kweli kusoma kwa njia hiyo. 1806 01:22:36,460 --> 01:22:38,126 Wewe ni kama, loo, yeah, kwamba inafanya hisia. 1807 01:22:38,126 --> 01:22:39,310 Kwa nini mimi kufanya hili? 1808 01:22:39,310 --> 01:22:41,830 Hufanya akili. 1809 01:22:41,830 --> 01:22:46,900 >> Mwisho, hii pengine ni moja ya programu nyingi frustrating 1810 01:22:46,900 --> 01:22:51,160 milele kwa sababu tu huwezi kuwaambia kama ni kazi au la. 1811 01:22:51,160 --> 01:22:54,980 Mpango huu wote, kupona, ni kufanya ni kwamba, kama kuendesha vizuri, 1812 01:22:54,980 --> 01:22:59,290 ni lazima kuwa na uwezo wa ghafla kuokoa 50 picha kwamba 1813 01:22:59,290 --> 01:23:01,025 walikuwa wamepoteza kwenye gari kwa bidii. 1814 01:23:01,025 --> 01:23:03,900 Na hivyo tatizo na mpango huu ni kwamba unaweza si kweli mtihani 1815 01:23:03,900 --> 01:23:06,220 kwa sababu ama wewe zinalipwa nao au wewe hakufanya hivyo. 1816 01:23:06,220 --> 01:23:09,122 Na hivyo aina ya tu una kucheza karibu na hayo, 1817 01:23:09,122 --> 01:23:11,080 na kama mpango wako ni kazi vizuri, itabidi 1818 01:23:11,080 --> 01:23:12,829 ghafla kuona kwamba katika saraka yako wameweza 1819 01:23:12,829 --> 01:23:17,400 got kiasi kubwa ya picha kwamba ni sasa huko. 1820 01:23:17,400 --> 01:23:20,490 >> Hivyo ni jinsi gani mbinu mimi tatizo hili ni, tuko 1821 01:23:20,490 --> 01:23:22,860 kwenda kukupa nini aitwaye faili card.raw. 1822 01:23:22,860 --> 01:23:25,020 Kimsingi, hiyo ni tu faili kupotoshwa 1823 01:23:25,020 --> 01:23:28,870 kwa picha zote kuhifadhiwa kwamba wewe ni kwenda haja ya kupona kutokana na. 1824 01:23:28,870 --> 01:23:32,330 Hivyo pengine wewe kwenda kutaka pembejeo card.raw yako, au wazi, 1825 01:23:32,330 --> 01:23:35,510 card.raw faili yako na wewe ni atataka kuendesha 1826 01:23:35,510 --> 01:23:37,840 kuwa ni uwezo wa kuhifadhi JPEGs. 1827 01:23:37,840 --> 01:23:42,830 >> Hivyo napenda kuanza kwa kufuatilia na kuhifadhi kila JPEG mtu binafsi kama wewe kupata hiyo. 1828 01:23:42,830 --> 01:23:47,180 Wewe si kwenda kwa mtu mmoja mmoja yote Kwa ghafla tu kujenga JPEGs yote 50. 1829 01:23:47,180 --> 01:23:50,190 Wewe ni kwenda unataka kuweka wimbo wa jinsi wengi wewe ni kufungua. 1830 01:23:50,190 --> 01:23:52,015 Na kisha unataka kuhakikisha, wakati uko 1831 01:23:52,015 --> 01:23:54,640 kuandika buffer-- nyie kujua nini mimi kuzungumza juu 1832 01:23:54,640 --> 01:23:57,806 mara moja kusoma spec-- unataka kuhakikisha kwamba unatumia unsigned 1833 01:23:57,806 --> 01:23:59,370 char buffer. 1834 01:23:59,370 --> 01:24:01,790 >> Na kisha unataka kuuliza mwenyewe swali la, 1835 01:24:01,790 --> 01:24:05,797 jinsi wengi ka ni katika CF-- ni katika kadi faili? 1836 01:24:05,797 --> 01:24:08,380 Hiyo ni wangapi wewe ni kwenda unataka kusoma katika buffer yako. 1837 01:24:08,380 --> 01:24:11,130 Wewe ni kwenda unataka kuhakikisha align mbili kwa sababu basi 1838 01:24:11,130 --> 01:24:12,850 Huwezi kuwa random kumbukumbu kuvuja nje. 1839 01:24:12,850 --> 01:24:15,370 Kujua hasa ni wangapi ka unahitaji na jinsi wengi 1840 01:24:15,370 --> 01:24:18,270 ka kwamba unataka yao kuwa nayo. 1841 01:24:18,270 --> 01:24:21,510 >> Na kisha hatimaye, unataka kutumia kazi kuitwa sprint-- 1842 01:24:21,510 --> 01:24:26,160 s magazeti f-- kuzalisha faili desturi majina kwa kila JPEG mpya kwamba kupata. 1843 01:24:26,160 --> 01:24:29,129 Hivyo kama wewe kujenga na kupata JPEGs katika kadi yako, 1844 01:24:29,129 --> 01:24:31,170 wewe ni kwenda kutaka kuhifadhi yao na jina yao. 1845 01:24:31,170 --> 01:24:31,700 Sawa? 1846 01:24:31,700 --> 01:24:33,700 Na hivyo wewe ni kwenda wanataka kutumia kazi ambayo 1847 01:24:33,700 --> 01:24:36,770 kujenga majina wanaweza kuhifadhi wote wa JPEGs yako. 1848 01:24:36,770 --> 01:24:41,062 >> Na mwisho, usisahau karibu kila JPEG baada ya wewe ni kosa. 1849 01:24:41,062 --> 01:24:42,770 Kwa sababu gani uko kwenda kufanya ni uko 1850 01:24:42,770 --> 01:24:44,728 kwenda pengine aina fulani ya kitanzi kwamba 1851 01:24:44,728 --> 01:24:46,470 iterates kwa njia zote za JPEGs yako. 1852 01:24:46,470 --> 01:24:50,460 Wewe ni kwenda kuandika JPEG na kubadili jina hilo kama wewe kupata hiyo. 1853 01:24:50,460 --> 01:24:52,870 Lakini baada ya wewe ni kosa kwa kila JPEG moja, 1854 01:24:52,870 --> 01:24:56,630 unahitaji kuifunga hivyo unaweza kuanza zaidi na hoja juu ya picha ya pili. 1855 01:24:56,630 --> 01:24:58,880 Na hivyo kitu ambacho ni kweli na furaha kwamba sisi kama kwa kufanya, 1856 01:24:58,880 --> 01:25:03,430 kwa sababu hili ni tatizo weird kama kuweka lakini pia tatizo weirdly kuridhisha 1857 01:25:03,430 --> 01:25:08,380 kuweka, ni kwamba wote wa picha sisi na kwa wewe, kama wewe kupona vizuri, 1858 01:25:08,380 --> 01:25:11,910 picha zote ni picha za wafanyakazi wako ajabu kufundisha, wote 1859 01:25:11,910 --> 01:25:14,240 ya Harvard, katika here-- na hapa katika Yale. 1860 01:25:14,240 --> 01:25:17,260 Na kama kutokea kwa kuokoa picha zote hizi 1861 01:25:17,260 --> 01:25:20,020 na kubaini wafanyakazi wanachama katika kadi hizo, 1862 01:25:20,020 --> 01:25:23,040 na kuchukua selfies na sisi kama unakuta sisi karibu chuo, 1863 01:25:23,040 --> 01:25:28,270 kwa kila picha wewe kuwasilisha kwetu, tutaweza kukupa gigabyte ya Dropbox nafasi. 1864 01:25:28,270 --> 01:25:30,060 >> Basi hebu kufanya hesabu hapa. 1865 01:25:30,060 --> 01:25:33,010 Kama kuna picha 50 na Wanachama 50 wafanyakazi wa kufundisha, 1866 01:25:33,010 --> 01:25:37,160 kama kutokea kwa kupata yote 50 ya sisi, hiyo ni 50 gigabytes ya Dropbox, 1867 01:25:37,160 --> 01:25:39,000 kimsingi, tutaweza kuwa na kutoa nyie. 1868 01:25:39,000 --> 01:25:42,380 Hivyo baadhi motisha ya ziada aliongeza kama wewe guys alifanya si tu 1869 01:25:42,380 --> 01:25:44,480 huduma ya juu ya kurejesha waliopotea picha. 1870 01:25:44,480 --> 01:25:46,867 Kuna pia baadhi motisha aliongeza. 1871 01:25:46,867 --> 01:25:47,825 Ni furaha tatizo seti. 1872 01:25:47,825 --> 01:25:48,390 Ni kweli ni. 1873 01:25:48,390 --> 01:25:51,980 Ni aina ya frustrating lakini basi inakuwa kweli na furaha wakati wewe kutambua, 1874 01:25:51,980 --> 01:25:54,230 wow, ni kazi na sasa mimi na wote wa picha hizi 1875 01:25:54,230 --> 01:25:55,604 kwamba nimekuwa tu kuundwa kwa mwenyewe. 1876 01:25:55,604 --> 01:25:58,800 1877 01:25:58,800 --> 01:26:00,075 >> Maswali yoyote juu ya pset? 1878 01:26:00,075 --> 01:26:02,408 Kwa mtu yeyote ambaye tayari kuanza, kama una maswali, 1879 01:26:02,408 --> 01:26:06,510 Nitakuwa hapa kwa dakika kadhaa baada ya sehemu kama unataka kuzungumza na mimi. 1880 01:26:06,510 --> 01:26:07,320 Vizuri, nyie. 1881 01:26:07,320 --> 01:26:10,520 Samahani, mimi taarifa kutupwa katika guys wewe. 1882 01:26:10,520 --> 01:26:13,670 Kuyatumia ni kweli, kweli changamoto na frustrating. 1883 01:26:13,670 --> 01:26:16,187 >> Na mimi nina furaha kweli kwamba nyie kukaa na mimi. 1884 01:26:16,187 --> 01:26:18,020 Tutaweza majadiliano zaidi katika kina kuhusu wiki ijayo 1885 01:26:18,020 --> 01:26:21,330 kama sisi kuanza kufanya meza hash na kazi zaidi ambazo zinahusisha yao. 1886 01:26:21,330 --> 01:26:23,821 1887 01:26:23,821 --> 01:26:24,320 Naam. 1888 01:26:24,320 --> 01:26:26,278 Hivyo kama mtu ana yoyote maswali, mimi itakuwa kote. 1889 01:26:26,278 --> 01:26:29,330 Shukrani kwa kuja na kuchukua zaidi pipi kwa sababu kuna pipi zaidi. 1890 01:26:29,330 --> 01:26:32,220 1891 01:26:32,220 --> 01:26:33,770 Baridi. 1892 01:26:33,770 --> 01:26:35,765