1 00:00:00,000 --> 00:00:11,046 2 00:00:11,046 --> 00:00:12,170 ALLISON BUCHHOLTZ-AU: Ahoj, všetci. 3 00:00:12,170 --> 00:00:13,560 Vitajte na stránkach oddielu. 4 00:00:13,560 --> 00:00:17,320 Dnes má len bude všetko kvíz preskúmanie pre kvíz v stredu. 5 00:00:17,320 --> 00:00:20,060 Dúfam, že všetci si pamätá, že majú kvíz na stredu. 6 00:00:20,060 --> 00:00:22,560 A ak nie, dobre, Teraz ste pripomenul. 7 00:00:22,560 --> 00:00:26,486 Takže streda uistite sa, že sa objavíš pre triedu alebo iné ubytovanie ako 8 00:00:26,486 --> 00:00:26,985 nutné. 9 00:00:26,985 --> 00:00:27,845 10 00:00:27,845 --> 00:00:29,220 Vy sa bude úžasné. 11 00:00:29,220 --> 00:00:30,440 Bude to skvelé. 12 00:00:30,440 --> 00:00:34,910 A ja urobím všetko pre to, pomôcť pripraviť vás dnes pre kvíz 13 00:00:34,910 --> 00:00:35,470 teraz. 14 00:00:35,470 --> 00:00:39,960 A tiež v prípade, že neviete, je samozrejme široký preskúmanie zasadnutí 15 00:00:39,960 --> 00:00:45,840 dnes v 7 hodín Severozápad laboratória izbu B103. 16 00:00:45,840 --> 00:00:49,950 Môžete ma znovu vidieť na prídavok ako Povediem časť tohto preskúmania zasadnutie 17 00:00:49,950 --> 00:00:50,510 tiež. 18 00:00:50,510 --> 00:00:53,218 Takže ak nemôžete sa nabažiť ma? Teraz si môžete prísť znova dnes večer. 19 00:00:53,218 --> 00:00:54,130 20 00:00:54,130 --> 00:00:56,060 >> Dobre, tak prvé, čo prvý. 21 00:00:56,060 --> 00:00:59,630 Len niekoľko tipov kvíz než sme skutočne ponoriť do hodnotenia. 22 00:00:59,630 --> 00:01:04,160 Tak ako u každej skúšky, prax určite vám pomohol von. 23 00:01:04,160 --> 00:01:09,260 K dispozícii sú skúšky z minulosti šesť alebo sedem rokov tam, 24 00:01:09,260 --> 00:01:12,480 tak to je veľa praxe Materiál pre vás mať. 25 00:01:12,480 --> 00:01:15,340 A v skutočnosti, dnes je naozaj len bude ísť cez akúkoľvek tému 26 00:01:15,340 --> 00:01:18,900 že vy máte otázky týkajúce sa aj ako prácu cez problémy praxe 27 00:01:18,900 --> 00:01:20,360 z testu nulové. 28 00:01:20,360 --> 00:01:22,690 Takže budem zvracať kvíz nulu od minulého roka na tú, 29 00:01:22,690 --> 00:01:26,410 a my môžeme pracovať cez problémov že vy ste chceli. 30 00:01:26,410 --> 00:01:27,370 >> Takže cvičiť. 31 00:01:27,370 --> 00:01:29,310 Budeš začať robiť, že dnes. 32 00:01:29,310 --> 00:01:30,230 Kód na papieri. 33 00:01:30,230 --> 00:01:32,970 Tak jo, keď každý mohol skutočne dostať von 34 00:01:32,970 --> 00:01:35,810 papier, že to bude skvelé, pretože nie ste 35 00:01:35,810 --> 00:01:41,470 bude mať počítač na skúška a napíše kód ručne 36 00:01:41,470 --> 00:01:44,190 je často oveľa ťažšie než by sa dalo očakávať. 37 00:01:44,190 --> 00:01:46,680 Ste zvyknutí len vidieť to a napísaním, 38 00:01:46,680 --> 00:01:49,630 a máte kompilátor na pomôže vám, keď máte chyby, 39 00:01:49,630 --> 00:01:52,190 ale nechápem, že na skúšku. 40 00:01:52,190 --> 00:01:55,140 Takže je to skutočne veľmi dôležité, byť schopný vypísať kód, 41 00:01:55,140 --> 00:01:58,360 a že svalová pamäť robí to rúk vám naozaj pomôže. 42 00:01:58,360 --> 00:01:59,720 43 00:01:59,720 --> 00:02:01,690 >> Takže sa dostávame trochu blízko. 44 00:02:01,690 --> 00:02:02,340 Je pondelok. 45 00:02:02,340 --> 00:02:03,930 Vaša skúška je v strede. 46 00:02:03,930 --> 00:02:06,030 Ale ak budete mať čas, rozhodne vziať jednu 47 00:02:06,030 --> 00:02:10,199 zo skúšky z minulého roka, alebo pred rokom v časovom obmedzení 48 00:02:10,199 --> 00:02:11,660 na hodinu a pol. 49 00:02:11,660 --> 00:02:13,730 Len knock out hodinu a polovica času, 50 00:02:13,730 --> 00:02:17,480 a posaďte sa dole, a len práca cez problémy 51 00:02:17,480 --> 00:02:19,962 ako by ste boli skutočne brať, pretože jeden 52 00:02:19,962 --> 00:02:23,295 z najväčších vecí, ktoré sme počuli o Kvízy je, že sú veľmi dlhé. 53 00:02:23,295 --> 00:02:24,900 54 00:02:24,900 --> 00:02:26,660 Je to veľa materiálu. 55 00:02:26,660 --> 00:02:30,850 Existuje mnoho otázok, a väčšina ľudí nemusí skončiť. 56 00:02:30,850 --> 00:02:34,660 Viem, že som úplne nedokončil moja kvízy, keď som vzal triedu. 57 00:02:34,660 --> 00:02:37,180 >> V takom prípade, ako menej pohodlný úsek, 58 00:02:37,180 --> 00:02:40,570 pochopiť, že je tento kurz určený obstarávať pre ľudí na všetkých úrovniach. 59 00:02:40,570 --> 00:02:43,640 Celý dôvod, prečo máme rozdeliť menej pohodlné, niekde medzi, 60 00:02:43,640 --> 00:02:47,660 a pohodlnejšie je druh robiť to viac fér. 61 00:02:47,660 --> 00:02:51,699 A ak ste menej pohodlné, je to Nie je nutné sebe, aby si všetko. 62 00:02:51,699 --> 00:02:53,990 Ako keď ste boli stále všetko, by ste pravdepodobne 63 00:02:53,990 --> 00:02:55,448 byť v pohodlnejšie časti. 64 00:02:55,448 --> 00:03:00,160 Je teda jasné, že nemôžete poraziť sami hore príliš ťažké, ak nemôžete dokončiť skúšku. 65 00:03:00,160 --> 00:03:01,920 Vezmi si to odo mňa, ja to neurobil. 66 00:03:01,920 --> 00:03:03,070 Som stále koncentrátor. 67 00:03:03,070 --> 00:03:04,630 Som stále pomáha naučiť kurzu. 68 00:03:04,630 --> 00:03:06,170 Budeš v poriadku. 69 00:03:06,170 --> 00:03:06,670 Dobrá. 70 00:03:06,670 --> 00:03:08,740 A konečne, trochu sa prespať. 71 00:03:08,740 --> 00:03:11,020 Samozrejme s akoukoľvek skúškou vždy hovorím. 72 00:03:11,020 --> 00:03:13,610 Bifľovania noc pred a nedostávajú žiadne spánok 73 00:03:13,610 --> 00:03:16,390 robí ne-- možná, ak to pracuje pre vás, choďte do toho. 74 00:03:16,390 --> 00:03:18,790 Ale pre drvivú väčšinu ľudia, ako sa vyspať, 75 00:03:18,790 --> 00:03:22,390 nechať váš mozog oddýchnuť a zotaviť sa pred nadobudnutím na skúšku 76 00:03:22,390 --> 00:03:23,480 vám naozaj pomôže. 77 00:03:23,480 --> 00:03:26,120 Tiež tam bude takmer iste cukroví na skúšku, 78 00:03:26,120 --> 00:03:28,019 takže máte na čo tešiť. 79 00:03:28,019 --> 00:03:29,310 Vy sa chystáte urobiť skvelé. 80 00:03:29,310 --> 00:03:30,226 Bude to v poriadku. 81 00:03:30,226 --> 00:03:31,570 82 00:03:31,570 --> 00:03:36,190 A teraz v nasledujúcej hodine a pol I sa bude snažiť a prípravka vám, ako najlepšie viem. 83 00:03:36,190 --> 00:03:41,260 >> Takže mám zábery z v podstate všetky sekcie dodnes. 84 00:03:41,260 --> 00:03:45,874 Nebudem prejsť všetky z nich, pretože to nie je 85 00:03:45,874 --> 00:03:49,040 uskutočniteľné za hodinu a pol, ako ako prácu cez problémy praxe. 86 00:03:49,040 --> 00:03:51,410 Takže namiesto toho mám zoznam tém. 87 00:03:51,410 --> 00:03:55,160 To sú všetky tie veci, že vám môžeme Quiz. 88 00:03:55,160 --> 00:03:56,950 89 00:03:56,950 --> 00:03:58,770 Ak existuje niečo, čo že naozaj vyskočí 90 00:03:58,770 --> 00:04:02,140 ktoré chcete ísť, aby ste si Chcete, aby som šiel cez koncepčne, 91 00:04:02,140 --> 00:04:04,320 Môžem to skúsiť a dať tam prehľad. 92 00:04:04,320 --> 00:04:07,690 Alebo ak chcete preskočiť priamo do robí problémy prax dohromady, 93 00:04:07,690 --> 00:04:08,420 to môžeme urobiť. 94 00:04:08,420 --> 00:04:09,330 Je to na vás chlapci. 95 00:04:09,330 --> 00:04:10,770 Nie je, že mnohí z vás. 96 00:04:10,770 --> 00:04:13,180 Takže to, čo vy chcete robiť. 97 00:04:13,180 --> 00:04:15,667 Chcem byť najviac užitočné k vami. 98 00:04:15,667 --> 00:04:16,827 99 00:04:16,827 --> 00:04:17,910 Takže ja vás nechám len pozerať. 100 00:04:17,910 --> 00:04:27,880 101 00:04:27,880 --> 00:04:30,500 >> Divákov: Jedna vec je graf, ktorý držíme 102 00:04:30,500 --> 00:04:33,290 hovorí o zásobníku a haldy. 103 00:04:33,290 --> 00:04:34,600 104 00:04:34,600 --> 00:04:37,434 Len celá myšlienka to a čo to znamená. 105 00:04:37,434 --> 00:04:38,350 ALLISON BUCHHOLTZ-AU: Jo, OK. 106 00:04:38,350 --> 00:04:40,290 107 00:04:40,290 --> 00:04:43,216 To je úplne v koniec, tak nech mi prechádzať. 108 00:04:43,216 --> 00:04:45,490 >> Divákov: Nemáme na to teraz, ale čo. 109 00:04:45,490 --> 00:04:47,070 110 00:04:47,070 --> 00:04:49,770 >> ALLISON BUCHHOLTZ-AU: Bola tam anything-- tento. 111 00:04:49,770 --> 00:04:51,570 112 00:04:51,570 --> 00:04:53,555 Je to druh fuzzy pre ľudí? 113 00:04:53,555 --> 00:04:54,390 114 00:04:54,390 --> 00:04:55,640 Publikum: Jo, s tým absolútne súhlasím. 115 00:04:55,640 --> 00:04:57,718 A môžeme sa pretečeniu vyrovnávacej pamäti? 116 00:04:57,718 --> 00:04:58,926 ALLISON BUCHHOLTZ-AU: Pretečenie vyrovnávacej pamäti? 117 00:04:58,926 --> 00:04:59,820 OK. 118 00:04:59,820 --> 00:05:03,460 Takže buffer overflow je celkom ľahko len hovoriť. 119 00:05:03,460 --> 00:05:08,217 Je to v podstate vyrovnávacích si myslíte o niektoré polia pamäti, že máte pravdu? 120 00:05:08,217 --> 00:05:10,050 My zvyčajne hovorí o pretečenie bufferu, ak 121 00:05:10,050 --> 00:05:15,160 nie ste kontrolu, koľko užívateľ zavádza, že jo? 122 00:05:15,160 --> 00:05:18,540 A predstava, že s buffer overflow je 123 00:05:18,540 --> 00:05:21,535 sú uvedení v ďaleko príliš veľa dát pre priestor 124 00:05:21,535 --> 00:05:23,780 že ste pridelený na nich, nie? 125 00:05:23,780 --> 00:05:28,310 >> Takže ak ste povedal, dať mi nejaké správy, že sme 126 00:05:28,310 --> 00:05:31,860 za predpokladu, že sa chystáte dať nám rozumné dĺžky správy. 127 00:05:31,860 --> 00:05:33,910 Možno, že pár riadkov, čo ja viem. 128 00:05:33,910 --> 00:05:35,150 Tak sme sa nekontrolujú. 129 00:05:35,150 --> 00:05:38,160 Namiesto toho nás kŕmia v Celá kniha je to správa, 130 00:05:38,160 --> 00:05:42,450 a preteká množstvo priestor, ktorý sme pridelené na to. 131 00:05:42,450 --> 00:05:48,140 A čo sa stane, je, že to môže prepísať miesta, ktorá to nemala. 132 00:05:48,140 --> 00:05:52,890 >> Takže viem, profesor Malan povedal niečo, čo buffer overflow útoky. 133 00:05:52,890 --> 00:05:59,050 Tak to je miesto, kde bude vstup od užívateľa niektoré obrovské množstvo dát v nádeji, 134 00:05:59,050 --> 00:06:02,840 že prepíše minulosť koniec vašej pamäti 135 00:06:02,840 --> 00:06:06,479 a nahrádza something-- Zaujímalo by ma, Aj máme tie zábery tu. 136 00:06:06,479 --> 00:06:08,270 Nemyslím si, že máme tieto zábery tu. 137 00:06:08,270 --> 00:06:09,960 138 00:06:09,960 --> 00:06:14,460 Ale v podstate sa prepisuje určitá časť pamäte 139 00:06:14,460 --> 00:06:17,780 ktorý mu umožňuje prístup k na časti vášho počítača 140 00:06:17,780 --> 00:06:19,530 že by ste nemal majú zvyčajne prístup. 141 00:06:19,530 --> 00:06:20,750 142 00:06:20,750 --> 00:06:23,155 >> Najväčšia vec, ktorú sa buffer overflow je len 143 00:06:23,155 --> 00:06:26,420 pochopiť, že to sa stane, keď nie ste 144 00:06:26,420 --> 00:06:29,210 kontroly, ako veľmi sú vaše užívateľ uvedení v. 145 00:06:29,210 --> 00:06:32,770 Keď nie ste typ ochrany proti tomu. 146 00:06:32,770 --> 00:06:36,820 A na jeho najjednoduchšie vec, je to len vaše užívateľské 147 00:06:36,820 --> 00:06:39,130 zadanie obrovské množstvo dát v snahe 148 00:06:39,130 --> 00:06:45,090 prepísať nejaké zabezpečenie časť pamäte. 149 00:06:45,090 --> 00:06:46,310 To je všetko, čo je. 150 00:06:46,310 --> 00:06:49,810 >> Tak toto tu, zásobník a heap. 151 00:06:49,810 --> 00:06:53,090 V podstate to všetko je len reprezentácia pamäte 152 00:06:53,090 --> 00:06:54,449 a tam, kde veci sú uložené. 153 00:06:54,449 --> 00:06:56,240 To je naozaj druh všetko, čo potrebujete vedieť. 154 00:06:56,240 --> 00:06:58,520 Najväčšie veci, ktoré čo potrebujete vedieť je 155 00:06:58,520 --> 00:07:01,910 that-- dovoľte mi, aby som zistil, či je tu better-- tu. 156 00:07:01,910 --> 00:07:05,380 Tak toto je zásobník tu. 157 00:07:05,380 --> 00:07:08,410 >> Takže stack má čo do činenia s všetky svoje funkcie 158 00:07:08,410 --> 00:07:10,140 že voláte v danom okamihu. 159 00:07:10,140 --> 00:07:15,060 A čo je dôležité si uvedomiť, ísť preč z minulého týždňa s malloc 160 00:07:15,060 --> 00:07:21,080 je, že v skutočnosti nemajú treba nad ním kontrolu. 161 00:07:21,080 --> 00:07:24,780 To všetko záleží na tom, kedy určitá funkcie vykonávania. 162 00:07:24,780 --> 00:07:28,170 A keď sa vykonávania, ale to, čo sa hovorí zásobníka rámy 163 00:07:28,170 --> 00:07:29,290 že ísť sem. 164 00:07:29,290 --> 00:07:32,520 >> Takže to všetko trochu deje bez skutočného vstupu od vás. 165 00:07:32,520 --> 00:07:33,630 166 00:07:33,630 --> 00:07:35,510 Môžete napísať program, a nechajte ho bežať, 167 00:07:35,510 --> 00:07:38,470 a zásobník druh sa starostlivosť o seba samého, ako to potrebuje. 168 00:07:38,470 --> 00:07:42,940 Takže ak v main voláte kocky, ktoré budú odovzdané tu. 169 00:07:42,940 --> 00:07:44,110 Ak bude vytvoriť snímku. 170 00:07:44,110 --> 00:07:48,330 Ale nič explicitne robiť pre vytvorenie tohto zásobníka rám iný ako 171 00:07:48,330 --> 00:07:51,430 napíšte funkciu začať s, OK? 172 00:07:51,430 --> 00:07:56,500 >> Čo je tak trochu pod vašou ovládanie je halda s malloc. 173 00:07:56,500 --> 00:08:01,950 Takže zakaždým, keď malloc niečo, užívate pamäte z haldy. 174 00:08:01,950 --> 00:08:05,110 A to je pamäť, ktorá vám majú, pre nedostatok lepšieho slová, 175 00:08:05,110 --> 00:08:10,300 explicitné kontrola, pretože pamätať s malloc 176 00:08:10,300 --> 00:08:12,530 je to v podstate neexistuje kým nepoviete inak. 177 00:08:12,530 --> 00:08:14,890 Pre tých z vás, ktorí sledoval časť minulý týždeň, 178 00:08:14,890 --> 00:08:17,670 je to tam, kým ju povedať, ísť preč. 179 00:08:17,670 --> 00:08:20,850 Bude to tam, ak inak povedané, nie. 180 00:08:20,850 --> 00:08:24,750 Takže haldy je proste niečo si môžete myslieť, ako pamäť 181 00:08:24,750 --> 00:08:26,150 že máte kontrolu nad. 182 00:08:26,150 --> 00:08:29,010 A to sú len dve rôzne veľké veci. 183 00:08:29,010 --> 00:08:31,320 184 00:08:31,320 --> 00:08:38,330 >> Iné, než to, nemali by ste mať na starosti príliš veľa o zásobníka a haldy 185 00:08:38,330 --> 00:08:42,159 otázky alebo typicky len Ak máte lokálnu parametre 186 00:08:42,159 --> 00:08:45,385 alebo funkcie by bolo na zásobníku alebo haldy. 187 00:08:45,385 --> 00:08:47,260 Zrejme v tomto prípade že by bolo stack. 188 00:08:47,260 --> 00:08:49,630 Ak mallocing niečo, kde je to prichádza? 189 00:08:49,630 --> 00:08:50,129 Haldy. 190 00:08:50,129 --> 00:08:51,147 191 00:08:51,147 --> 00:08:54,230 Ak sa pozriete na prax kvízy, tie sú všeobecne typ otázok 192 00:08:54,230 --> 00:08:55,460 že majú. 193 00:08:55,460 --> 00:08:57,340 >> Nemusíte mať strach, moc o tom. 194 00:08:57,340 --> 00:09:00,980 Sa dostanete do väčšej výslovne o zásobníka a haldy 195 00:09:00,980 --> 00:09:03,460 neskôr alebo v iných triedach SK. 196 00:09:03,460 --> 00:09:06,220 Tak presne s takou všeobecnú predstavu o tom, čo to je 197 00:09:06,220 --> 00:09:09,100 bude dobré, čo sa mi tak nejako prešiel. 198 00:09:09,100 --> 00:09:10,650 199 00:09:10,650 --> 00:09:12,090 Akékoľvek ďalšie témy? 200 00:09:12,090 --> 00:09:12,590 Áno? 201 00:09:12,590 --> 00:09:14,923 >> Divákov: Môžeš ísť cez na ukazovatele opäť veľmi rýchlo? 202 00:09:14,923 --> 00:09:15,870 ALLISON BUCHHOLTZ-AU: Ukazovatele? 203 00:09:15,870 --> 00:09:18,470 Chcete koncepčné Prehľad ukazovateľov 204 00:09:18,470 --> 00:09:19,994 alebo si precvičiť s ukazovateľmi? 205 00:09:19,994 --> 00:09:21,410 Divákov: Niečo ako syntax. 206 00:09:21,410 --> 00:09:22,360 ALLISON BUCHHOLTZ-AU: syntax? 207 00:09:22,360 --> 00:09:22,860 Jo. 208 00:09:22,860 --> 00:09:32,090 209 00:09:32,090 --> 00:09:33,090 OK, sme sa tam dostať. 210 00:09:33,090 --> 00:09:38,300 211 00:09:38,300 --> 00:09:42,040 Jo, tak to je len trochu niečo keď máte rekurzívne funkciu, 212 00:09:42,040 --> 00:09:45,954 zakaždým, že rekurzívne funkcie je volal, to len pridáva ďalší stack frame. 213 00:09:45,954 --> 00:09:47,870 Docela veľa príklad o tom, ako nemáte naozaj 214 00:09:47,870 --> 00:09:50,330 mať kontrolu nad rámy na stacku. 215 00:09:50,330 --> 00:09:54,010 216 00:09:54,010 --> 00:09:54,585 >> OK, ukazovatele. 217 00:09:54,585 --> 00:09:57,120 218 00:09:57,120 --> 00:09:59,235 Dobre, takže vytvára ukazovatele. 219 00:09:59,235 --> 00:10:00,300 220 00:10:00,300 --> 00:10:02,420 Pamätajte si, že je to len typ hviezdu. 221 00:10:02,420 --> 00:10:07,140 Takže bez ohľadu na typ dát, ktoré budete sa ukazuje. 222 00:10:07,140 --> 00:10:08,720 223 00:10:08,720 --> 00:10:11,440 Takže by to mohol byť ukazovateľ na int. 224 00:10:11,440 --> 00:10:13,140 Jednalo by sa o ukazovateľ na char. 225 00:10:13,140 --> 00:10:14,740 Jednalo by sa o ukazovateľ na float. 226 00:10:14,740 --> 00:10:17,980 Takže je to v podstate čokoľvek Chcete, aby sa ukázal na, 227 00:10:17,980 --> 00:10:22,300 hviezda je, ako deklarovať ukazovateľ, OK? 228 00:10:22,300 --> 00:10:26,200 >> Ale potom samozrejme je trochu zradné, keď máte ukazovateľ 229 00:10:26,200 --> 00:10:27,370 alebo máte hrať čokoľvek. 230 00:10:27,370 --> 00:10:31,260 Tak veľký rozdiel je, keď ste declaring-- 231 00:10:31,260 --> 00:10:45,590 takže máme some-- tak to trvá nejakú int hviezdu. 232 00:10:45,590 --> 00:10:49,650 Takže to je nejaký ukazovateľ žiada x int, nie? 233 00:10:49,650 --> 00:10:54,600 Takže pamätajte, čo to robí Je to volanie X systém. 234 00:10:54,600 --> 00:10:56,970 A to bude nejakú adresu, nie? 235 00:10:56,970 --> 00:11:00,515 Takže povedzme, že to je naša adresa. 236 00:11:00,515 --> 00:11:01,590 237 00:11:01,590 --> 00:11:03,570 Ukazovatele držať adresy. 238 00:11:03,570 --> 00:11:08,660 Takže to, čo to hovorí, je to, že sa na to umiestnenie, sme skladovanie int. 239 00:11:08,660 --> 00:11:10,770 240 00:11:10,770 --> 00:11:15,770 >> Tak ďalší spôsob, ako sa môžeme myslieť je to, že to je nejaký int. 241 00:11:15,770 --> 00:11:17,010 242 00:11:17,010 --> 00:11:20,350 Sme naozaj priradené do Zatiaľ nič, ale je to len int. 243 00:11:20,350 --> 00:11:31,540 Takže môžeme urobiť, je keď to hviezda x rovná 5, to bude 5, OK? 244 00:11:31,540 --> 00:11:38,350 To hovorí, že ísť na čokoľvek x je ukázal na, tak choďte na túto adresu 245 00:11:38,350 --> 00:11:40,210 a aby bolo rovná 5. 246 00:11:40,210 --> 00:11:44,390 Tak sme priradiť 5 na túto adresu, je to tak? 247 00:11:44,390 --> 00:11:52,540 >> A potom ak to budete robiť, to nám dáva adresu. 248 00:11:52,540 --> 00:11:54,730 Jedná sa o adresu prevádzkovateľa. 249 00:11:54,730 --> 00:11:57,700 Takže to, čo je adresa x? 250 00:11:57,700 --> 00:11:58,809 Nevieme. 251 00:11:58,809 --> 00:12:00,225 Ešte sme priradili mu adresu. 252 00:12:00,225 --> 00:12:03,000 253 00:12:03,000 --> 00:12:09,105 Dalo by sa povedať, že je to some-- teraz sme dali to adresu, takže adresa je 4. 254 00:12:09,105 --> 00:12:10,690 255 00:12:10,690 --> 00:12:16,980 A skutočne, ak sme sa prejsť niečím takto, druh, čo sme urobili. 256 00:12:16,980 --> 00:12:25,800 Takže prácu cez here-- nájdem to pomôže, ak budete čerpať z ukazovateľov. 257 00:12:25,800 --> 00:12:28,270 Ak ste na skúšku, som Vrelo odporúčam kreslenie boxov. 258 00:12:28,270 --> 00:12:29,490 259 00:12:29,490 --> 00:12:33,310 >> Takže to prvé, int x sa rovná 5. 260 00:12:33,310 --> 00:12:37,370 To len znamená, že máme niektoré miesto v pamäti, ktoré je 5, nie? 261 00:12:37,370 --> 00:12:38,540 262 00:12:38,540 --> 00:12:44,760 A naša tabuľka tu nám hovorí, že je to na adrese 0x04. 263 00:12:44,760 --> 00:12:48,770 264 00:12:48,770 --> 00:12:50,280 A potom sme sa vytvoriť nejaký ukazovateľ. 265 00:12:50,280 --> 00:12:51,820 266 00:12:51,820 --> 00:12:55,310 Takže poďme rozčleniť tento jeden po druhom. 267 00:12:55,310 --> 00:12:59,820 Takže to vytvára niektoré box na int, nie? 268 00:12:59,820 --> 00:13:01,970 Bude to držať niektoré adresy z neho. 269 00:13:01,970 --> 00:13:03,470 Takže to je nejaký ukazovateľ. 270 00:13:03,470 --> 00:13:04,940 271 00:13:04,940 --> 00:13:06,510 A to krieda je naozaj malý. 272 00:13:06,510 --> 00:13:07,472 273 00:13:07,472 --> 00:13:08,680 Takže máme nejaký ukazovateľ tu. 274 00:13:08,680 --> 00:13:10,060 275 00:13:10,060 --> 00:13:13,530 A naša tabuľka nám hovorí, že je adresa je 0x08. 276 00:13:13,530 --> 00:13:15,190 277 00:13:15,190 --> 00:13:16,200 V pohode. 278 00:13:16,200 --> 00:13:23,240 A my sme priradenie to na adresu x. 279 00:13:23,240 --> 00:13:26,330 >> Pamätajte si, že ukazovatele držať adresy, OK? 280 00:13:26,330 --> 00:13:32,050 Takže ak chceme držať x, máme použiť operátor adresy, ktoré 281 00:13:32,050 --> 00:13:36,520 je ampersand, získať adresu x, ktorá je v tomto prípade, 0x04. 282 00:13:36,520 --> 00:13:39,130 283 00:13:39,130 --> 00:13:44,430 A potom, ak máme niektoré int kópie, to jednoducho 284 00:13:44,430 --> 00:13:48,060 vytvára nejaké iné okno, ktoré držiteľom int s názvom kópie. 285 00:13:48,060 --> 00:13:49,410 286 00:13:49,410 --> 00:13:55,330 A ak by sme priradiť ju tohle-- tak toto je odkazovanie to. 287 00:13:55,330 --> 00:14:00,090 Tak to hovorí, že ísť na čokoľvek Adresa ukazovateľ drží. 288 00:14:00,090 --> 00:14:05,330 Pointer má túto adresu, tak by sme ísť sem, 289 00:14:05,330 --> 00:14:07,130 a hovoríme, OK, čo je v ňom? 290 00:14:07,130 --> 00:14:08,610 Je to 5. 291 00:14:08,610 --> 00:14:09,815 Takže kópia bude 5. 292 00:14:09,815 --> 00:14:11,800 293 00:14:11,800 --> 00:14:12,540 Zmysel? 294 00:14:12,540 --> 00:14:15,540 295 00:14:15,540 --> 00:14:25,020 >> Čo keď som sa snažil priradiť to len ukazovateľ. 296 00:14:25,020 --> 00:14:26,476 297 00:14:26,476 --> 00:14:27,850 Čo ukazovateľ skutočne rovná? 298 00:14:27,850 --> 00:14:31,126 299 00:14:31,126 --> 00:14:34,315 Bolo by to, čo ukazovateľ obsahuje, nie? 300 00:14:34,315 --> 00:14:36,400 301 00:14:36,400 --> 00:14:37,580 A potom to, čo keby som to urobil? 302 00:14:37,580 --> 00:14:38,922 303 00:14:38,922 --> 00:14:39,880 Čo by kópia bude teraz? 304 00:14:39,880 --> 00:14:41,365 305 00:14:41,365 --> 00:14:42,275 >> Divákov: 0x08. 306 00:14:42,275 --> 00:14:44,150 ALLISON BUCHHOLTZ-AU: Jo, Adresa našej ukazovatele. 307 00:14:44,150 --> 00:14:46,832 308 00:14:46,832 --> 00:14:48,790 Každá časť, že Je potrebné znovu vysvetliť? 309 00:14:48,790 --> 00:14:50,170 310 00:14:50,170 --> 00:14:50,670 V pohode. 311 00:14:50,670 --> 00:14:53,350 312 00:14:53,350 --> 00:14:57,740 Tam je určite veľmi zábava problém na kvíz jednom 313 00:14:57,740 --> 00:15:00,100 že môžeme nad tým vám dáva viac praxe. 314 00:15:00,100 --> 00:15:00,937 315 00:15:00,937 --> 00:15:03,270 Chalani z minulého týždňa môže povie vám, že to nebolo tak zlé. 316 00:15:03,270 --> 00:15:06,000 Dostali sme cez celú graf, a všetci si skvele. 317 00:15:06,000 --> 00:15:10,830 >> OK, tak to je prehľad syntaxe ukazovateľov. 318 00:15:10,830 --> 00:15:15,070 Najväčšia vec je pochopiť, ako k ich vytvoreniu, robiť odkazovanie, 319 00:15:15,070 --> 00:15:18,190 a adresa, OK? 320 00:15:18,190 --> 00:15:18,690 V pohode. 321 00:15:18,690 --> 00:15:20,775 Akékoľvek ďalšie témy pred ponoríme do praxe. 322 00:15:20,775 --> 00:15:24,280 323 00:15:24,280 --> 00:15:28,011 Tiež ak ideme cez problémy praxe 324 00:15:28,011 --> 00:15:30,760 a je tu niečo, čo chcete osviežovač na, môžeme to urobiť taky. 325 00:15:30,760 --> 00:15:31,300 Máte niečo? 326 00:15:31,300 --> 00:15:32,758 >> Divákov: Štruktúry a spojové zoznamy. 327 00:15:32,758 --> 00:15:35,130 ALLISON BUCHHOLTZ-AU: Štruktúry a spojové zoznamy, OK. 328 00:15:35,130 --> 00:15:37,100 Tak structs. 329 00:15:37,100 --> 00:15:38,990 Vlastne sme sa deje cez tento večer taky. 330 00:15:38,990 --> 00:15:40,130 331 00:15:40,130 --> 00:15:41,890 OK, tak structs. 332 00:15:41,890 --> 00:15:47,490 Štruktúry sú v podstate len spôsob, ako držať 333 00:15:47,490 --> 00:15:50,430 viac hodnôt rôznych typov. 334 00:15:50,430 --> 00:15:55,150 Tak s radom sme zúžená do jedného dátového typu. 335 00:15:55,150 --> 00:16:00,965 Naše pole musí byť len čísla jeden, alebo len so znakmi, alebo len byť plaváky. 336 00:16:00,965 --> 00:16:02,240 337 00:16:02,240 --> 00:16:05,470 >> Ale možno budete musieť obsahovať viac než len to. 338 00:16:05,470 --> 00:16:09,130 Možno budete musieť hold-- ak hovoríte o študentovi, 339 00:16:09,130 --> 00:16:13,660 budete mať svoj dom, svoje Číslo, ich vek, kde žijú, 340 00:16:13,660 --> 00:16:14,240 že jo? 341 00:16:14,240 --> 00:16:16,460 A všetky z nich sú rôzne druhy typov. 342 00:16:16,460 --> 00:16:18,680 Takže nemôžete uložiť tie, ktoré všetky v matici. 343 00:16:18,680 --> 00:16:21,750 >> Takže to, čo môžete urobiť, je si môže vytvoriť struct, ktorý 344 00:16:21,750 --> 00:16:26,240 si môžete myslieť, ako vaše osobný dátový typ. 345 00:16:26,240 --> 00:16:29,130 Takže namiesto toho len mať celých čísel a nie len s plaváky, 346 00:16:29,130 --> 00:16:33,210 môžete mať typ študenta, ktorý má všetkých týchto oblastiach v ňom. 347 00:16:33,210 --> 00:16:39,740 Tak, ako sme inicializácia naše structs je-- vlastne 348 00:16:39,740 --> 00:16:44,921 pretože moje písanie je hrozné, sme sa chystáte prejsť na písanie. 349 00:16:44,921 --> 00:16:45,420 Woo. 350 00:16:45,420 --> 00:16:48,800 351 00:16:48,800 --> 00:16:53,150 >> OK, takže ak chceme vytvoriť struct-- Ja som jednoducho ísť na to tu. 352 00:16:53,150 --> 00:16:57,730 Neprihliada sa v hlavnom čokoľvek ktoré budeme používať neskôr. 353 00:16:57,730 --> 00:17:02,330 Tak, ako chcete robiť je to s typedef struct. 354 00:17:02,330 --> 00:17:10,530 355 00:17:10,530 --> 00:17:13,349 A nech to len nazvať tento študenta pretože to je to, čo som používal. 356 00:17:13,349 --> 00:17:17,801 OK, takže typedef znamená, že ste definovanie nového typu, OK? 357 00:17:17,801 --> 00:17:20,140 358 00:17:20,140 --> 00:17:24,355 Tam sú nuansy v keď robíte len struct versus typedef struct. 359 00:17:24,355 --> 00:17:26,313 Pre všetky zámery a účely, vy ste len 360 00:17:26,313 --> 00:17:29,490 bude predpokladať, že sú približne rovnaký a len 361 00:17:29,490 --> 00:17:30,820 použitie typedef struct teraz. 362 00:17:30,820 --> 00:17:35,180 To bude stáť oveľa viac viditeľné vo vašom ďalšie P nastaviť, čo tieto rozdiely, 363 00:17:35,180 --> 00:17:37,960 ale nemyslím si, že je potrebné obávať, že práve teraz. 364 00:17:37,960 --> 00:17:40,360 Bol by som oveľa radšej, keby si vedieť, ako vytvoriť, 365 00:17:40,360 --> 00:17:41,880 prístupu k nim, a priradiť [? hodnotu. ?] 366 00:17:41,880 --> 00:17:47,820 >> Nový typ struct, a nazývame ju študentka. 367 00:17:47,820 --> 00:17:52,640 Takže potom, čo sme hotoví vytváraní tohto, pre všetky účely, 368 00:17:52,640 --> 00:17:55,070 budete mať typ nazvaný študenta. 369 00:17:55,070 --> 00:17:59,610 A môžete si ju rovnako ako typ ako int alebo float, alebo char. 370 00:17:59,610 --> 00:18:01,820 Je to len iný typ, OK? 371 00:18:01,820 --> 00:18:04,530 >> Takže v tomto jednom, čo máme? 372 00:18:04,530 --> 00:18:05,420 Máme možná meno. 373 00:18:05,420 --> 00:18:08,275 Takže možno chceme názov reťazca. 374 00:18:08,275 --> 00:18:09,610 375 00:18:09,610 --> 00:18:14,065 A máme možno int, ktorý je ID. 376 00:18:14,065 --> 00:18:16,360 377 00:18:16,360 --> 00:18:19,085 A máme ďalšie v to je telefónne číslo. 378 00:18:19,085 --> 00:18:21,990 379 00:18:21,990 --> 00:18:26,200 A my sme some-- pozrime. 380 00:18:26,200 --> 00:18:27,200 Čo iného by sme mohli mať? 381 00:18:27,200 --> 00:18:29,385 Budeme mať nejaký reťazec v jeho dome. 382 00:18:29,385 --> 00:18:32,340 383 00:18:32,340 --> 00:18:34,510 Všetky veci, ktoré študent má. 384 00:18:34,510 --> 00:18:36,960 >> Takže to vytvára struct teraz. 385 00:18:36,960 --> 00:18:41,450 Tak ako môžeme vytvoriť študenta? 386 00:18:41,450 --> 00:18:46,960 Ak máme nejaké premenné, ktorá je hovoriť o Walker tu 387 00:18:46,960 --> 00:18:51,245 tak sme have-- sme len bude volať túto chodítko. 388 00:18:51,245 --> 00:18:52,520 Potrebuje typ. 389 00:18:52,520 --> 00:18:53,770 Aký je váš typ? 390 00:18:53,770 --> 00:18:54,520 Divákov: Študent. 391 00:18:54,520 --> 00:18:55,395 ALLISON BUCHHOLTZ-AU: Študent. 392 00:18:55,395 --> 00:18:57,130 393 00:18:57,130 --> 00:19:04,800 Takže to len vytvorí objekt, ktorý možno myslieť, že má všetky tieto veci. 394 00:19:04,800 --> 00:19:07,880 Práve ste vytvorili študenta chodítko. 395 00:19:07,880 --> 00:19:10,910 Takže teraz musíme byť schopní priradiť všetky tieto, že jo? 396 00:19:10,910 --> 00:19:13,500 Takže má niekto spomenúť, ako máme prístup do struct? 397 00:19:13,500 --> 00:19:14,762 398 00:19:14,762 --> 00:19:15,470 Divákov: Obdobie. 399 00:19:15,470 --> 00:19:16,730 ALLISON BUCHHOLTZ-AU: Obdobie Presne tak. 400 00:19:16,730 --> 00:19:23,795 Takže ak by sme chceli priradiť mu meno, čo by sme mohli urobiť, že. 401 00:19:23,795 --> 00:19:24,820 402 00:19:24,820 --> 00:19:28,680 Zrejme to by be-- túto časť by tu 403 00:19:28,680 --> 00:19:31,831 byť v hlavnej, tak vlastne dovoľte mi, aby som to urobiť. 404 00:19:31,831 --> 00:19:40,980 405 00:19:40,980 --> 00:19:44,250 Vyhlásiť to nad hlavnou, aby že ju môžeme použiť v rámci hlavnej. 406 00:19:44,250 --> 00:19:52,250 407 00:19:52,250 --> 00:20:00,980 Takže teraz chcem, aby to robiť ID, a my sa proste niektoré tam, 408 00:20:00,980 --> 00:20:02,970 a potom budeme priradiť dom. 409 00:20:02,970 --> 00:20:07,990 410 00:20:07,990 --> 00:20:09,000 BAM. 411 00:20:09,000 --> 00:20:09,650 V pohode. 412 00:20:09,650 --> 00:20:19,870 >> Takže teraz by sme niekedy potrebovali prístup niečo neskôr on-- možná we-- 413 00:20:19,870 --> 00:20:25,920 keby sme niekedy potrebovali prístup nič, poďme len to int kopírovania ID. 414 00:20:25,920 --> 00:20:27,400 415 00:20:27,400 --> 00:20:30,530 A ja chcem kopírovať Walker ID do toho. 416 00:20:30,530 --> 00:20:31,370 Ako by som mohol urobiť? 417 00:20:31,370 --> 00:20:33,670 418 00:20:33,670 --> 00:20:37,790 Čo potrebujete pre prístup do chodítka struct na [? ísť na to?] [? E?]. 419 00:20:37,790 --> 00:20:41,280 A rovnakým spôsobom, že my pridelený to tu, ako 420 00:20:41,280 --> 00:20:45,573 môžeme pristupovať, keď chceme, aby dať túto hodnotu na niečo iné? 421 00:20:45,573 --> 00:20:46,406 Divákov: Walker.id. 422 00:20:46,406 --> 00:20:47,252 423 00:20:47,252 --> 00:20:48,376 ALLISON BUCHHOLTZ-AU: Jo, presne tak. 424 00:20:48,376 --> 00:20:51,884 425 00:20:51,884 --> 00:20:54,175 Tak to je skoro všetko čo potrebujete vedieť o structs. 426 00:20:54,175 --> 00:20:55,750 427 00:20:55,750 --> 00:20:58,560 Stačí myslieť na je ako ďalšie premenné. 428 00:20:58,560 --> 00:21:01,710 V podstate si vytvorte vlastný typ premennej, OK? 429 00:21:01,710 --> 00:21:04,440 430 00:21:04,440 --> 00:21:07,970 Môžete ju použiť k deklarovať premenné v žiadnom prípade. 431 00:21:07,970 --> 00:21:10,290 Tu chodítko je ešte premenná. 432 00:21:10,290 --> 00:21:14,230 Je to len má typ študenta, teraz miesto z typu int, alebo typu string, 433 00:21:14,230 --> 00:21:15,070 alebo typu char. 434 00:21:15,070 --> 00:21:17,014 435 00:21:17,014 --> 00:21:19,930 Keby tam bol jednoduchý spôsob, ako hovoriť o structs, je to doslova len 436 00:21:19,930 --> 00:21:24,430 vytvoriť svoj vlastný dátový typ , Ktorý umožňuje skupine 437 00:21:24,430 --> 00:21:28,320 Všetky tieto rôzne druh dát dohromady. 438 00:21:28,320 --> 00:21:29,754 439 00:21:29,754 --> 00:21:31,595 Má to zmysel? 440 00:21:31,595 --> 00:21:33,920 441 00:21:33,920 --> 00:21:34,420 OK. 442 00:21:34,420 --> 00:21:35,920 443 00:21:35,920 --> 00:21:37,530 To a prístup s bodkami. 444 00:21:37,530 --> 00:21:38,790 445 00:21:38,790 --> 00:21:39,960 Skoro všetko, čo potrebujete. 446 00:21:39,960 --> 00:21:41,150 447 00:21:41,150 --> 00:21:46,600 >> OK, kde sa má PowerPoint ísť? 448 00:21:46,600 --> 00:21:47,580 Tu to je. 449 00:21:47,580 --> 00:21:49,050 450 00:21:49,050 --> 00:21:50,520 No to je divný. 451 00:21:50,520 --> 00:21:53,950 452 00:21:53,950 --> 00:21:55,420 Aha. 453 00:21:55,420 --> 00:21:56,766 OK, v pohode. 454 00:21:56,766 --> 00:21:58,876 455 00:21:58,876 --> 00:22:01,000 Všetky ostatné veci, alebo my chcú zamieriť do praxe? 456 00:22:01,000 --> 00:22:02,210 457 00:22:02,210 --> 00:22:02,710 Praxi? 458 00:22:02,710 --> 00:22:03,501 OK. 459 00:22:03,501 --> 00:22:04,000 Úžasné. 460 00:22:04,000 --> 00:22:05,642 461 00:22:05,642 --> 00:22:06,600 Chystám sa ukončiť to. 462 00:22:06,600 --> 00:22:08,490 Ak kedykoľvek počas praxe otázky, 463 00:22:08,490 --> 00:22:12,630 Som rád, že prerobiť a prejsť veci. 464 00:22:12,630 --> 00:22:15,240 Takže mám kvíz nulu tu. 465 00:22:15,240 --> 00:22:18,370 Ak vy chcete vytiahnuť je na vašom počítači, 466 00:22:18,370 --> 00:22:20,670 rovnako ako mať päť minút prechádzať. 467 00:22:20,670 --> 00:22:23,540 Možno si vybrať nejaký vrchol otázky, chcete ísť znova. 468 00:22:23,540 --> 00:22:27,390 Ak vy sa nemôžete rozhodnúť, budeme len pomaly začať pracovať skrze ne, 469 00:22:27,390 --> 00:22:31,590 ale som si istý, že sa bude nejaký otázky, ktoré vám sú obzvlášť 470 00:22:31,590 --> 00:22:34,890 túži hovoriť a majú me pracovať až s vami všetkými. 471 00:22:34,890 --> 00:22:36,580 Takže jednoducho ísť dopredu a päť minút. 472 00:22:36,580 --> 00:22:37,780 Prechádzajte. 473 00:22:37,780 --> 00:22:40,620 A to je kvíz od roku 2013. 474 00:22:40,620 --> 00:22:41,841 >> Divákov: Zero? 475 00:22:41,841 --> 00:22:43,630 >> ALLISON BUCHHOLTZ-AU: Jo, kvíz nula. 476 00:22:43,630 --> 00:22:45,647 Nerobíme kvíz jednu veci. 477 00:22:45,647 --> 00:22:46,980 Budeme robiť, že za pár týždňov. 478 00:22:46,980 --> 00:22:52,941 479 00:22:52,941 --> 00:22:55,190 Aj pre tých z vás, ktorí prišiel neskoro, máme cukroví, 480 00:22:55,190 --> 00:23:00,580 tak to vy chcete cukrovinky? 481 00:23:00,580 --> 00:23:01,530 >> Divákov: Iste. 482 00:23:01,530 --> 00:23:03,321 >> ALLISON BUCHHOLTZ-AU: Som len prejsť okolo. 483 00:23:03,321 --> 00:23:09,774 484 00:23:09,774 --> 00:23:11,940 Hele, či vy sa sem dostal skoro, môžete získať ďalšie sladkosti. 485 00:23:11,940 --> 00:23:12,500 To je v poriadku. 486 00:23:12,500 --> 00:23:13,550 Ben, chceš pečivo? 487 00:23:13,550 --> 00:23:19,350 488 00:23:19,350 --> 00:23:20,556 Chcete niektoré z nich? 489 00:23:20,556 --> 00:23:24,122 490 00:23:24,122 --> 00:23:26,080 K dispozícii je tiež Snickers ak niekto chce Snickers. 491 00:23:26,080 --> 00:23:27,640 492 00:23:27,640 --> 00:23:29,360 Budem nechať tu a tu. 493 00:23:29,360 --> 00:23:30,946 Neváhajte. 494 00:23:30,946 --> 00:23:32,485 Chceš už? 495 00:23:32,485 --> 00:23:33,235 Divákov: Všetky nastavenia. 496 00:23:33,235 --> 00:23:33,540 Děkuju. 497 00:23:33,540 --> 00:23:36,248 >> ALLISON BUCHHOLTZ-AU: A ja som mal pekný malá kôpka tam na začiatku. 498 00:23:36,248 --> 00:23:49,080 499 00:23:49,080 --> 00:23:51,980 Vy si vziať kvíz a Mám mať kvíz triedenie party. 500 00:23:51,980 --> 00:23:54,496 501 00:23:54,496 --> 00:23:55,360 Je to chaos. 502 00:23:55,360 --> 00:23:56,460 503 00:23:56,460 --> 00:23:57,385 900 skúšky. 504 00:23:57,385 --> 00:23:58,650 Bude to tak oveľa zábavnejšie. 505 00:23:58,650 --> 00:24:00,441 506 00:24:00,441 --> 00:24:02,036 Bude skvelé. 507 00:24:02,036 --> 00:24:04,430 Som si istý, že je to jedno z najväčších zamestnancov lepenie 508 00:24:04,430 --> 00:24:05,380 nocí v roku. 509 00:24:05,380 --> 00:24:15,660 510 00:24:15,660 --> 00:24:19,175 Má niekto urobil kvíz nula od v minulom roku, ale zo zvedavosti? 511 00:24:19,175 --> 00:24:20,335 >> Divákov: Časti. 512 00:24:20,335 --> 00:24:21,543 >> ALLISON BUCHHOLTZ-AU: Časti nej OK. 513 00:24:21,543 --> 00:24:24,272 514 00:24:24,272 --> 00:24:26,482 Už máte otázky týkajúce sa niektoré z nich? 515 00:24:26,482 --> 00:24:28,190 Divákov: Už som šiel do pracovného času. 516 00:24:28,190 --> 00:24:28,898 Ďakujem hoci. 517 00:24:28,898 --> 00:24:30,187 518 00:24:30,187 --> 00:24:32,520 ALLISON BUCHHOLTZ-AU: No, dúfajme, že je to stále trochu užitočné. 519 00:24:32,520 --> 00:24:42,990 520 00:24:42,990 --> 00:24:45,634 Kedy ste sa ísť do úradné hodiny, že? 521 00:24:45,634 --> 00:24:47,300 Divákov: Môj TF mal im dnes popoludní. 522 00:24:47,300 --> 00:24:47,966 ALLISON BUCHHOLTZ-AU: Oh. 523 00:24:47,966 --> 00:24:48,977 Kto je váš TF? 524 00:24:48,977 --> 00:24:49,854 525 00:24:49,854 --> 00:24:51,020 Divákov: Fred [? Wujaya?]. 526 00:24:51,020 --> 00:24:52,622 527 00:24:52,622 --> 00:24:54,080 ALLISON BUCHHOLTZ-AU: Existuje mnoho TFS. 528 00:24:54,080 --> 00:24:55,350 529 00:24:55,350 --> 00:24:55,850 Tak veľa. 530 00:24:55,850 --> 00:25:16,530 531 00:25:16,530 --> 00:25:17,340 Dobrá. 532 00:25:17,340 --> 00:25:45,310 533 00:25:45,310 --> 00:25:48,950 Každý, kto má akýkoľvek začať, že môžem zapisovať, že chceme pracovať? 534 00:25:48,950 --> 00:25:53,770 535 00:25:53,770 --> 00:25:55,685 Predpokladám, že ukazovatele jeden s tabuľkou. 536 00:25:55,685 --> 00:25:56,890 537 00:25:56,890 --> 00:25:57,610 Ísť na to. 538 00:25:57,610 --> 00:25:59,180 >> Divákov: Možno, že prepínač jeden. 539 00:25:59,180 --> 00:26:02,362 540 00:26:02,362 --> 00:26:03,445 ALLISON BUCHHOLTZ-AU: Takže číslo 12? 541 00:26:03,445 --> 00:26:06,750 542 00:26:06,750 --> 00:26:10,770 Predpokladám, že číslo 8 a 9 sú pravdepodobne Ones ľudia chcú prejsť. 543 00:26:10,770 --> 00:26:12,116 >> Divákov: A 10 a 11. 544 00:26:12,116 --> 00:26:21,860 545 00:26:21,860 --> 00:26:25,806 >> ZAMYLA Chan: A vy viete dostanete jednu stránku poznámok, nie? 546 00:26:25,806 --> 00:26:28,450 >> Publikum: Jo, tak to, čo je Smieme dať na to. 547 00:26:28,450 --> 00:26:30,658 >> ALLISON BUCHHOLTZ-AU: Ste dovolené dať, čo chcete. 548 00:26:30,658 --> 00:26:31,887 549 00:26:31,887 --> 00:26:32,720 A to môže byť zadaný. 550 00:26:32,720 --> 00:26:35,270 Pokiaľ si dobre spomínam, naše boli zadané. 551 00:26:35,270 --> 00:26:37,022 >> Divákov: Môžete to urobiť späť a obe strany? 552 00:26:37,022 --> 00:26:38,780 >> ALLISON BUCHHOLTZ-AU: Jo, obe strany. 553 00:26:38,780 --> 00:26:42,940 Takže niečo ako haldy a [? back end?] haldy Vaša beh 554 00:26:42,940 --> 00:26:43,780 časy. 555 00:26:43,780 --> 00:26:44,840 Užitočné. 556 00:26:44,840 --> 00:26:47,990 Možno, že len málo vecí, o rád, ktoré vám pripomenie. 557 00:26:47,990 --> 00:26:49,205 Syntax pre veci. 558 00:26:49,205 --> 00:26:51,600 559 00:26:51,600 --> 00:26:54,830 S rovnako ako kostra Program môže byť super užitočné. 560 00:26:54,830 --> 00:27:00,719 Viem, že som vždy zabudol, čo presne Mal som písať pre int main, 561 00:27:00,719 --> 00:27:03,010 pretože som vždy len kópia vložiť z mojej predchádzajúcej P sady 562 00:27:03,010 --> 00:27:06,232 alebo už je tam, tak Nikdy som to napísal, 563 00:27:06,232 --> 00:27:07,690 tak s, ktoré môžu byť super užitočné. 564 00:27:07,690 --> 00:27:09,280 565 00:27:09,280 --> 00:27:14,320 >> OK, tak prečo nie my začať s číslom 8, potom? 566 00:27:14,320 --> 00:27:21,730 567 00:27:21,730 --> 00:27:22,810 Dobrá. 568 00:27:22,810 --> 00:27:23,310 OK. 569 00:27:23,310 --> 00:27:25,060 570 00:27:25,060 --> 00:27:26,310 Takže zvážte nižšie programu. 571 00:27:26,310 --> 00:27:28,110 572 00:27:28,110 --> 00:27:30,700 Tak samozrejme, keď vidíme, ukazovatele, je to asi 573 00:27:30,700 --> 00:27:32,200 dobrý nápad začať kresliť, nie? 574 00:27:32,200 --> 00:27:34,552 575 00:27:34,552 --> 00:27:36,760 Chcem vedieť, kde sú všetky moje veľké kúsky kriedy išiel. 576 00:27:36,760 --> 00:27:37,870 To je trochu nepríjemné. 577 00:27:37,870 --> 00:27:40,210 578 00:27:40,210 --> 00:27:45,820 >> Takže máme tu nejaká funkcia odkladacia že to bude trvať dva ukazovatele. 579 00:27:45,820 --> 00:27:48,630 Takže v tomto prípade sa by mal byť v skutočnosti prepínanie 580 00:27:48,630 --> 00:27:53,400 veci, oproti našej pôvodnej swapu funkcia, ktorá sa len v kópiách. 581 00:27:53,400 --> 00:27:57,030 Tak čo to bude robiť je-- začnime s hlavnou, 582 00:27:57,030 --> 00:27:58,450 pretože to je miesto, kde 1 je. 583 00:27:58,450 --> 00:28:04,296 >> Takže máme nejaké int x 1. 584 00:28:04,296 --> 00:28:11,860 Máme nejaké y, ktorý je rovný 2. 585 00:28:11,860 --> 00:28:14,390 A potom máme nejaké odkladacie že to bude trvať ty. 586 00:28:14,390 --> 00:28:17,320 A pozrime sa, čo to tu máme. 587 00:28:17,320 --> 00:28:19,542 588 00:28:19,542 --> 00:28:22,709 A v našej table-- ach jo. 589 00:28:22,709 --> 00:28:23,792 Ako to mám urobiť? 590 00:28:23,792 --> 00:28:25,900 Budem čerpať môj stôl sem. 591 00:28:25,900 --> 00:28:49,490 592 00:28:49,490 --> 00:28:50,552 Ťažko robiť to tam. 593 00:28:50,552 --> 00:28:51,260 Ťažko robiť to. 594 00:28:51,260 --> 00:28:52,470 595 00:28:52,470 --> 00:28:57,960 1, 2, 3, 4, 5, 6, 7. 596 00:28:57,960 --> 00:29:11,220 597 00:29:11,220 --> 00:29:15,706 A nám dávajú, že 1 je 1, a 1 2. 598 00:29:15,706 --> 00:29:16,206 V pohode. 599 00:29:16,206 --> 00:29:17,674 600 00:29:17,674 --> 00:29:18,174 Úžasné. 601 00:29:18,174 --> 00:29:19,650 602 00:29:19,650 --> 00:29:20,464 Tak 3. 603 00:29:20,464 --> 00:29:21,380 A je tu [? 1.?] 604 00:29:21,380 --> 00:29:24,500 605 00:29:24,500 --> 00:29:25,250 >> Dobrá. 606 00:29:25,250 --> 00:29:35,202 A potom adresa x je 0x123. 607 00:29:35,202 --> 00:29:41,260 A y je Ox127. 608 00:29:41,260 --> 00:29:41,760 V pohode. 609 00:29:41,760 --> 00:29:42,940 610 00:29:42,940 --> 00:29:43,595 Dobrá. 611 00:29:43,595 --> 00:29:46,710 Chcem, vy na tom pracovať len za like-- na ňom budú pracovať 612 00:29:46,710 --> 00:29:48,385 s ľuďmi okolo vás. 613 00:29:48,385 --> 00:29:50,340 Škoda, že som povedal, že keď som nastavenie. 614 00:29:50,340 --> 00:29:50,840 Práca na ňom. 615 00:29:50,840 --> 00:29:53,270 Skúste a pracovať na ňom sami za pár minút, 616 00:29:53,270 --> 00:29:54,930 a potom budem na tom pracovať s vami. 617 00:29:54,930 --> 00:29:57,034 618 00:29:57,034 --> 00:30:00,117 Pretože jediný spôsob, ako naozaj bude učiť, je tým, že robí to sami. 619 00:30:00,117 --> 00:31:29,580 620 00:31:29,580 --> 00:31:30,110 Žiadne starosti. 621 00:31:30,110 --> 00:31:30,610 Veľa šťastia. 622 00:31:30,610 --> 00:32:17,390 623 00:32:17,390 --> 00:32:20,030 >> OK, prečo nie my pomaly začať pracovať cez to. 624 00:32:20,030 --> 00:32:23,695 Takže každý dostane po prvom riadku, x je 1. 625 00:32:23,695 --> 00:32:26,860 Po druhej linke, x a y sú 1 a 2, že jo? 626 00:32:26,860 --> 00:32:27,400 V pohode. 627 00:32:27,400 --> 00:32:30,310 Tak linka tri je miesto, kde sa veci získať zaujímavé samozrejme. 628 00:32:30,310 --> 00:32:34,970 >> Takže to, čo sme tu urobili je teraz sme vymenili. 629 00:32:34,970 --> 00:32:42,360 My hovoríme, že x a y majú tie body, alebo majú adresu x a y, 630 00:32:42,360 --> 00:32:43,390 že jo? 631 00:32:43,390 --> 00:32:48,451 Takže v tomto prípade tri, aká je hodnota? 632 00:32:48,451 --> 00:32:52,379 633 00:32:52,379 --> 00:32:59,806 bol prijatý v, bola daná Hodnota adresy x, nie? 634 00:32:59,806 --> 00:33:02,542 635 00:33:02,542 --> 00:33:03,454 >> Publikum: 1? 636 00:33:03,454 --> 00:33:05,200 >> ALLISON BUCHHOLTZ-AU: Tak sme do neho pridať x? 637 00:33:05,200 --> 00:33:06,420 Aká je adresa x je? 638 00:33:06,420 --> 00:33:07,212 >> Divákov: 0x123. 639 00:33:07,212 --> 00:33:08,087 >> ALLISON BUCHHOLTZ-AU: Presne tak. 640 00:33:08,087 --> 00:33:13,960 641 00:33:13,960 --> 00:33:16,790 Ale čo je vlastne ukazuje to? 642 00:33:16,790 --> 00:33:20,790 Ak by sme mali dereferencia, akú hodnotu by nám dá. 643 00:33:20,790 --> 00:33:21,290 Publikum: 1. 644 00:33:21,290 --> 00:33:23,164 ALLISON BUCHHOLTZ-AU: Bolo by nám jedno, pretože to, čo 645 00:33:23,164 --> 00:33:27,810 hovoríme, je ísť na to adresa, povedzte nám, čo je hodnota. 646 00:33:27,810 --> 00:33:28,890 Takže to, čo by sa b? 647 00:33:28,890 --> 00:33:30,500 648 00:33:30,500 --> 00:33:31,445 >> Divákov: 0x127. 649 00:33:31,445 --> 00:33:32,320 ALLISON BUCHHOLTZ-AU: Presne tak. 650 00:33:32,320 --> 00:33:33,610 651 00:33:33,610 --> 00:33:35,410 Takže je to adresa y. 652 00:33:35,410 --> 00:33:36,580 653 00:33:36,580 --> 00:33:39,811 A čo [potom? dereferencia? ?] 654 00:33:39,811 --> 00:33:40,310 Divákov: 2. 655 00:33:40,310 --> 00:33:42,172 656 00:33:42,172 --> 00:33:43,380 ALLISON BUCHHOLTZ-AU: OK, tak teraz štyri. 657 00:33:43,380 --> 00:33:44,390 658 00:33:44,390 --> 00:33:51,300 Povedali sme, že je equal-- aj teraz máme vykonáva int temp je rovná hviezdy. 659 00:33:51,300 --> 00:33:53,580 Takže to, čo sa zmení? 660 00:33:53,580 --> 00:33:55,680 Je tu len jedna vec, že tu mení. 661 00:33:55,680 --> 00:33:56,180 Čo je to? 662 00:33:56,180 --> 00:33:57,892 663 00:33:57,892 --> 00:33:58,624 >> Divákov: Temp. 664 00:33:58,624 --> 00:33:59,540 ALLISON BUCHHOLTZ-AU: temp. 665 00:33:59,540 --> 00:34:06,120 Takže môžeme prepísať všetky tieto. 666 00:34:06,120 --> 00:34:07,790 667 00:34:07,790 --> 00:34:10,690 Dobrá stratégia pre tieto Je len prísť na to, 668 00:34:10,690 --> 00:34:14,050 aké zmeny, pretože najčastejšie je tu len jedna vec, ktorá je 669 00:34:14,050 --> 00:34:16,300 sa zmení v danom mieste, OK? 670 00:34:16,300 --> 00:34:17,960 671 00:34:17,960 --> 00:34:20,100 Preto sme priradený tepl. 672 00:34:20,100 --> 00:34:26,929 >> Teraz naše ďalší bod, päť, sme robili hviezda rovná hrať b. 673 00:34:26,929 --> 00:34:28,880 Takže to, čo sa mení teraz? 674 00:34:28,880 --> 00:34:29,760 >> Divákov: Hviezda. 675 00:34:29,760 --> 00:34:32,081 >> ALLISON BUCHHOLTZ-AU: Hviezda, tak všetko ostatné zostáva rovnaké. 676 00:34:32,081 --> 00:34:38,610 677 00:34:38,610 --> 00:34:39,900 A čo hrať rovné? 678 00:34:39,900 --> 00:34:40,659 >> Divákov: 2. 679 00:34:40,659 --> 00:34:41,283 ALLISON BUCHHOLTZ-AU: 2. 680 00:34:41,283 --> 00:34:42,460 681 00:34:42,460 --> 00:34:42,960 Lovely. 682 00:34:42,960 --> 00:34:45,360 683 00:34:45,360 --> 00:34:46,239 Úžasné. 684 00:34:46,239 --> 00:34:51,190 OK, a potom už sme jazyku b sa rovná teplote. 685 00:34:51,190 --> 00:34:53,907 Takže jediné, čo zmena je hviezda b. 686 00:34:53,907 --> 00:34:55,344 Všetko ostatné zostáva rovnaké. 687 00:34:55,344 --> 00:35:01,100 688 00:35:01,100 --> 00:35:02,610 A čo je hviezda b rovná sa pozrieť teraz? 689 00:35:02,610 --> 00:35:04,840 690 00:35:04,840 --> 00:35:06,190 A vy ste dokončili tabuľku. 691 00:35:06,190 --> 00:35:11,620 692 00:35:11,620 --> 00:35:18,460 Pretože teraz na konci, ak povieme x a y, vieme, že v tomto point-- 693 00:35:18,460 --> 00:35:23,060 vieme, že keď sme zmenil hviezda 2, 694 00:35:23,060 --> 00:35:29,620 čo to urobil, je to povedal v poriadku, na riešiť 0x123 tu zmeniť. 695 00:35:29,620 --> 00:35:31,780 696 00:35:31,780 --> 00:35:33,290 Teraz to bolo 2. 697 00:35:33,290 --> 00:35:34,460 698 00:35:34,460 --> 00:35:40,600 A potom sa v tomto bode, my sme povedali OK, prejdite na hviezdy b. 699 00:35:40,600 --> 00:35:45,305 Tak choďte na adresu uvedenú na 0x127 a urobiť z neho 1. 700 00:35:45,305 --> 00:35:49,670 701 00:35:49,670 --> 00:35:53,110 Takže teraz na samom konci, kedy sme vlastne návrat na hlavnú, 702 00:35:53,110 --> 00:35:56,445 v skutočnosti máme, že x je rovné 2 a y je rovný 1. 703 00:35:56,445 --> 00:35:58,500 704 00:35:58,500 --> 00:35:59,500 Všetci dobre s tým? 705 00:35:59,500 --> 00:36:00,720 706 00:36:00,720 --> 00:36:02,320 OK, v pohode. 707 00:36:02,320 --> 00:36:04,030 Číslo 9. 708 00:36:04,030 --> 00:36:05,950 Vy ste na tom pracovať. 709 00:36:05,950 --> 00:36:09,016 Chystám sa vytvoriť dosku takže môžeme čerpať cez neho. 710 00:36:09,016 --> 00:36:09,910 Bude to bomba. 711 00:36:09,910 --> 00:36:13,760 712 00:36:13,760 --> 00:36:16,320 Veľké tabuľky môžu byť naozaj desivé, ja viem. 713 00:36:16,320 --> 00:36:19,910 Ale keď vezmete im jeden riadok na čas, dostanú oveľa menej desivé. 714 00:36:19,910 --> 00:38:12,025 715 00:38:12,025 --> 00:38:12,860 Dobrá. 716 00:38:12,860 --> 00:38:16,230 717 00:38:16,230 --> 00:38:21,190 >> Takže viete, že to bude mať prešli hlavný prvý, že jo? 718 00:38:21,190 --> 00:38:24,140 Inicializuje x a y a potom sa ich snaží vymeniť. 719 00:38:24,140 --> 00:38:28,560 Takže aj swap je uvedené vyššie, skutočný spôsob, ako ju chodí sa, že ideme cez hlavný, 720 00:38:28,560 --> 00:38:31,040 a potom je to volanie až vymeniť, v poriadku? 721 00:38:31,040 --> 00:38:32,810 Takže každý vie, že. 722 00:38:32,810 --> 00:38:34,960 >> Tak ktorý z vás robiť chalani chcú začať? 723 00:38:34,960 --> 00:38:37,240 Je niekto naozaj istí, o jednej z nich? 724 00:38:37,240 --> 00:38:38,307 725 00:38:38,307 --> 00:38:39,265 Alebo dokonca čiastočne istý? 726 00:38:39,265 --> 00:38:44,170 727 00:38:44,170 --> 00:38:48,120 Prečo začneme s x? 728 00:38:48,120 --> 00:38:49,060 Čo si myslíme, že x je? 729 00:38:49,060 --> 00:38:49,735 >> Publikum: 1. 730 00:38:49,735 --> 00:38:50,360 ALLISON BUCHHOLTZ-AU: 1. 731 00:38:50,360 --> 00:38:54,500 732 00:38:54,500 --> 00:38:56,340 Tak prečo je 2. 733 00:38:56,340 --> 00:38:58,880 734 00:38:58,880 --> 00:39:01,380 A to preto, že veľký rozdiel tu 735 00:39:01,380 --> 00:39:04,890 je, že sú len odovzdávanie kópií, nie? 736 00:39:04,890 --> 00:39:06,520 Nie sme odovzdávanie odkazom. 737 00:39:06,520 --> 00:39:08,850 Takže aj na konci Tento program X a Y 738 00:39:08,850 --> 00:39:14,170 zostali rovnaké, pretože sú len kópie vo funkcii pamäti. 739 00:39:14,170 --> 00:39:16,320 Nemajú vlastne zmeniť, nie? 740 00:39:16,320 --> 00:39:17,570 741 00:39:17,570 --> 00:39:19,290 >> Tak čo, b, a teplota? 742 00:39:19,290 --> 00:39:21,540 743 00:39:21,540 --> 00:39:22,890 >> Divákov: je b. 744 00:39:22,890 --> 00:39:23,940 >> ZAMYLA Chan: b je. 745 00:39:23,940 --> 00:39:28,569 Takže v tomto prípade, sa x, čo je 1, nie? 746 00:39:28,569 --> 00:39:29,860 Tak tu, poďme sa prejsť to. 747 00:39:29,860 --> 00:39:33,940 Takže na začiatok, a b sú 1 a 2 a definovaný. 748 00:39:33,940 --> 00:39:35,000 749 00:39:35,000 --> 00:39:40,850 Takže pôvodne temp dostane priradený, takže teplota je 1. 750 00:39:40,850 --> 00:39:46,150 sa rovná b, tak dostaneme 2, a b je rovné teplotu. 751 00:39:46,150 --> 00:39:47,284 Teraz sa dostaneme 1. 752 00:39:47,284 --> 00:39:49,454 753 00:39:49,454 --> 00:39:55,860 >> Divákov: V predchádzajúcom jednej nej vymenili ampersand x a y ampersand. 754 00:39:55,860 --> 00:39:57,390 Čo to presne znamená? 755 00:39:57,390 --> 00:39:59,890 ALLISON BUCHHOLTZ-AU: Takže to znamená, že ste okolo odkazom. 756 00:39:59,890 --> 00:40:03,830 Takže to znamená, že ste v skutočnosti odovzdaním adresy, kde 757 00:40:03,830 --> 00:40:04,814 X a Y sú uložené. 758 00:40:04,814 --> 00:40:06,730 Divákov: Ale ty nie si vymieňať adresu. 759 00:40:06,730 --> 00:40:07,860 ALLISON BUCHHOLTZ-AU: Nie si vymenia adresy. 760 00:40:07,860 --> 00:40:10,015 Ste vymieňať, čo je v nich. 761 00:40:10,015 --> 00:40:11,510 762 00:40:11,510 --> 00:40:14,460 Rovnako ako to, čo je na tejto adrese, a to je dôvod, prečo to funguje. 763 00:40:14,460 --> 00:40:20,750 Versus v tomto programe tu to, čo robíte ich budete vytvárať kópie. 764 00:40:20,750 --> 00:40:27,440 Takže budete musieť x a y, ktoré existujú ako svoje vlastné premenné tu. 765 00:40:27,440 --> 00:40:31,530 766 00:40:31,530 --> 00:40:34,140 Ale potom, keď miniete je do swapu, je to 767 00:40:34,140 --> 00:40:38,090 ako keď vytvárate Celý ten druhý set. 768 00:40:38,090 --> 00:40:41,272 Takže ste vlastne nikdy dojemné x a y. 769 00:40:41,272 --> 00:40:46,890 >> Divákov: Ak ampersand x je to, čo je na adresa x, čo by hviezda x byť? 770 00:40:46,890 --> 00:40:53,290 >> ALLISON BUCHHOLTZ-AU: Ampersand x je to, čo je na adresa x, potom star-- dobre, 771 00:40:53,290 --> 00:40:54,950 V tomto prípade, x nie je ukazovateľ. 772 00:40:54,950 --> 00:40:56,332 773 00:40:56,332 --> 00:40:57,040 Publikum: Oh, OK. 774 00:40:57,040 --> 00:40:58,998 Takže si len urobiť pretože to nie je ukazovateľ. 775 00:40:58,998 --> 00:40:59,890 ALLISON BUCHHOLTZ-AU: Správne. 776 00:40:59,890 --> 00:41:03,046 Môžete to urobiť len hviezda niečo, čo je ukazovateľ. 777 00:41:03,046 --> 00:41:05,920 Možno, že by ste mohli urobiť to, aby veci, ktoré nie sú, ale kompilácie, ktoré vám 778 00:41:05,920 --> 00:41:07,350 robiť bláznivé veci sa stane. 779 00:41:07,350 --> 00:41:09,570 A ja som zrovna nie istý, čo by sa stalo. 780 00:41:09,570 --> 00:41:11,880 Môžete si vždy adresa niečoho, 781 00:41:11,880 --> 00:41:14,255 ale nemôžete dereferencia niečo, čo nie je ukazovateľ. 782 00:41:14,255 --> 00:41:14,805 783 00:41:14,805 --> 00:41:17,860 Ak to dáva zmysel, že je to dobré rozlišovať mať. 784 00:41:17,860 --> 00:41:19,870 785 00:41:19,870 --> 00:41:21,340 >> Takže nie je tak zlé, nie? 786 00:41:21,340 --> 00:41:23,650 Stoly sú snáď stále o niečo menej desivé. 787 00:41:23,650 --> 00:41:25,450 788 00:41:25,450 --> 00:41:26,690 Dobrá. 789 00:41:26,690 --> 00:41:28,370 Ach, tie zábavné. 790 00:41:28,370 --> 00:41:31,265 Takže teraz, písanie vlastného kódu. 791 00:41:31,265 --> 00:41:33,640 792 00:41:33,640 --> 00:41:37,950 Takže budem vám chalani pracovať na to asi štyri minúty 793 00:41:37,950 --> 00:41:41,480 a potom môžeme hovoriť o spôsoboch, ako k nemu pristupujú. 794 00:41:41,480 --> 00:41:45,080 795 00:41:45,080 --> 00:41:47,110 Neváhajte a hovoriť s ľuďmi okolo vás. 796 00:41:47,110 --> 00:41:48,114 797 00:41:48,114 --> 00:41:49,155 Tiež je to zaujímavé. 798 00:41:49,155 --> 00:41:51,460 Je to ako všetky dievčatá časť práve teraz. 799 00:41:51,460 --> 00:41:52,190 Celkom vzrušujúce. 800 00:41:52,190 --> 00:41:53,310 801 00:41:53,310 --> 00:41:54,502 Okrem Chang. 802 00:41:54,502 --> 00:41:56,190 Ale Chang naozaj nie je súčasťou oddielu. 803 00:41:56,190 --> 00:42:17,282 804 00:42:17,282 --> 00:42:17,985 Úžasné. 805 00:42:17,985 --> 00:42:18,485 Perfect. 806 00:42:18,485 --> 00:42:38,059 807 00:42:38,059 --> 00:42:39,475 Tak ja vám dám zopár tipov. 808 00:42:39,475 --> 00:42:43,450 809 00:42:43,450 --> 00:42:46,890 V prípade, že máte viac ako jeden znak, kde 810 00:42:46,890 --> 00:42:49,990 máte niečo iné ako je 123 alebo 1000 niečo, 811 00:42:49,990 --> 00:42:53,790 musíte byť schopní slučky skrz a previesť každý z nich. 812 00:42:53,790 --> 00:42:55,340 813 00:42:55,340 --> 00:42:58,699 Takže je tu pár spôsobov, ako si to mohol urobiť, 814 00:42:58,699 --> 00:43:01,740 ale vy ste určite bude mať slučky for niekde tam na slučke 815 00:43:01,740 --> 00:43:05,150 skrze ne, čo je niečo ako prezradí 816 00:43:05,150 --> 00:43:09,540 , Aj keď sa zavoláte strlen, ktorý je niečo ako oh 817 00:43:09,540 --> 00:43:12,418 Možno budete chcieť použiť dĺžku reťazca nejakým spôsobom. 818 00:43:12,418 --> 00:45:17,300 819 00:45:17,300 --> 00:45:17,829 >> Dobrá. 820 00:45:17,829 --> 00:45:20,870 Tak čo vy na to by mohol byť jedna z prvých vecí, ktorú chcú robiť? 821 00:45:20,870 --> 00:45:23,149 822 00:45:23,149 --> 00:45:25,690 Je tu pár prípadov tu musíme vysvetliť, že jo? 823 00:45:25,690 --> 00:45:27,360 Buď budeme mať niečo, čo je null. 824 00:45:27,360 --> 00:45:28,685 825 00:45:28,685 --> 00:45:30,383 Čo máme? 826 00:45:30,383 --> 00:45:30,882 Prípadov. 827 00:45:30,882 --> 00:45:32,760 828 00:45:32,760 --> 00:45:33,260 Null. 829 00:45:33,260 --> 00:45:34,400 830 00:45:34,400 --> 00:45:42,414 Máme prípad, že má niečo iné ako 09, nie? 831 00:45:42,414 --> 00:45:43,580 Takže povedzme, že má listy. 832 00:45:43,580 --> 00:45:44,900 833 00:45:44,900 --> 00:45:46,510 Alebo máme prípad, ktorý je platný. 834 00:45:46,510 --> 00:45:48,450 835 00:45:48,450 --> 00:45:50,130 Tri prípady myslieť. 836 00:45:50,130 --> 00:45:53,527 Takže, ktorý z nich si myslíte, že by mohol byť najjednoduchšie postarať sa o prvý? 837 00:45:53,527 --> 00:45:54,152 Divákov: Null. 838 00:45:54,152 --> 00:45:55,527 ALLISON BUCHHOLTZ-AU: Prípad je null. 839 00:45:55,527 --> 00:45:56,610 Takže to, čo by sme si tam? 840 00:45:56,610 --> 00:45:57,954 841 00:45:57,954 --> 00:45:58,870 Divákov: [nepočuteľné]. 842 00:45:58,870 --> 00:46:02,434 843 00:46:02,434 --> 00:46:03,184 ALLISON BUCHHOLTZ-AU: Jo. 844 00:46:03,184 --> 00:46:05,140 845 00:46:05,140 --> 00:46:06,550 A čo mám robiť? 846 00:46:06,550 --> 00:46:07,341 >> Divákov: return 0. 847 00:46:07,341 --> 00:46:07,935 848 00:46:07,935 --> 00:46:09,110 >> ALLISON BUCHHOLTZ-AU: Presne tak. 849 00:46:09,110 --> 00:46:09,860 Úžasné. 850 00:46:09,860 --> 00:46:10,640 OK. 851 00:46:10,640 --> 00:46:15,270 Takže teraz prípade, že má listy a v prípade, že je platný. 852 00:46:15,270 --> 00:46:19,140 Môžeme skutočne postarať z toho v rámci jednej slučky, OK? 853 00:46:19,140 --> 00:46:22,710 Takže jeden spôsob, ako to urobiť to-- čo by mohlo byť jednoduchý spôsob, ako zistiť, či je to platný. 854 00:46:22,710 --> 00:46:25,150 855 00:46:25,150 --> 00:46:29,144 Budeme musieť prejsť každý list a robiť to, čo? 856 00:46:29,144 --> 00:46:34,336 857 00:46:34,336 --> 00:46:35,640 >> Divákov: Skontrolujte, či je to in-- 858 00:46:35,640 --> 00:46:39,570 >> ALLISON BUCHHOLTZ-AU: Dobre, môžete skontrolovať ak je medzi 0 a 9, nie? 859 00:46:39,570 --> 00:46:40,880 860 00:46:40,880 --> 00:46:42,700 A potom v prípade že je to platné, že sme 861 00:46:42,700 --> 00:46:46,550 skončí iterácia náš reťazec kdekoľvek, nie? 862 00:46:46,550 --> 00:46:48,690 Tak prečo sa snažíme spojiť ich do jedného. 863 00:46:48,690 --> 00:46:51,260 Budeme opakovať cez vonkajšiu reťazca, a ako my 864 00:46:51,260 --> 00:46:56,400 tomu, že budeme prvý vykonať kontrolu, či tento list 865 00:46:56,400 --> 00:46:58,110 alebo, ak to povaha je platný. 866 00:46:58,110 --> 00:47:02,150 Ak áno, budeme vykonávať operácie, ktorá musíme ju previesť. 867 00:47:02,150 --> 00:47:05,050 V opačnom prípade sa vrátim 0, nie? 868 00:47:05,050 --> 00:47:09,160 >> Takže ako to urobíme, budeme pravdepodobne chcieť nejakú premennú 869 00:47:09,160 --> 00:47:12,820 že sa môže vrátiť na konci že to bude naša skutočná hodnota. 870 00:47:12,820 --> 00:47:17,005 Takže budeme inicializovať niektoré hodnoty sa 0. 871 00:47:17,005 --> 00:47:18,390 A to je len, ako začať. 872 00:47:18,390 --> 00:47:22,452 873 00:47:22,452 --> 00:47:23,785 Takže ja idem, ako sa zbaviť toho. 874 00:47:23,785 --> 00:47:26,750 875 00:47:26,750 --> 00:47:30,489 Tak ako budeme iterovat tohto reťazca. 876 00:47:30,489 --> 00:47:31,280 Obecenstvo: pre sláčiky. 877 00:47:31,280 --> 00:47:32,280 ALLISON BUCHHOLTZ-AU: pre sláčiky. 878 00:47:32,280 --> 00:47:33,160 Takže to, čo je naše pre? 879 00:47:33,160 --> 00:47:34,710 880 00:47:34,710 --> 00:47:35,909 >> Divákov: i je 0. 881 00:47:35,909 --> 00:47:36,700 ALLISON BUCHHOLTZ-AU: Mm-hm. 882 00:47:36,700 --> 00:47:38,620 883 00:47:38,620 --> 00:47:41,180 A to, čo sme iterácií až do? 884 00:47:41,180 --> 00:47:42,450 >> Divákov: dĺžka str S. 885 00:47:42,450 --> 00:47:47,920 886 00:47:47,920 --> 00:47:50,900 >> ALLISON BUCHHOLTZ-AU: OK, teraz spomenúť existuje lepší spôsob. [Nepočuteľné]. 887 00:47:50,900 --> 00:47:52,935 >> Publikum: Áno, môžeme to urobiť n sa rovná. 888 00:47:52,935 --> 00:47:53,810 ALLISON BUCHHOLTZ-AU: Presne tak. 889 00:47:53,810 --> 00:47:55,010 890 00:47:55,010 --> 00:47:56,190 >> Divákov: i je menšie ako n. 891 00:47:56,190 --> 00:47:57,559 892 00:47:57,559 --> 00:47:59,475 ALLISON BUCHHOLTZ-AU: A prečo by sme chceli robiť, že? 893 00:47:59,475 --> 00:48:00,815 894 00:48:00,815 --> 00:48:01,940 Spomínate si na dôvod? 895 00:48:01,940 --> 00:48:04,180 896 00:48:04,180 --> 00:48:05,680 Divákov: Musíme ju prepočítať. 897 00:48:05,680 --> 00:48:08,735 ALLISON BUCHHOLTZ-AU: becasue Týmto spôsobom sa iba pre výpočet strlen raz. 898 00:48:08,735 --> 00:48:09,750 899 00:48:09,750 --> 00:48:14,400 Ak tak urobíte aj je menšia než strlen s, to znamená, že sa prepočíta 900 00:48:14,400 --> 00:48:17,050 dĺžka zakaždým spustenie slučky for, 901 00:48:17,050 --> 00:48:20,800 čo nie je obrovské náklady energie, ale je to 902 00:48:20,800 --> 00:48:24,280 lepšiu prax, aby sa pokúsila robiť veci, ako že raz. 903 00:48:24,280 --> 00:48:27,610 Ak nie je možno máte šialený reťazec že sa mení v každej iterácii. 904 00:48:27,610 --> 00:48:30,371 Ale ak je to zostať rovnaký, uložte ho. 905 00:48:30,371 --> 00:48:30,870 Dobrá. 906 00:48:30,870 --> 00:48:33,430 A potom i a a. 907 00:48:33,430 --> 00:48:34,040 Úžasné. 908 00:48:34,040 --> 00:48:35,789 Sme na ceste. 909 00:48:35,789 --> 00:48:36,830 Divákov: Naozaj rýchlo. 910 00:48:36,830 --> 00:48:39,600 Po prvé, takže povedzme, že sme práve Urobil som menšie ako strlen S, 911 00:48:39,600 --> 00:48:42,175 sa, že triedenie nás na dizajn vôbec alebo len korektnosti? 912 00:48:42,175 --> 00:48:43,640 913 00:48:43,640 --> 00:48:44,610 Oni nie sú. 914 00:48:44,610 --> 00:48:47,920 Sme triedenie na správnosť pre kvízy pokiaľ viem. 915 00:48:47,920 --> 00:48:52,670 Nemôžem sa ponúka na celej záruka, ale pre najviac sa rozdeliť, 916 00:48:52,670 --> 00:48:57,060 Drvivá väčšina je korektnosť, pretože ste pod veľkým časového obmedzenia. 917 00:48:57,060 --> 00:48:59,704 Dizajn zvyčajne znamená Máte čas na rozmyslenie 918 00:48:59,704 --> 00:49:01,245 o eleganciu vašej situácii. 919 00:49:01,245 --> 00:49:03,710 920 00:49:03,710 --> 00:49:05,770 >> OK, takže sme iterácie. 921 00:49:05,770 --> 00:49:10,640 Takže potrebujeme buď overiť, či tento znak je platný 922 00:49:10,640 --> 00:49:14,550 alebo či môžeme vykonávať naše normálne [? na i?] funkcie. 923 00:49:14,550 --> 00:49:16,600 Môžeme starať o to, čo že je v druhom. 924 00:49:16,600 --> 00:49:19,340 Tak prečo nie my take-- či niekto môže myslieť 925 00:49:19,340 --> 00:49:21,930 o spôsob, ako kontrolovať, aby zistiť, či je to platný. 926 00:49:21,930 --> 00:49:23,346 927 00:49:23,346 --> 00:49:25,740 Vieme, že to bude niektorí ak podmienka, že jo? 928 00:49:25,740 --> 00:49:26,830 929 00:49:26,830 --> 00:49:32,300 A pamätajte si toto je v ASCII, ako by to 930 00:49:32,300 --> 00:49:37,359 uvidíme, či to nie je 0,1, 2, 3, 4, 5, 6, 7, 8, alebo 9. 931 00:49:37,359 --> 00:49:38,150 Divákov: Ak je alfa. 932 00:49:38,150 --> 00:49:39,800 933 00:49:39,800 --> 00:49:44,100 >> ALLISON BUCHHOLTZ-AU: Takže ak by alpha len dajte nám vedieť, či je to písmeno. 934 00:49:44,100 --> 00:49:47,810 A ak sa nám symbol, je to ešte nie celkom ísť skontrolovať. 935 00:49:47,810 --> 00:49:54,270 Takže ak budete ťahať svoj ASCII stôl, vieme, že 0 až 9 936 00:49:54,270 --> 00:49:55,340 sú v jednom segmente. 937 00:49:55,340 --> 00:49:57,560 938 00:49:57,560 --> 00:50:00,540 Povedz mi čísla, že zodpovedajú ak je to možné. 939 00:50:00,540 --> 00:50:08,136 940 00:50:08,136 --> 00:50:08,677 Divákov: 40. 941 00:50:08,677 --> 00:50:11,440 942 00:50:11,440 --> 00:50:13,714 >> ALLISON BUCHHOLTZ-AU: Takže rozsah je ako 40-- 943 00:50:13,714 --> 00:50:14,380 Divákov: Možno. 944 00:50:14,380 --> 00:50:16,110 945 00:50:16,110 --> 00:50:16,765 48 až 57 ,. 946 00:50:16,765 --> 00:50:17,430 Nie som si istý. 947 00:50:17,430 --> 00:50:18,510 >> ALLISON BUCHHOLTZ-AU: 40-57? 948 00:50:18,510 --> 00:50:19,426 >> Divákov: 48, myslím. 949 00:50:19,426 --> 00:50:20,730 ALLISON BUCHHOLTZ-AU: 48 až 57 ,. 950 00:50:20,730 --> 00:50:26,070 Takže vieme, že tí, ASCII symbols-- pokiaľ ASCII hodnota nie je 951 00:50:26,070 --> 00:50:29,940 medzi 48 a 57, to neplatí, je to tak? 952 00:50:29,940 --> 00:50:32,050 Tak by sme mohli využiť, že pre Našou výhodou je možná? 953 00:50:32,050 --> 00:50:33,770 954 00:50:33,770 --> 00:50:38,082 Ako sa dostaneme tento list, prvý off? 955 00:50:38,082 --> 00:50:40,910 Ako sme prístup to táto postava? 956 00:50:40,910 --> 00:50:42,010 >> Divákov: s držiak i. 957 00:50:42,010 --> 00:50:42,801 >> ALLISON BUCHHOLTZ-AU: Mm-hm. 958 00:50:42,801 --> 00:50:43,790 959 00:50:43,790 --> 00:50:46,285 Vzhľadom k tomu, aby sme mohli myslieť reťazca ako pole, pamätať. 960 00:50:46,285 --> 00:50:47,470 961 00:50:47,470 --> 00:50:48,740 Takže to, čo chceme povedať? 962 00:50:48,740 --> 00:50:55,920 Chceme povedať, či to je-- Dám vám nápovedu. 963 00:50:55,920 --> 00:50:56,920 Je to menej ako. 964 00:50:56,920 --> 00:50:58,711 Čo si myslíte, že to musí byť menšie ako? 965 00:50:58,711 --> 00:50:59,074 966 00:50:59,074 --> 00:50:59,615 Divákov: 57? 967 00:50:59,615 --> 00:51:01,550 968 00:51:01,550 --> 00:51:02,900 >> ALLISON BUCHHOLTZ-AU: 47, nie? 969 00:51:02,900 --> 00:51:08,920 Ale to tiež znamená, že ak ste 0 v jednom [? lúče?], pretože to je 970 00:51:08,920 --> 00:51:09,689 znak 0. 971 00:51:09,689 --> 00:51:10,605 Dalo by sa tiež dať 47. 972 00:51:10,605 --> 00:51:11,660 973 00:51:11,660 --> 00:51:14,350 S tabuľku ASCII, as vidíte, je len niečo 974 00:51:14,350 --> 00:51:18,580 mali by ste mať na svojom kvízu liste. 975 00:51:18,580 --> 00:51:25,830 >> Takže ak sa jedná o tento prípad, ak je to menej ako 0-- nutne a. 976 00:51:25,830 --> 00:51:30,890 Je to len jeden bude menšie ako alebo väčšie ako 9. 977 00:51:30,890 --> 00:51:33,055 Takže môžete vyplniť tento posledný pre mňa? 978 00:51:33,055 --> 00:51:36,440 Tak alebo s oblasťou Aj je to, čo, Rhea? 979 00:51:36,440 --> 00:51:39,810 980 00:51:39,810 --> 00:51:41,536 >> Divákov: Väčšie ako 9. 981 00:51:41,536 --> 00:51:42,970 982 00:51:42,970 --> 00:51:44,221 >> ALLISON BUCHHOLTZ-AU: tam. 983 00:51:44,221 --> 00:51:47,280 Znamená to, že zmysel všetci, ako sme sa tam dostali? 984 00:51:47,280 --> 00:51:51,340 Tieto problémy sú ako kedysi vy pozri riešenie, je to ako oh, OK. 985 00:51:51,340 --> 00:51:52,312 986 00:51:52,312 --> 00:51:53,937 A to je dôvod, prečo cvičenie vám pomôže. 987 00:51:53,937 --> 00:51:55,070 988 00:51:55,070 --> 00:51:57,400 OK, takže sa vraciame 0. 989 00:51:57,400 --> 00:51:57,900 Lovely. 990 00:51:57,900 --> 00:51:59,000 991 00:51:59,000 --> 00:51:59,670 Dobrá. 992 00:51:59,670 --> 00:52:00,780 993 00:52:00,780 --> 00:52:02,365 Inak to, čo chceme robiť? 994 00:52:02,365 --> 00:52:04,640 To je zaujímavá časť kde je to trochu viac 995 00:52:04,640 --> 00:52:07,550 ako matematika oproti SK podľa môjho názoru. 996 00:52:07,550 --> 00:52:09,479 997 00:52:09,479 --> 00:52:11,520 Má niekto nejaký nápad o tom, ako by sme mohli urobiť? 998 00:52:11,520 --> 00:52:15,822 999 00:52:15,822 --> 00:52:18,155 Takže dôležitá vec si uvedomiť, prvý znak 1000 00:52:18,155 --> 00:52:21,510 berieme bude najvyššieho rádu číslice, nie? 1001 00:52:21,510 --> 00:52:25,975 Pokiaľ teda hľadáte na konverziu 123, prvýkrát sme sa opakovať 1002 00:52:25,975 --> 00:52:30,800 bude 1, ale musíme že je to 100 na konci, nie? 1003 00:52:30,800 --> 00:52:34,450 Takže jedna vec, ktorú môžete urobiť, je, že s každou ďalšou číslicou 1004 00:52:34,450 --> 00:52:39,670 budete mať, môžete znásobiť svoj hodnotu 10, tak, že v čase, keď sa dostanete na koniec, 1005 00:52:39,670 --> 00:52:42,960 Všetko bolo smerom hore, nie? 1006 00:52:42,960 --> 00:52:46,490 >> Takže prvom spustení to máte 1 ako hodnota. 1007 00:52:46,490 --> 00:52:50,370 Druhýkrát ho spustíte, môžete násobiť hodnotu 10. 1008 00:52:50,370 --> 00:52:55,180 To bude aktualizovať, takže je teraz 10, a pridáte na ďalšiu hodnotu. 1009 00:52:55,180 --> 00:52:57,830 A potom násobiť, že 10 a pridať na ďalšiu hodnotu. 1010 00:52:57,830 --> 00:53:01,880 A to je dôvod, prečo hovoria, že to je oveľa viac ako testovanie 1011 00:53:01,880 --> 00:53:06,920 matematický algoritmus proti SK, ale to som odbočil. 1012 00:53:06,920 --> 00:53:08,080 Nechcem písať kvízy. 1013 00:53:08,080 --> 00:53:13,520 >> Takže jedna vec, ktorú môžeme urobiť, je, že sme hovoria časy hodnota je rovná 10. 1014 00:53:13,520 --> 00:53:16,630 Takže to bude posun Váš číslica raz za čas. 1015 00:53:16,630 --> 00:53:18,770 1016 00:53:18,770 --> 00:53:20,915 A potom sme sa len chcete pridať. 1017 00:53:20,915 --> 00:53:22,070 1018 00:53:22,070 --> 00:53:24,290 Chceme pridať, čo práve sme dostali, že jo? 1019 00:53:24,290 --> 00:53:25,350 1020 00:53:25,350 --> 00:53:31,649 Tak ako sme sa vlastne previesť naše ASCII znak do počtu 1021 00:53:31,649 --> 00:53:32,440 že to predstavuje? 1022 00:53:32,440 --> 00:53:37,680 1023 00:53:37,680 --> 00:53:40,800 >> Takže vieme, že 0 je rovná 47, nie? 1024 00:53:40,800 --> 00:53:44,260 Takže ak 0 je 47, čo by sme museli urobiť, aby to 1025 00:53:44,260 --> 00:53:47,376 v skutočnosti, aby bolo int 0? 1026 00:53:47,376 --> 00:53:48,384 >> Divákov: Je to 48. 1027 00:53:48,384 --> 00:53:49,050 ALLISON BUCHHOLTZ-AU: 48? 1028 00:53:49,050 --> 00:53:49,550 Prepáčte. 1029 00:53:49,550 --> 00:53:53,500 1030 00:53:53,500 --> 00:53:55,100 Radi by sme odpočítať 48, nie? 1031 00:53:55,100 --> 00:53:58,580 1032 00:53:58,580 --> 00:53:59,550 Nezabudnite ASCII matematiku? 1033 00:53:59,550 --> 00:54:01,565 Môžeme ich považovať len ako normálne čísla. 1034 00:54:01,565 --> 00:54:02,570 1035 00:54:02,570 --> 00:54:05,900 Ak s nimi zaobchádzať ako čísla, sa stanú čísla efektívne. 1036 00:54:05,900 --> 00:54:10,410 Takže ak máme sz Aj, ktorá poďme povedať, je v tomto prípade rovný 0. 1037 00:54:10,410 --> 00:54:14,420 Takže s oblasťou Aj v tomto prípade by ASCII-- 1038 00:54:14,420 --> 00:54:16,675 ASCII int pre neho bude 47. 1039 00:54:16,675 --> 00:54:17,750 1040 00:54:17,750 --> 00:54:19,875 Takže sme mohli subtract-- alebo 48. 1041 00:54:19,875 --> 00:54:20,930 1042 00:54:20,930 --> 00:54:22,440 Dalo by sa to urobiť, je jeden spôsob. 1043 00:54:22,440 --> 00:54:25,125 Vie niekto lepší spôsob, ako by sme mohli urobiť 48? 1044 00:54:25,125 --> 00:54:27,220 1045 00:54:27,220 --> 00:54:31,608 Len sme si povedali 0 je-- ísť do ASCII by ste mohli urobiť cenovú 0. 1046 00:54:31,608 --> 00:54:39,740 1047 00:54:39,740 --> 00:54:43,160 Tak sa to trochu robiť pocit, ako to funguje? 1048 00:54:43,160 --> 00:54:50,080 >> Publikum: V tomto okamihu, je hodnota 0 pretože aj keď si to vynásobiť 10, 1049 00:54:50,080 --> 00:54:53,340 začínate sa s nulou, preto by malo byť zapnutý? 1050 00:54:53,340 --> 00:54:59,360 >> ALLISON BUCHHOLTZ-AU: Takže v tomto prípade je Chcete vynásobte ju pred pridaním, 1051 00:54:59,360 --> 00:55:06,650 preto, že v tomto prípade, áno, by to stále be-- môj ukazovateľ chýba. 1052 00:55:06,650 --> 00:55:09,980 Hodnota v tomto prípade, prvý Tentoraz sme ho spustiť bude nula. 1053 00:55:09,980 --> 00:55:12,320 Takže ste práve pridaním na tej prvej číslicu. 1054 00:55:12,320 --> 00:55:15,930 Čo je dôležité, je nabudúce iterácii, chcete posunúť nahor 1055 00:55:15,930 --> 00:55:18,722 než pridáte ďalšiu číslice na. 1056 00:55:18,722 --> 00:55:21,223 Znamená to, že objasniť pre vás? 1057 00:55:21,223 --> 00:55:21,723 OK. 1058 00:55:21,723 --> 00:55:23,050 1059 00:55:23,050 --> 00:55:25,900 >> Niekedy budete podivne viac Mathy veci. 1060 00:55:25,900 --> 00:55:28,020 1061 00:55:28,020 --> 00:55:30,750 Ak ste mal to, že ste stále pokračuje 1062 00:55:30,750 --> 00:55:32,610 na get-- budete robiť celkom dobre. 1063 00:55:32,610 --> 00:55:35,150 Čiastočné úver je veľmi veľká vec na CS50 kvízy. 1064 00:55:35,150 --> 00:55:36,270 Tak napíšte, čo viete. 1065 00:55:36,270 --> 00:55:39,640 Ak máš všetko okrem tu, že ste 1066 00:55:39,640 --> 00:55:41,390 ešte robiť naozaj dobre problém. 1067 00:55:41,390 --> 00:55:43,750 Vzhľadom k tomu, že ste ukazuje, OK, ja skoro neviem. 1068 00:55:43,750 --> 00:55:45,570 Viem, že je potrebné iterovat. 1069 00:55:45,570 --> 00:55:47,260 Viem, čo je potrebné skontrolovať. 1070 00:55:47,260 --> 00:55:50,584 Len som nie úplne dostať, ako ju previesť. 1071 00:55:50,584 --> 00:55:51,500 Budeš v poriadku. 1072 00:55:51,500 --> 00:55:52,850 Áno, budete stratíte pár bodov, 1073 00:55:52,850 --> 00:55:55,641 ale vy ste ešte dostane dobrý počet bodov za niečo 1074 00:55:55,641 --> 00:55:57,990 ako, že ak ste chýba tieto dva riadky. 1075 00:55:57,990 --> 00:56:00,660 Chcel by som byť ako OK, tejto osobe vie, čo robia. 1076 00:56:00,660 --> 00:56:02,070 Matematika je ťažké. 1077 00:56:02,070 --> 00:56:04,930 Takže by som povedal, že budeš v poriadku. 1078 00:56:04,930 --> 00:56:09,474 >> OK, takže vy pripravený skúste strlen s ukazovateľmi teraz 1079 00:56:09,474 --> 00:56:10,890 že vy ste ukazovateľ pánmi? 1080 00:56:10,890 --> 00:56:12,400 1081 00:56:12,400 --> 00:56:15,106 Takže nechám vy pracovať o, že pre trochu. 1082 00:56:15,106 --> 00:56:17,131 1083 00:56:17,131 --> 00:56:19,090 Ak niekto potrebuje osviežiť. 1084 00:56:19,090 --> 00:56:23,120 1085 00:56:23,120 --> 00:56:28,060 Takže chcete použiť ukazovateľ aritmetika, a potom, ak je null, 1086 00:56:28,060 --> 00:56:29,624 Vaša implementácia by sa mal vrátiť 0. 1087 00:56:29,624 --> 00:56:37,045 1088 00:56:37,045 --> 00:56:39,670 Veci, ako je to, ktoré vám robia naozaj rád, že stačí zavolať strlen 1089 00:56:39,670 --> 00:56:40,586 Na konci dňa. 1090 00:56:40,586 --> 00:57:24,874 1091 00:57:24,874 --> 00:57:27,624 Myslím, že toto by mohlo byť trochu jednoduchšie, než ten posledný, ktorý 1092 00:57:27,624 --> 00:57:28,123 je dobrá. 1093 00:57:28,123 --> 00:58:51,789 1094 00:58:51,789 --> 00:58:55,690 Dám ti chlapci ešte minútu, a potom budeme pracovať cez to. 1095 00:58:55,690 --> 00:58:56,896 1096 00:58:56,896 --> 00:58:58,320 A potom sme si ísť na prepínači. 1097 00:58:58,320 --> 00:59:32,480 1098 00:59:32,480 --> 00:59:34,660 >> OK, pripravené ľudí? 1099 00:59:34,660 --> 00:59:35,790 1100 00:59:35,790 --> 00:59:37,420 Možno trochu. 1101 00:59:37,420 --> 00:59:40,210 Tak som dal vašej dve možnosti, že jo? 1102 00:59:40,210 --> 00:59:45,810 Buď skontrolujte hodnotu null a vráti 0, ak to je, alebo je priamo vypočítať dĺžku. 1103 00:59:45,810 --> 00:59:48,220 Takže, kto chce písať skontrolovať null? 1104 00:59:48,220 --> 00:59:50,100 1105 00:59:50,100 --> 00:59:51,790 Ísť na to. 1106 00:59:51,790 --> 00:59:56,460 >> Divákov: Ak zátvorky s rovná sa rovná nulovej návratnosti 0. 1107 00:59:56,460 --> 00:59:57,342 1108 00:59:57,342 --> 00:59:58,175 ALLISON BUCHHOLTZ-AU: Lovely. 1109 00:59:58,175 --> 00:59:59,350 1110 00:59:59,350 --> 01:00:02,320 Milujem, keď pol váš problém práve kontrola null. 1111 01:00:02,320 --> 01:00:04,820 Viem, že sa chalani posledný týždeň Bol som ako šek na null 1112 01:00:04,820 --> 01:00:06,630 doslova zakaždým. 1113 01:00:06,630 --> 01:00:07,510 OK, tak-- 1114 01:00:07,510 --> 01:00:08,716 1115 01:00:08,716 --> 01:00:12,750 >> Divákov: Ak return 0 je len jeden riadok, my stále potrebujeme zložená zátvorka? 1116 01:00:12,750 --> 01:00:15,860 >> ALLISON BUCHHOLTZ-AU: Vy nie je technicky Potrebujeme ich, ako dlho ste v súlade. 1117 01:00:15,860 --> 01:00:19,240 Je to dobré praxe len dostať vo zvyku 1118 01:00:19,240 --> 01:00:21,650 použitie zložené zátvorky, ale technicky nie. 1119 01:00:21,650 --> 01:00:23,320 Nemusíte je na jednom riadku. 1120 01:00:23,320 --> 01:00:26,030 Práve sme sa jej skôr odporučiť pre ľudí začínajú programu. 1121 01:00:26,030 --> 01:00:27,740 1122 01:00:27,740 --> 01:00:30,450 >> Takže teraz to, čo by sme mohli chcieť robiť? 1123 01:00:30,450 --> 01:00:32,222 Takže teraz vieme, že naša reťazec je platný. 1124 01:00:32,222 --> 01:00:33,680 Chceme udržať vypočítať dĺžku. 1125 01:00:33,680 --> 01:00:35,620 Čo je to pravdepodobne prvý vec, ktorú chcete robiť? 1126 01:00:35,620 --> 01:00:38,770 1127 01:00:38,770 --> 01:00:41,276 >> Divákov: Vytvorenie int, že je to dlhé. 1128 01:00:41,276 --> 01:00:42,150 ALLISON BUCHHOLTZ-AU: Presne tak. 1129 01:00:42,150 --> 01:00:43,450 Divákov: A chceme nastaviť tak, aby? 1130 01:00:43,450 --> 01:00:44,210 ALLISON BUCHHOLTZ-AU: 0. 1131 01:00:44,210 --> 01:00:44,710 Perfect. 1132 01:00:44,710 --> 01:00:46,050 1133 01:00:46,050 --> 01:00:47,290 Dobrá. 1134 01:00:47,290 --> 01:00:48,750 A teraz, čo chcem robiť? 1135 01:00:48,750 --> 01:00:50,000 To je v skutočnosti väčšina z nich. 1136 01:00:50,000 --> 01:00:50,890 Ísť na to. 1137 01:00:50,890 --> 01:00:54,370 >> Divákov: Takže ste asi robiť pre slučke. 1138 01:00:54,370 --> 01:01:03,150 A potom, pretože pri volaní S, že ste dostať adresu prvá vec, 1139 01:01:03,150 --> 01:01:05,660 by ste začať s i = 0. 1140 01:01:05,660 --> 01:01:07,980 1141 01:01:07,980 --> 01:01:15,755 A potom, ak x Navyše som sa nevrátil lomítko 0. 1142 01:01:15,755 --> 01:01:17,130 ALLISON BUCHHOLTZ-AU: null zakončenie. 1143 01:01:17,130 --> 01:01:18,380 Divákov: null zakončenie. 1144 01:01:18,380 --> 01:01:18,890 1145 01:01:18,890 --> 01:01:21,088 Potom môžete pridať jeden na dĺžku. 1146 01:01:21,088 --> 01:01:22,372 >> ALLISON BUCHHOLTZ-AU: Jo. 1147 01:01:22,372 --> 01:01:25,940 OK, takže umožňuje otočiť, aby do veľmi konkrétneho kódu. 1148 01:01:25,940 --> 01:01:27,537 Ale to je perfektný nápad. 1149 01:01:27,537 --> 01:01:28,870 To je presne to, čo robíme. 1150 01:01:28,870 --> 01:01:31,910 Budeme mať Iterácie až s ukazovateľom. 1151 01:01:31,910 --> 01:01:34,590 Takže to, čo chceme robiť je miesto int 1152 01:01:34,590 --> 01:01:36,660 tu, pretože sme nie odkazovať sa na to. 1153 01:01:36,660 --> 01:01:42,390 Hovoríme na začiatok reťazec, ktorý začne byť niektoré adresy, 1154 01:01:42,390 --> 01:01:43,300 že jo? 1155 01:01:43,300 --> 01:01:44,600 >> Takže chceme ukazovateľ. 1156 01:01:44,600 --> 01:01:47,610 1157 01:01:47,610 --> 01:01:52,310 Takže budeme mať nejaký char hviezdu, pretože zodpovedá našim s, nie? 1158 01:01:52,310 --> 01:01:57,270 Tak to je nejaký bod sme inicializácia na začiatku reťazca, OK? 1159 01:01:57,270 --> 01:01:58,949 Takže poďme stačí zavolať: Či som ja. 1160 01:01:58,949 --> 01:02:01,740 Ak je to začiatok reťazca, čo sa to bude pridelený? 1161 01:02:01,740 --> 01:02:03,690 1162 01:02:03,690 --> 01:02:04,530 Nie 0. 1163 01:02:04,530 --> 01:02:06,238 Chceme, aby to bolo spustenie nášho reťazca. 1164 01:02:06,238 --> 01:02:07,170 1165 01:02:07,170 --> 01:02:09,960 To, čo predstavuje začiatok náš reťazec, ktorý nám bol daný? 1166 01:02:09,960 --> 01:02:10,800 >> Divákov: Len s. 1167 01:02:10,800 --> 01:02:11,425 >> ALLISON BUCHHOLTZ-AU: s. 1168 01:02:11,425 --> 01:02:13,070 1169 01:02:13,070 --> 01:02:17,890 Takže to vytvorí nejaký nový ukazovateľ, ktorý predstavuje začiatok nášho reťazca, OK? 1170 01:02:17,890 --> 01:02:19,430 1171 01:02:19,430 --> 01:02:22,777 Ďalší spôsob, ako myslieť na to, je ako tu je naša pole. 1172 01:02:22,777 --> 01:02:26,690 To je náš reťazec, s. 1173 01:02:26,690 --> 01:02:28,650 1174 01:02:28,650 --> 01:02:32,400 Takže povedzme, že je to prvé miesto, a to je 0x4. 1175 01:02:32,400 --> 01:02:34,400 1176 01:02:34,400 --> 01:02:34,900 04. 1177 01:02:34,900 --> 01:02:36,330 1178 01:02:36,330 --> 01:02:38,535 To je náš s, ktorý si myslí, že adresu. 1179 01:02:38,535 --> 01:02:39,810 1180 01:02:39,810 --> 01:02:45,960 A my sme práve vytvorili ešte jeden s názvom aj to len odkazuje na rovnakú vec. 1181 01:02:45,960 --> 01:02:49,437 Takže oni sú obaja len ukazuje na počiatku nášho reťazca. 1182 01:02:49,437 --> 01:02:51,020 Toto je len grafické znázornenie. 1183 01:02:51,020 --> 01:02:53,830 1184 01:02:53,830 --> 01:02:57,100 >> Takže teraz to, čo chceme urobiť, je chceme iterovat 1185 01:02:57,100 --> 01:03:02,040 naše podmienkou iterácie prostredníctvom našej reťazec. 1186 01:03:02,040 --> 01:03:02,920 Teraz nakupovanie. 1187 01:03:02,920 --> 01:03:04,150 Musím nakupovať, chlapci. 1188 01:03:04,150 --> 01:03:06,290 1189 01:03:06,290 --> 01:03:12,390 Sa chceme udržať aktualizáciu do sa dostaneme na hodnotu null zakončenie, nie? 1190 01:03:12,390 --> 01:03:14,930 Takže to, čo by to mohlo vyzerať? 1191 01:03:14,930 --> 01:03:17,760 1192 01:03:17,760 --> 01:03:21,880 Chceme aj, alebo chceme hviezda aj je otázka? 1193 01:03:21,880 --> 01:03:26,160 1194 01:03:26,160 --> 01:03:29,255 Je null zakončenie adresa alebo niečo, čo sa nachádza na adrese? 1195 01:03:29,255 --> 01:03:31,420 1196 01:03:31,420 --> 01:03:33,660 Nachádza sa na adresu, nie? 1197 01:03:33,660 --> 01:03:38,420 >> Takže potrebujeme dereferencia, čo je tu, pretože je to len nejaký adresa. 1198 01:03:38,420 --> 01:03:44,350 Ak chcete skutočne dostať na začiatok musíme dereferencia to 1199 01:03:44,350 --> 01:03:46,770 takže sme vlastne dostať to, čo je v tomto prvom mieste. 1200 01:03:46,770 --> 01:03:48,690 1201 01:03:48,690 --> 01:03:52,910 Takže ak budeme robiť hrať aj to, čo nie chceme, aby sa vyrovnal? 1202 01:03:52,910 --> 01:03:53,885 1203 01:03:53,885 --> 01:03:54,760 Divákov: spätné lomítko? 1204 01:03:54,760 --> 01:03:57,760 1205 01:03:57,760 --> 01:03:59,260 >> ALLISON BUCHHOLTZ-AU: tam. 1206 01:03:59,260 --> 01:04:01,430 Znamená to, že zmysel pre každého? 1207 01:04:01,430 --> 01:04:05,620 Musíme ísť do nášho reťazca a uistite sa, že to nie je koniec. 1208 01:04:05,620 --> 01:04:07,200 1209 01:04:07,200 --> 01:04:08,990 A potom môžeme len aktualizovať takhle. 1210 01:04:08,990 --> 01:04:09,680 Normálne aktualizácie. 1211 01:04:09,680 --> 01:04:11,910 1212 01:04:11,910 --> 01:04:15,070 Tak ak sa jedná o met, čo musíme urobiť? 1213 01:04:15,070 --> 01:04:17,700 1214 01:04:17,700 --> 01:04:18,852 >> Divákov: Dĺžka a a. 1215 01:04:18,852 --> 01:04:20,656 1216 01:04:20,656 --> 01:04:21,560 >> ALLISON BUCHHOLTZ-AU: Mm-hm. 1217 01:04:21,560 --> 01:04:25,540 A potom sa po slučke for, ukončí, čo chceme vrátiť? 1218 01:04:25,540 --> 01:04:27,082 1219 01:04:27,082 --> 01:04:27,790 Divákov: dĺžka? 1220 01:04:27,790 --> 01:04:28,623 ALLISON BUCHHOLTZ-AU: Dĺžka. 1221 01:04:28,623 --> 01:04:29,910 1222 01:04:29,910 --> 01:04:30,760 Tu to je. 1223 01:04:30,760 --> 01:04:33,790 1224 01:04:33,790 --> 01:04:37,810 Je zrejmé, že mäso je tento je pochopenie tohto cyklu for. 1225 01:04:37,810 --> 01:04:39,280 1226 01:04:39,280 --> 01:04:41,090 Má každý si, ako to funguje? 1227 01:04:41,090 --> 01:04:42,460 1228 01:04:42,460 --> 01:04:44,170 Som rád, že prejsť to znova. 1229 01:04:44,170 --> 01:04:48,400 >> Divákov: Druhá časť, takže hviezdou aj tam, 1230 01:04:48,400 --> 01:04:51,834 to je adresa first-- 1231 01:04:51,834 --> 01:04:53,250 ALLISON BUCHHOLTZ-AU: To nie je adresa. 1232 01:04:53,250 --> 01:04:54,142 To je to, čo je na. 1233 01:04:54,142 --> 01:04:55,600 Divákov: To je naozaj tam. 1234 01:04:55,600 --> 01:04:57,475 ALLISON BUCHHOLTZ-AU: To je to, čo je v skutočnosti tam. 1235 01:04:57,475 --> 01:05:01,280 Tak toto je saying-- nechať mi, aby som to lepšie. 1236 01:05:01,280 --> 01:05:07,940 Tak toto je 0x04 a ja som jednoducho ísť hovoriť budem, aby sa tento moje meno. 1237 01:05:07,940 --> 01:05:14,531 1238 01:05:14,531 --> 01:05:15,030 OK. 1239 01:05:15,030 --> 01:05:17,456 1240 01:05:17,456 --> 01:05:19,080 Áno, viem, že mám kvíz recenzia večer. 1241 01:05:19,080 --> 01:05:20,620 1242 01:05:20,620 --> 01:05:21,540 Veľa kvíz recenziu. 1243 01:05:21,540 --> 01:05:23,500 1244 01:05:23,500 --> 01:05:26,620 Takže povedzme, že tento reťazec je moje meno, Allison. 1245 01:05:26,620 --> 01:05:28,600 Trochu chaotický, ale je to tam. 1246 01:05:28,600 --> 01:05:33,640 A S predstavuje umiestnenie kde začína reťazec, 1247 01:05:33,640 --> 01:05:41,950 takže budem robiť to real-- to je adresa, 1248 01:05:41,950 --> 01:05:45,000 kde reťazec začína, nie? 1249 01:05:45,000 --> 01:05:48,560 >> Takže to, čo tu robíme, je, že chceme, aby pomocou ukazovateľa iterovat. 1250 01:05:48,560 --> 01:05:49,920 1251 01:05:49,920 --> 01:05:56,870 Tak sme sa vytvoriť nejaký ukazovateľ, i, ktoré tiež sa rovná začiatku reťazca. 1252 01:05:56,870 --> 01:05:57,880 1253 01:05:57,880 --> 01:06:03,820 A v každom bode, chceme ďalej prechádza poľom 1254 01:06:03,820 --> 01:06:07,570 tu, kým hit zakončený nulovým znakom. 1255 01:06:07,570 --> 01:06:12,320 Tak sme sa vždy chcú zistiť, čo je v každej z týchto adries. 1256 01:06:12,320 --> 01:06:15,730 >> Tak sme dereferencia aj tak, že Prvýkrát sme to my 1257 01:06:15,730 --> 01:06:17,810 hovoria, OK, čo je na adrese 0x04? 1258 01:06:17,810 --> 01:06:19,060 1259 01:06:19,060 --> 01:06:19,720 Je to. 1260 01:06:19,720 --> 01:06:20,660 OK, sme dobrí. 1261 01:06:20,660 --> 01:06:21,770 Prírastok dĺžky. 1262 01:06:21,770 --> 01:06:22,790 Presunúť na ďalšie. 1263 01:06:22,790 --> 01:06:32,410 Takže Já-- pamätať umiestnenie ukazovateľov nárast o veľkosť, čo sa im už ukazuje. 1264 01:06:32,410 --> 01:06:35,320 Takže v tomto prípade, pretože je to char, bude to aktualizovať jeden. 1265 01:06:35,320 --> 01:06:38,755 Takže teraz budeme pozerať na 5, čo znamená, že sa to deje tu. 1266 01:06:38,755 --> 01:06:39,860 1267 01:06:39,860 --> 01:06:43,440 Tak to hovorí OK, prejdite na 0x05. 1268 01:06:43,440 --> 01:06:44,270 Čo je tam? 1269 01:06:44,270 --> 01:06:44,930 Je to l. 1270 01:06:44,930 --> 01:06:47,870 A to bude pokračovať v tom, že kým nenarazí tento. 1271 01:06:47,870 --> 01:06:50,990 A hovorí, že OK, čo je v nech adresa je toto? 1272 01:06:50,990 --> 01:06:53,060 Null zakončenie, OK. 1273 01:06:53,060 --> 01:06:53,870 Exit. 1274 01:06:53,870 --> 01:06:55,240 A práve návrat dĺžku. 1275 01:06:55,240 --> 01:06:56,370 1276 01:06:56,370 --> 01:06:59,800 Vzhľadom k tomu, čo potrebujete, čo je vlastne na že adresa, nie je sama o sebe adresy. 1277 01:06:59,800 --> 01:07:03,110 1278 01:07:03,110 --> 01:07:05,790 >> Existuje len veľmi málo miest, kde skutočne potrebujete adresu. 1279 01:07:05,790 --> 01:07:08,720 Väčšinu času, kedy používate, a to 1280 01:07:08,720 --> 01:07:12,424 keď ste prvýkrát priradenie ukazovatele alebo pri 1281 01:07:12,424 --> 01:07:14,090 ste odovzdaním do inej funkcie. 1282 01:07:14,090 --> 01:07:16,350 1283 01:07:16,350 --> 01:07:21,330 OK, všetci tam dobre? 1284 01:07:21,330 --> 01:07:21,830 Druh? 1285 01:07:21,830 --> 01:07:23,810 1286 01:07:23,810 --> 01:07:25,040 OK. 1287 01:07:25,040 --> 01:07:28,210 >> Tak vyzerá to, že máme zostáva asi 12 minút, 1288 01:07:28,210 --> 01:07:31,340 tak pôjdeme na možno naša posledná problém, 1289 01:07:31,340 --> 01:07:34,230 a potom je tu akýkoľvek pojmy, ktoré majú prísť 1290 01:07:34,230 --> 01:07:36,830 do tej doby môžeme rýchlo prejsť cez to. 1291 01:07:36,830 --> 01:07:42,310 >> Takže Switching Gears je posledná Problém, switch. 1292 01:07:42,310 --> 01:07:44,970 1293 01:07:44,970 --> 01:07:49,450 Takže vašou úlohou je prepísať tak, že sa chová rovnako 1294 01:07:49,450 --> 01:07:50,580 ale nepoužíva spínača. 1295 01:07:50,580 --> 01:07:53,684 1296 01:07:53,684 --> 01:07:54,666 Kriedových ruky. 1297 01:07:54,666 --> 01:08:11,630 1298 01:08:11,630 --> 01:08:13,420 Takže nejaké otázky týkajúce sa tohto off bat? 1299 01:08:13,420 --> 01:08:15,420 1300 01:08:15,420 --> 01:08:15,920 Žiadna? 1301 01:08:15,920 --> 01:08:16,420 OK. 1302 01:08:16,420 --> 01:08:17,920 1303 01:08:17,920 --> 01:08:22,170 Má každý pochopiť, že ak prípad nemá nič po tom, 1304 01:08:22,170 --> 01:08:25,029 to znamená, že by mal nasledovať ďalší krok? 1305 01:08:25,029 --> 01:08:28,200 Tak prípade 1 a 2 v tomto prípade robiť presne to isté. 1306 01:08:28,200 --> 01:08:31,153 1307 01:08:31,153 --> 01:08:32,444 Niekedy bod zmätku. 1308 01:08:32,444 --> 01:09:32,700 1309 01:09:32,700 --> 01:09:33,488 >> Dobrá. 1310 01:09:33,488 --> 01:09:34,404 Každý, kto má nejaké nápady? 1311 01:09:34,404 --> 01:09:36,364 1312 01:09:36,364 --> 01:09:36,864 Jo? 1313 01:09:36,864 --> 01:09:40,120 >> Divákov: takže si môžete proste if. 1314 01:09:40,120 --> 01:09:41,140 >> ALLISON BUCHHOLTZ-AU: Mm-hm. 1315 01:09:41,140 --> 01:09:42,880 Takže to, čo je naše prvé? 1316 01:09:42,880 --> 01:09:48,120 >> Divákov: Ak n presne rovná 1, a 2 linky pre alebo n sa rovná 1317 01:09:48,120 --> 01:09:51,059 sa rovná 2, vytlačte malý. 1318 01:09:51,059 --> 01:09:57,760 1319 01:09:57,760 --> 01:09:59,520 A potom môžete robiť else if? 1320 01:09:59,520 --> 01:10:02,160 Alebo môžete jednoducho urobiť, ak? 1321 01:10:02,160 --> 01:10:03,650 >> ALLISON BUCHHOLTZ-AU: Môžete robiť else if? 1322 01:10:03,650 --> 01:10:05,274 >> Divákov: Bolo jedno, či ste urobili, keby? 1323 01:10:05,274 --> 01:10:06,320 ALLISON BUCHHOLTZ-AU: Tak to robí. 1324 01:10:06,320 --> 01:10:10,160 Má anyone-- áno, bude mať rovnaký výkon 1325 01:10:10,160 --> 01:10:13,930 Ak používate len IFS versus Ak používate inde IFS. 1326 01:10:13,930 --> 01:10:17,090 Môže vy myslíte, že z dôvodov, prečo by ste mohli chcieť použiť else 1327 01:10:17,090 --> 01:10:18,680 ak proti mnohým investičných fondov? 1328 01:10:18,680 --> 01:10:20,260 1329 01:10:20,260 --> 01:10:21,510 Má s účinnosťou. 1330 01:10:21,510 --> 01:10:22,225 Jo? 1331 01:10:22,225 --> 01:10:24,783 >> Divákov: To by skontrolovať všetky keby zakaždým. 1332 01:10:24,783 --> 01:10:26,076 1333 01:10:26,076 --> 01:10:28,110 >> ALLISON BUCHHOLTZ-AU: Takže aj keď to hit tejto prvej, 1334 01:10:28,110 --> 01:10:29,880 bolo by to na kontrolu každý druhý. 1335 01:10:29,880 --> 01:10:36,690 Takže chcete použiť, pokiaľ IFS inde v prípadoch, kde len jeden z nich bude vždy platiť. 1336 01:10:36,690 --> 01:10:39,380 Takže vzájomné vylúčenie je to, čo sa snažíme povedať. 1337 01:10:39,380 --> 01:10:41,410 1338 01:10:41,410 --> 01:10:46,550 Ak máte veľa investičných fondov, to znamená, že možno viac ako jeden z nich 1339 01:10:46,550 --> 01:10:49,630 záležitosti, a možno viac než jeden z nich môže byť pravda. 1340 01:10:49,630 --> 01:10:51,910 A chcete obaja vykonať v prípade, že sú pravdivé. 1341 01:10:51,910 --> 01:10:57,180 Ak chcete iba jeden z nich do práce v týchto vzájomne sa vylučujúcich prípadov, 1342 01:10:57,180 --> 01:11:00,790 Ak chcete použiť else if, pretože to všetko má čo do činenia s účinnosťou. 1343 01:11:00,790 --> 01:11:05,350 Váš kód je proste lepšia určený pokiaľ sa dodržiava túto prax. 1344 01:11:05,350 --> 01:11:07,330 Takže v tomto prípade budeme mať else if. 1345 01:11:07,330 --> 01:11:09,080 A to by bolo? 1346 01:11:09,080 --> 01:11:11,890 >> Divákov: n sa rovná rovná 3. 1347 01:11:11,890 --> 01:11:12,765 ALLISON BUCHHOLTZ-AU: Perfect. 1348 01:11:12,765 --> 01:11:19,420 1349 01:11:19,420 --> 01:11:20,445 Tlačové médium. 1350 01:11:20,445 --> 01:11:25,190 1351 01:11:25,190 --> 01:11:29,930 A potom naša posledná prípad, čo máme? 1352 01:11:29,930 --> 01:11:31,495 Else alebo else if? 1353 01:11:31,495 --> 01:11:32,120 Divákov: Else. 1354 01:11:32,120 --> 01:11:33,450 1355 01:11:33,450 --> 01:11:37,900 >> ALLISON BUCHHOLTZ-AU: Do my want-- chcete else if, pretože máme konkrétne prípady. 1356 01:11:37,900 --> 01:11:39,270 Nie je to tak trochu chytiť všetky. 1357 01:11:39,270 --> 01:11:44,247 Ak by ste mali predvolené v switch-- pamätať v prepínači môžete mať prípad, 1358 01:11:44,247 --> 01:11:45,330 a potom máte predvolené. 1359 01:11:45,330 --> 01:11:48,760 Ak by ste mali predvolené, to je druh vášho else tam. 1360 01:11:48,760 --> 01:11:52,180 Ale ak to má len prípady, to znamená, že budete potrebovať 1361 01:11:52,180 --> 01:11:54,315 skontrolovať, či je to každý z nich. 1362 01:11:54,315 --> 01:11:57,755 Takže v tomto prípade by to 4 alebo 5. 1363 01:11:57,755 --> 01:12:00,480 1364 01:12:00,480 --> 01:12:01,450 Chceme vytlačiť. 1365 01:12:01,450 --> 01:12:02,990 1366 01:12:02,990 --> 01:12:03,630 Je to veľký. 1367 01:12:03,630 --> 01:12:06,640 1368 01:12:06,640 --> 01:12:07,509 A je to. 1369 01:12:07,509 --> 01:12:08,800 A to by váš program. 1370 01:12:08,800 --> 01:12:11,890 1371 01:12:11,890 --> 01:12:17,050 >> Takže v tomto prípade, ak by sme mal predvolený niečo, 1372 01:12:17,050 --> 01:12:20,470 budeme mať inde v bez ohľadu na to chcel, aby sme urobili. 1373 01:12:20,470 --> 01:12:23,365 Tak to je dobrá rozdiel spoznať, pochopiť. 1374 01:12:23,365 --> 01:12:25,368 1375 01:12:25,368 --> 01:12:27,790 Znamená to, že pomôže s ovládaním pre vás? 1376 01:12:27,790 --> 01:12:28,800 Perfect. 1377 01:12:28,800 --> 01:12:29,390 Dobrá. 1378 01:12:29,390 --> 01:12:31,320 1379 01:12:31,320 --> 01:12:33,340 >> Máme asi osem minút pred. 1380 01:12:33,340 --> 01:12:37,090 Myslíte si, chlapci nejaké ďalšie pojmy na vysokej úrovni? 1381 01:12:37,090 --> 01:12:38,720 Otázky všeobecne? 1382 01:12:38,720 --> 01:12:39,220 Áno? 1383 01:12:39,220 --> 01:12:42,860 >> Divákov: Mal som otázka o jeden z nich 1384 01:12:42,860 --> 01:12:46,257 že sa o náhodný číslo generátor na kvíz nula. 1385 01:12:46,257 --> 01:12:47,340 ALLISON BUCHHOLTZ-AU: Oh, že jeden. 1386 01:12:47,340 --> 01:12:51,460 Ten je ďalšia, kde to je matematika than-- áno. 1387 01:12:51,460 --> 01:12:53,800 1388 01:12:53,800 --> 01:12:59,452 Riešenie that-- aj ja, keď Vidím to tak, že som ako to, čo to je. 1389 01:12:59,452 --> 01:13:00,590 >> Divákov: Bolo to číslo 7. 1390 01:13:00,590 --> 01:13:02,720 1391 01:13:02,720 --> 01:13:05,310 >> ALLISON BUCHHOLTZ-AU: Je to divné, podľa môjho názoru. 1392 01:13:05,310 --> 01:13:07,260 1393 01:13:07,260 --> 01:13:11,630 Takže v podstate chcete použiť drand48, ktorý 1394 01:13:11,630 --> 01:13:15,420 bude vám niektoré číslo medzi 0 a 1. 1395 01:13:15,420 --> 01:13:21,200 A chcete ho použiť, aby že ste nejako dostať je-- 1396 01:13:21,200 --> 01:13:26,690 a je to oveľa väčší problém matematiky mi, ako si myslím problém SK. 1397 01:13:26,690 --> 01:13:29,040 1398 01:13:29,040 --> 01:13:37,845 >> Spôsob, akým budete robiť to-- a Niekedy to bude len takto. 1399 01:13:37,845 --> 01:13:39,340 1400 01:13:39,340 --> 01:13:41,090 Opäť sa jedná o prípady, keď je to druh 1401 01:13:41,090 --> 01:13:46,310 ako sa napísať, čo vás môže a čiastočné úveru. 1402 01:13:46,310 --> 01:13:47,800 1403 01:13:47,800 --> 01:13:51,510 Ak chceme teda o návrate vieme, že sme 1404 01:13:51,510 --> 01:13:54,182 bude používať drand48 nejakým spôsobom, nie? 1405 01:13:54,182 --> 01:13:55,640 Tak prečo nie my len poznamenať, že dole. 1406 01:13:55,640 --> 01:13:58,286 1407 01:13:58,286 --> 01:13:59,410 Používame ju nejakým spôsobom. 1408 01:13:59,410 --> 01:14:00,780 1409 01:14:00,780 --> 01:14:04,190 Spôsob, akým majú vy používate to je 1410 01:14:04,190 --> 01:14:08,175 takto, čo sa pokúsim vysvetliť. 1411 01:14:08,175 --> 01:14:10,200 1412 01:14:10,200 --> 01:14:15,340 >> Takže v podstate, čo sa tu deje Je tomu tak preto, že je medzi 0 a 1, 1413 01:14:15,340 --> 01:14:19,300 to, čo robíte, je ste vynásobením by-- to je veľmi matematický otázka. 1414 01:14:19,300 --> 01:14:22,010 Len plnej disclaimer, to je úplne matematika otázka. 1415 01:14:22,010 --> 01:14:23,990 Čo robíte, je vzhľadom k 0 a 1 a 1416 01:14:23,990 --> 01:14:26,460 chcete, aby to bolo v rámci tento rozsah, v skutočnosti 1417 01:14:26,460 --> 01:14:29,360 prísť na to, aký veľký rozsah, a potom 1418 01:14:29,360 --> 01:14:32,710 ste v podstate mierka to, čo je to, čo to robí. 1419 01:14:32,710 --> 01:14:39,050 >> b mínus vám tento rozsah, Rozdiel medzi týmito číslami. 1420 01:14:39,050 --> 01:14:44,040 Môžete násobiť medzi 0 a 1, a potom sa pridá len 1421 01:14:44,040 --> 01:14:48,870 Znamená to, že vaša mierky to tak, že je medzi a a b, 1422 01:14:48,870 --> 01:14:52,377 ktoré som nemal naozaj rád tento problém. 1423 01:14:52,377 --> 01:14:58,380 1424 01:14:58,380 --> 01:15:01,790 Ako som už povedal, tento kvíz znamená, že zahŕňa 1425 01:15:01,790 --> 01:15:04,110 ľudia, ktorí sú menej pohodlné, niekde medzi, 1426 01:15:04,110 --> 01:15:05,070 a pohodlnejšie. 1427 01:15:05,070 --> 01:15:07,550 Takže keď oni urobili to tak, že to bolo niečo 1428 01:15:07,550 --> 01:15:10,050 že všetci u menej pohodlné miesto dostane, 1429 01:15:10,050 --> 01:15:12,259 budeme mať príliš veľa ľudia bodovania zdokonaľuje, 1430 01:15:12,259 --> 01:15:13,925 a pohodlnejšie bude nudiť. 1431 01:15:13,925 --> 01:15:14,980 1432 01:15:14,980 --> 01:15:18,970 >> Takže sa vždy jedná druh hlavolam otázok 1433 01:15:18,970 --> 01:15:22,695 ktoré majú byť o niečo ťažšie že nejakú kreatívne myslenie. 1434 01:15:22,695 --> 01:15:25,030 1435 01:15:25,030 --> 01:15:27,790 Keď je vidieť, nie príliš pne. 1436 01:15:27,790 --> 01:15:31,720 Rozhodne by som povedal salto prostredníctvom testu ako prvý. 1437 01:15:31,720 --> 01:15:35,020 Riešenie problémov že viete, že môžete, 1438 01:15:35,020 --> 01:15:38,480 preto, že to k ničomu zaseknete na problém, keď tam sú tri 1439 01:15:38,480 --> 01:15:42,090 alebo štyri alebo päť na strane potom, čo si môžete ľahko urobiť. 1440 01:15:42,090 --> 01:15:45,331 1441 01:15:45,331 --> 01:15:48,520 >> Divákov: Prečo presne sa vám vynásobte to o rozsahu? 1442 01:15:48,520 --> 01:15:54,935 >> ALLISON BUCHHOLTZ-AU: Môžete násobiť rozsah, ktorý ste víš-- je to ako, ako veľmi po 1443 01:15:54,935 --> 01:15:55,485 chceš? 1444 01:15:55,485 --> 01:15:57,840 1445 01:15:57,840 --> 01:16:02,130 Takže si môžete myslieť, pretože to vracia číslo medzi 0 a 1, 1446 01:16:02,130 --> 01:16:03,890 môžete si ju v percentách. 1447 01:16:03,890 --> 01:16:12,195 Takže je to v podstate hovorí, ak máme Naše číslo riadku tu, je tu, 1448 01:16:12,195 --> 01:16:13,840 a b je tu. 1449 01:16:13,840 --> 01:16:19,170 Si ako koľko za to je? 1450 01:16:19,170 --> 01:16:20,010 Je všetko, čo robíte. 1451 01:16:20,010 --> 01:16:24,920 Takže ste sa pýtal na percento tohto rozsahu, ktorý 1452 01:16:24,920 --> 01:16:26,170 je to, čo to dáva vám. 1453 01:16:26,170 --> 01:16:30,915 A potom ste v podstate len mierka to pridaním. 1454 01:16:30,915 --> 01:16:32,302 Je to matematický hlavolam. 1455 01:16:32,302 --> 01:16:35,400 1456 01:16:35,400 --> 01:16:39,060 >> Ak tam bol nejaký last minute poradenstvo, I by som listovať otázky, 1457 01:16:39,060 --> 01:16:41,660 zistiť, ktoré z nich si viem, že rád, oh Mám to. 1458 01:16:41,660 --> 01:16:43,196 1459 01:16:43,196 --> 01:16:45,820 Takmer určite sa chystajú byť otázky, že nebudete vedieť, 1460 01:16:45,820 --> 01:16:49,580 alebo že budete mať čas pre, takže hit svoje silné stránky, OK? 1461 01:16:49,580 --> 01:16:50,990 Vy sa chystáte na veľký. 1462 01:16:50,990 --> 01:16:52,740 Existuje veľa Otázky z nejakého dôvodu, 1463 01:16:52,740 --> 01:16:57,140 tak, že budete mať čas na druh mať príležitosť 1464 01:16:57,140 --> 01:16:59,330 ukázať, čo ste naozaj dobrí. 1465 01:16:59,330 --> 01:17:02,370 Takže je to v poriadku, ak ste nie je dobrý vo všetkom. 1466 01:17:02,370 --> 01:17:03,371 Zahrajte si na svoje silné stránky. 1467 01:17:03,371 --> 01:17:03,870 Áno? 1468 01:17:03,870 --> 01:17:06,536 >> Divákov: Takže je to bude vrátiť niečo, čo je skrátený? 1469 01:17:06,536 --> 01:17:10,810 1470 01:17:10,810 --> 01:17:15,015 Áno, bude to, pretože drandí vráti medzi 0 a 1. 1471 01:17:15,015 --> 01:17:17,459 1472 01:17:17,459 --> 01:17:19,250 Bude to vrátiť int, pretože to bude skrátiť 1473 01:17:19,250 --> 01:17:22,933 keď pridáme alebo násobiť to. 1474 01:17:22,933 --> 01:17:27,670 1475 01:17:27,670 --> 01:17:28,442 V pohode. 1476 01:17:28,442 --> 01:17:29,525 Na poslednú chvíľu otázky? 1477 01:17:29,525 --> 01:17:31,310 1478 01:17:31,310 --> 01:17:32,615 >> Vy sa chystáte urobiť skvelé. 1479 01:17:32,615 --> 01:17:34,440 Budeš mať báječný. 1480 01:17:34,440 --> 01:17:37,100 A aj keby nie, bude tam byť candy tu budúci týždeň. 1481 01:17:37,100 --> 01:17:39,040 1482 01:17:39,040 --> 01:17:40,020 A ja ťa milujem. 1483 01:17:40,020 --> 01:17:41,270 Aj budete milovať ľudí bez ohľadu na to. 1484 01:17:41,270 --> 01:17:42,550 1485 01:17:42,550 --> 01:17:43,930 Dobre, všetci, veľa šťastia. 1486 01:17:43,930 --> 01:17:44,680 Majú veľký čas. 1487 01:17:44,680 --> 01:17:45,620 1488 01:17:45,620 --> 01:17:46,620 Budeš v poriadku. 1489 01:17:46,620 --> 01:17:47,370 A viete čo? 1490 01:17:47,370 --> 01:17:50,310 Za dva dni to bude byť u konca, zatiaľ čo ja 1491 01:17:50,310 --> 01:17:53,675 dve midterms vo štvrtok, takže aspoň vy bude hotovo. 1492 01:17:53,675 --> 01:17:56,550 Tak jo, uvidíme sa chalani budúci týždeň. 1493 01:17:56,550 --> 01:17:58,208