1 00:00:00,000 --> 00:00:11,046 2 00:00:11,046 --> 00:00:12,170 ALLISON BUCHHOLTZ-AU: Hey, tothom. 3 00:00:12,170 --> 00:00:13,560 Benvinguts a la secció. 4 00:00:13,560 --> 00:00:17,320 Avui és només serà tot concurs revisar per al seu examen dimecres. 5 00:00:17,320 --> 00:00:20,060 Espero que tothom recorda que tenen un concurs per al Dimecres. 6 00:00:20,060 --> 00:00:22,560 I si no ho va fer, així, ara que has estat recordat. 7 00:00:22,560 --> 00:00:26,486 Així dimecres assegurar vostè es presenta per a la classe o com altres allotjaments 8 00:00:26,486 --> 00:00:26,985 necessari. 9 00:00:26,985 --> 00:00:27,845 10 00:00:27,845 --> 00:00:29,220 Vostès seran impressionant. 11 00:00:29,220 --> 00:00:30,440 Serà gran. 12 00:00:30,440 --> 00:00:34,910 I jo faré tot el que pugui per ajudar a preparar-se avui per al seu concurs 13 00:00:34,910 --> 00:00:35,470 ara. 14 00:00:35,470 --> 00:00:39,960 I també en el cas que vostè no sap, hi ha una sessió de revisió àmplia curs 15 00:00:39,960 --> 00:00:45,840 avui a les 7 en punt de Laboratoris del Nord-oest B103 habitació. 16 00:00:45,840 --> 00:00:49,950 Vostè em pot veure de nou per fer un bis com Vaig a portar part d'aquesta sessió de revisió 17 00:00:49,950 --> 00:00:50,510 també. 18 00:00:50,510 --> 00:00:53,218 Així que si vostè no pot obtenir suficient de mi Ara, vostè pot venir una altra vegada aquesta nit. 19 00:00:53,218 --> 00:00:54,130 20 00:00:54,130 --> 00:00:56,060 >> Molt bé pel que el primer és el primer ,. 21 00:00:56,060 --> 00:00:59,630 A només alguns consells de concurs abans que en realitat bussejar en les revisions. 22 00:00:59,630 --> 00:01:04,160 Així com amb qualsevol examen, la pràctica sens dubte ajudarà a terme. 23 00:01:04,160 --> 00:01:09,260 Hi ha exàmens del passat sis o set anys de l'existència, 24 00:01:09,260 --> 00:01:12,480 així que això és una gran quantitat de pràctica material per a que vostès tenen. 25 00:01:12,480 --> 00:01:15,340 I de fet, avui en dia és en realitat va a anar sobre qualsevol tema 26 00:01:15,340 --> 00:01:18,900 que vostès tenen preguntes sobre com així com treballar a través de problemes de pràctica 27 00:01:18,900 --> 00:01:20,360 de concurs zero. 28 00:01:20,360 --> 00:01:22,690 Així que vaig a vomitar zero concurs des de l'any passat aquí, 29 00:01:22,690 --> 00:01:26,410 i podem treballar amb qualsevol problema que vostès li agradaria. 30 00:01:26,410 --> 00:01:27,370 >> Així que la pràctica. 31 00:01:27,370 --> 00:01:29,310 Vas a començar a fer això avui. 32 00:01:29,310 --> 00:01:30,230 Codi en el paper. 33 00:01:30,230 --> 00:01:32,970 Així que sí, si tot el món en realitat podria sortir 34 00:01:32,970 --> 00:01:35,810 paper, que serà gran, perquè no ets 35 00:01:35,810 --> 00:01:41,470 tindrà l'equip en el examen i escriure el codi a mà 36 00:01:41,470 --> 00:01:44,190 és sovint molt més difícil que es podria esperar. 37 00:01:44,190 --> 00:01:46,680 Vostè està acostumat a només veient i escrivint, 38 00:01:46,680 --> 00:01:49,630 i vostè té el seu compilador ajudar-lo quan té errors, 39 00:01:49,630 --> 00:01:52,190 però no aconsegueix que en l'examen. 40 00:01:52,190 --> 00:01:55,140 Així que és realment important en realitat ser capaç d'escriure el codi, 41 00:01:55,140 --> 00:01:58,360 i que la memòria muscular de fer a mà realment l'ajudarà. 42 00:01:58,360 --> 00:01:59,720 43 00:01:59,720 --> 00:02:01,690 >> Així que estem posant una mica estreta. 44 00:02:01,690 --> 00:02:02,340 És dilluns. 45 00:02:02,340 --> 00:02:03,930 El seu examen és el dimecres. 46 00:02:03,930 --> 00:02:06,030 Però si tens temps, Definitivament agafar un 47 00:02:06,030 --> 00:02:10,199 dels exàmens de l'any passat o el anys abans sota la restricció de temps 48 00:02:10,199 --> 00:02:11,660 d'una hora i mitja. 49 00:02:11,660 --> 00:02:13,730 Només noquejar a una hora i mitja de temps, 50 00:02:13,730 --> 00:02:17,480 i seure per si mateix, i només el treball a través dels problemes 51 00:02:17,480 --> 00:02:19,962 com si estigués realment prendre-ho, perquè un 52 00:02:19,962 --> 00:02:23,295 de les coses més grans que sentim parlar les proves és que són molt llargs. 53 00:02:23,295 --> 00:02:24,900 54 00:02:24,900 --> 00:02:26,660 Es tracta d'una gran quantitat de material. 55 00:02:26,660 --> 00:02:30,850 Hi ha un munt de preguntes, i la majoria de la gent no pot acabar. 56 00:02:30,850 --> 00:02:34,660 Sé que estic totalment de no acabar les meves proves quan em van portar a la classe. 57 00:02:34,660 --> 00:02:37,180 >> En aquest sentit, com una menor secció còmode, 58 00:02:37,180 --> 00:02:40,570 entén que aquest curs està destinat per atendre les persones de tots els nivells. 59 00:02:40,570 --> 00:02:43,640 La raó per la qual hem de dividir menys còmode, en algun lloc entre, 60 00:02:43,640 --> 00:02:47,660 i més còmode és tipus de fer-la més justa. 61 00:02:47,660 --> 00:02:51,699 I si vostè és menys còmode, és no cal en si per aconseguir tot. 62 00:02:51,699 --> 00:02:53,990 Igual que si vostè estava rebent tot, ho faria probablement 63 00:02:53,990 --> 00:02:55,448 estar a la secció més còmode. 64 00:02:55,448 --> 00:03:00,160 Així que, òbviament, no pegar-se a si mateixos fins massa difícil si vostè no pot acabar l'examen. 65 00:03:00,160 --> 00:03:01,920 Presa de mi, jo no ho vaig fer. 66 00:03:01,920 --> 00:03:03,070 Segueixo sent un concentrador. 67 00:03:03,070 --> 00:03:04,630 Encara estic ajudant a ensenyar el curs. 68 00:03:04,630 --> 00:03:06,170 Vas a estar bé. 69 00:03:06,170 --> 00:03:06,670 Bé. 70 00:03:06,670 --> 00:03:08,740 I, finalment, dormir una mica. 71 00:03:08,740 --> 00:03:11,020 Òbviament amb qualsevol examen sempre diem això. 72 00:03:11,020 --> 00:03:13,610 Abarrotar la nit anterior i no aconseguir dormir 73 00:03:13,610 --> 00:03:16,390 fa no- potser sí que que funciona per a vostè, vagi per a ell. 74 00:03:16,390 --> 00:03:18,790 No obstant això, per a la gran majoria de gent, aconseguir una mica de son, 75 00:03:18,790 --> 00:03:22,390 deixant el seu descans cerebral i recuperar abans d'entrar en l'examen 76 00:03:22,390 --> 00:03:23,480 realment l'ajudarà. 77 00:03:23,480 --> 00:03:26,120 També hi haurà gairebé segurament dolços en l'examen, 78 00:03:26,120 --> 00:03:28,019 així que has d'esperar. 79 00:03:28,019 --> 00:03:29,310 Vostès van a fer molt bé. 80 00:03:29,310 --> 00:03:30,226 Va a estar bé. 81 00:03:30,226 --> 00:03:31,570 82 00:03:31,570 --> 00:03:36,190 I ara, en la següent hora i mitja em tractarà i preparar de la millor manera que puc. 83 00:03:36,190 --> 00:03:41,260 >> Així que tinc diapositives de, bàsicament, totes les seccions fins ara. 84 00:03:41,260 --> 00:03:45,874 Jo no vaig a anar a través de tots ells perquè això no és 85 00:03:45,874 --> 00:03:49,040 factible en una hora i mitja, així com treballar a través de problemes de pràctica. 86 00:03:49,040 --> 00:03:51,410 Així que en comptes que tinc una llista de temes. 87 00:03:51,410 --> 00:03:55,160 Aquestes són totes les coses que poguéssim interrogar a vostè a. 88 00:03:55,160 --> 00:03:56,950 89 00:03:56,950 --> 00:03:58,770 Si hi ha alguna cosa que realment salta a terme 90 00:03:58,770 --> 00:04:02,140 que vol anar més, que vull que em vagi més conceptualment, 91 00:04:02,140 --> 00:04:04,320 Puc tractar de donar vostè una visió general allà. 92 00:04:04,320 --> 00:04:07,690 O si vols saltar a la dreta en a fent problemes de pràctica junts, 93 00:04:07,690 --> 00:04:08,420 podem fer això. 94 00:04:08,420 --> 00:04:09,330 Tot depèn de vostès. 95 00:04:09,330 --> 00:04:10,770 No hi ha que molts de vostès. 96 00:04:10,770 --> 00:04:13,180 Així que és el que els agrada a vostès fer. 97 00:04:13,180 --> 00:04:15,667 Vull ser el més útil cap a vostès. 98 00:04:15,667 --> 00:04:16,827 99 00:04:16,827 --> 00:04:17,910 Així que vaig a deixar que acaba de veure. 100 00:04:17,910 --> 00:04:27,880 101 00:04:27,880 --> 00:04:30,500 >> AUDIÈNCIA: Una cosa és el gràfic que guardem 102 00:04:30,500 --> 00:04:33,290 dient sobre la pila i el munt. 103 00:04:33,290 --> 00:04:34,600 104 00:04:34,600 --> 00:04:37,434 Només la idea darrere això i el que això significa. 105 00:04:37,434 --> 00:04:38,350 ALLISON BUCHHOLTZ-AU: Sí, està bé. 106 00:04:38,350 --> 00:04:40,290 107 00:04:40,290 --> 00:04:43,216 Aquest és tot el camí a la final, així que em desplaço a través. 108 00:04:43,216 --> 00:04:45,490 >> AUDIÈNCIA: Nosaltres no hem de fer-ho ara, però el que sigui. 109 00:04:45,490 --> 00:04:47,070 110 00:04:47,070 --> 00:04:49,770 >> ALLISON BUCHHOLTZ-AU: Va haver-hi anything-- aquest. 111 00:04:49,770 --> 00:04:51,570 112 00:04:51,570 --> 00:04:53,555 És aquest tipus de difusa per a la gent? 113 00:04:53,555 --> 00:04:54,390 114 00:04:54,390 --> 00:04:55,640 AUDIÈNCIA: Sí, el segon que. 115 00:04:55,640 --> 00:04:57,718 I podem també què buffer overflow? 116 00:04:57,718 --> 00:04:58,926 ALLISON BUCHHOLTZ-AU: Desbordament de memòria intermèdia? 117 00:04:58,926 --> 00:04:59,820 Okay. 118 00:04:59,820 --> 00:05:03,460 Així buffer overflow és bastant fàcil només per parlar. 119 00:05:03,460 --> 00:05:08,217 Es tracta bàsicament de buffers es pensa en part de la memòria de matriu que té, oi? 120 00:05:08,217 --> 00:05:10,050 En general parlem de desbordament de memòria intermèdia quan 121 00:05:10,050 --> 00:05:15,160 vostè no està comprovant quant l'usuari està posant en, oi? 122 00:05:15,160 --> 00:05:18,540 I la idea de ser amb tampó de desbordament és 123 00:05:18,540 --> 00:05:21,535 que estan posant en el moment massa dades per a l'espai 124 00:05:21,535 --> 00:05:23,780 que ha assignat per a ells, oi? 125 00:05:23,780 --> 00:05:28,310 >> Així que si vostè diu, dóna em algun missatge, estem 126 00:05:28,310 --> 00:05:31,860 assumint que van a donar nosaltres un missatge de longitud raonable. 127 00:05:31,860 --> 00:05:33,910 Potser un parell de línies, el que sigui. 128 00:05:33,910 --> 00:05:35,150 Així que no comprovem. 129 00:05:35,150 --> 00:05:38,160 En el seu lloc, ens donen de menjar en un tot llibre que és un missatge, 130 00:05:38,160 --> 00:05:42,450 i es desborda la quantitat de espai que hem assignat per això. 131 00:05:42,450 --> 00:05:48,140 I el que passa és que podria sobreescriure llocs que no suposa. 132 00:05:48,140 --> 00:05:52,890 >> Així que sé que el professor va dir Malan alguna cosa sobre els atacs de desbordament de memòria intermèdia. 133 00:05:52,890 --> 00:05:59,050 Així que aquí és on l'entrada de la voluntat de l'usuari una certa quantitat massiva de dades en les esperances 134 00:05:59,050 --> 00:06:02,840 que sobreescriu passat Al final de la seva memòria intermèdia 135 00:06:02,840 --> 00:06:06,479 i reemplaça alguna cosa-- em pregunto Jo que tinc aquestes diapositives aquí. 136 00:06:06,479 --> 00:06:08,270 Jo no crec que tinguem aquelles diapositives d'aquí. 137 00:06:08,270 --> 00:06:09,960 138 00:06:09,960 --> 00:06:14,460 Però, bàsicament, que sobreescriu una part de la memòria 139 00:06:14,460 --> 00:06:17,780 que li permet l'accés a les parts del seu ordinador 140 00:06:17,780 --> 00:06:19,530 que no ho faria normalment tenir accés. 141 00:06:19,530 --> 00:06:20,750 142 00:06:20,750 --> 00:06:23,155 >> El més important amb desbordament de memòria intermèdia és només 143 00:06:23,155 --> 00:06:26,420 entendre que passa quan vostè no està 144 00:06:26,420 --> 00:06:29,210 comprovació de la quantitat del seu usuari està posant en. 145 00:06:29,210 --> 00:06:32,770 Quan vostè no és tipus de salvaguardar contra això. 146 00:06:32,770 --> 00:06:36,820 I en la seva forma més simple cosa, és només el teu usuari 147 00:06:36,820 --> 00:06:39,130 la introducció d'una quantitat massiva de dades en un intent 148 00:06:39,130 --> 00:06:45,090 sobreescriure una mica de seguretat part de la seva memòria. 149 00:06:45,090 --> 00:06:46,310 Això és tot el que és. 150 00:06:46,310 --> 00:06:49,810 >> Així que aquesta aquí, la pila i el munt. 151 00:06:49,810 --> 00:06:53,090 Bàsicament tot això és només una representació de la memòria 152 00:06:53,090 --> 00:06:54,449 i on es guarden les coses. 153 00:06:54,449 --> 00:06:56,240 Això és molt amable de Tot el que necessites saber. 154 00:06:56,240 --> 00:06:58,520 Les coses més grans que el que necessita saber són 155 00:06:58,520 --> 00:07:01,910 que-- m'ho dius a mi veure si hi ha un millor-- aquí. 156 00:07:01,910 --> 00:07:05,380 Així que aquesta és la pila d'aquí. 157 00:07:05,380 --> 00:07:08,410 >> Així que la pila té a veure amb totes les seves funcions 158 00:07:08,410 --> 00:07:10,140 que vostè està trucant en qualsevol moment donat. 159 00:07:10,140 --> 00:07:15,060 I el que és important recordar anar fora de la setmana passada amb malloc 160 00:07:15,060 --> 00:07:21,080 és que vostè realment no té control necessari sobre ell. 161 00:07:21,080 --> 00:07:24,780 Tot depèn de quan certa funcions estan executant. 162 00:07:24,780 --> 00:07:28,170 I quan s'estan executant, que tenen el que s'anomenen marcs de pila 163 00:07:28,170 --> 00:07:29,290 que pugen aquí. 164 00:07:29,290 --> 00:07:32,520 >> Per tant, tota mena de passa sense cap entrada de béns de vostè. 165 00:07:32,520 --> 00:07:33,630 166 00:07:33,630 --> 00:07:35,510 Vostè escriu el seu programa, i es deixa córrer, 167 00:07:35,510 --> 00:07:38,470 i la pila de tipus de presa tenir cura de si mateix, ja que necessita. 168 00:07:38,470 --> 00:07:42,940 Així que si en el principal que està trucant cub, que passarà per aquí. 169 00:07:42,940 --> 00:07:44,110 Es crearà un marc. 170 00:07:44,110 --> 00:07:48,330 Però no hi ha res que vostè fa de forma explícita per crear aquest marc de pila que no sigui 171 00:07:48,330 --> 00:07:51,430 escriure la funció, per començar, d'acord? 172 00:07:51,430 --> 00:07:56,500 >> Què és una espècie de baix de la seva el control és el munt amb malloc. 173 00:07:56,500 --> 00:08:01,950 Així que cada vegada que malloc alguna cosa, vostè està prenent memòria de la pila. 174 00:08:01,950 --> 00:08:05,110 I aquesta és la memòria que vostè tenir, per falta d'una paraula millor, 175 00:08:05,110 --> 00:08:10,300 control explícit sobre, perquè recordi amb malloc 176 00:08:10,300 --> 00:08:12,530 és bàsicament allà fins que diguin el contrari. 177 00:08:12,530 --> 00:08:14,890 Per a aquells de vostès que secció vist la setmana passada, 178 00:08:14,890 --> 00:08:17,670 que hi és fins que vostè li diu que es vagi. 179 00:08:17,670 --> 00:08:20,850 Serà allà a menys d'una altra manera no dit. 180 00:08:20,850 --> 00:08:24,750 Així que la pila és només una mica es pot pensar en com memòria 181 00:08:24,750 --> 00:08:26,150 que vostè té control sobre. 182 00:08:26,150 --> 00:08:29,010 I aquests són només els dos grans coses diferents. 183 00:08:29,010 --> 00:08:31,320 184 00:08:31,320 --> 00:08:38,330 >> A part d'això, vostè no ha de tenir de preocupar massa sobre pila i el munt 185 00:08:38,330 --> 00:08:42,159 preguntes o típicament més just si té paràmetres locals 186 00:08:42,159 --> 00:08:45,385 o una funció seria a la pila o munt. 187 00:08:45,385 --> 00:08:47,260 Òbviament, en aquest cas seria la pila. 188 00:08:47,260 --> 00:08:49,630 Si vostè està mallocing alguna cosa, On és que ve? 189 00:08:49,630 --> 00:08:50,129 El munt. 190 00:08:50,129 --> 00:08:51,147 191 00:08:51,147 --> 00:08:54,230 Si ens fixem en els concursos de pràctica, els són generalment el tipus de preguntes 192 00:08:54,230 --> 00:08:55,460 que tenen. 193 00:08:55,460 --> 00:08:57,340 >> Vostè no ha de preocupar massa en això. 194 00:08:57,340 --> 00:09:00,980 Et fiques en forma més explícita sobre de pila i el munt 195 00:09:00,980 --> 00:09:03,460 més tard o en altres classes de CS. 196 00:09:03,460 --> 00:09:06,220 Així que tenir una mena de idea general del que és això 197 00:09:06,220 --> 00:09:09,100 serà bo, que jo només una mica es va anar per dalt. 198 00:09:09,100 --> 00:09:10,650 199 00:09:10,650 --> 00:09:12,090 Qualssevol altres temes? 200 00:09:12,090 --> 00:09:12,590 Sí? 201 00:09:12,590 --> 00:09:14,923 >> AUDIÈNCIA: Es pot anar més punters de nou molt ràpidament? 202 00:09:14,923 --> 00:09:15,870 ALLISON BUCHHOLTZ-AU: Punters? 203 00:09:15,870 --> 00:09:18,470 Vols conceptual visió general de punters 204 00:09:18,470 --> 00:09:19,994 o practiques amb els punters? 205 00:09:19,994 --> 00:09:21,410 AUDIÈNCIA: Una cosa així com la sintaxi. 206 00:09:21,410 --> 00:09:22,360 ALLISON BUCHHOLTZ-AU: La sintaxi? 207 00:09:22,360 --> 00:09:22,860 Sí. 208 00:09:22,860 --> 00:09:32,090 209 00:09:32,090 --> 00:09:33,090 Bé, ens anem acostant. 210 00:09:33,090 --> 00:09:38,300 211 00:09:38,300 --> 00:09:42,040 Sí, així que això és només una mica d'alguna cosa quan es té una funció recursiva, 212 00:09:42,040 --> 00:09:45,954 cada vegada que la funció recursiva és anomenat, que només afegeix un altre marc de pila. 213 00:09:45,954 --> 00:09:47,870 Més o menys un exemple de la forma en què realment no 214 00:09:47,870 --> 00:09:50,330 tenir control sobre el marcs a la pica. 215 00:09:50,330 --> 00:09:54,010 216 00:09:54,010 --> 00:09:54,585 >> Acceptar, punters. 217 00:09:54,585 --> 00:09:57,120 218 00:09:57,120 --> 00:09:59,235 Molt bé, de manera que la creació de punters. 219 00:09:59,235 --> 00:10:00,300 220 00:10:00,300 --> 00:10:02,420 Recordeu, és només has d'escriure l'estrella. 221 00:10:02,420 --> 00:10:07,140 Així que qualsevol tipus de dades que vostè va a estar apuntant a. 222 00:10:07,140 --> 00:10:08,720 223 00:10:08,720 --> 00:10:11,440 Així que aquest seria un punter a un int. 224 00:10:11,440 --> 00:10:13,140 Això seria un punter a un char. 225 00:10:13,140 --> 00:10:14,740 Això seria un punter a un flotador. 226 00:10:14,740 --> 00:10:17,980 Així que és bàsicament el que sigui vols d'estar apuntant a, 227 00:10:17,980 --> 00:10:22,300 estrella és com es declara el punter, d'acord? 228 00:10:22,300 --> 00:10:26,200 >> Però llavors, evidentment, posa una mica complicat quan tens punter 229 00:10:26,200 --> 00:10:27,370 o vostè ha protagonitzar el que sigui. 230 00:10:27,370 --> 00:10:31,260 Així que la gran diferència és quan estàs declaring-- 231 00:10:31,260 --> 00:10:45,590 així que tenim tan some-- això pren alguns int estrelles. 232 00:10:45,590 --> 00:10:49,650 Així que això és una mica de punter crida x a un int, oi? 233 00:10:49,650 --> 00:10:54,600 Així que recorda el que això fa és aquesta flama al sistema de x. 234 00:10:54,600 --> 00:10:56,970 I això va a tenir una mica de direcció, ¿no? 235 00:10:56,970 --> 00:11:00,515 Així que diguem que aquesta és la nostra adreça. 236 00:11:00,515 --> 00:11:01,590 237 00:11:01,590 --> 00:11:03,570 Els punters tenen adreces. 238 00:11:03,570 --> 00:11:08,660 Així que el que diu és que en aquest ubicació, estem emmagatzemant un int. 239 00:11:08,660 --> 00:11:10,770 240 00:11:10,770 --> 00:11:15,770 >> Així que una altra manera podem pensar en això és que això és algun int. 241 00:11:15,770 --> 00:11:17,010 242 00:11:17,010 --> 00:11:20,350 Realment no hem assignat a res encara, però és només un int. 243 00:11:20,350 --> 00:11:31,540 Així que ens podem fer és si nosaltres STAR x és igual a 5, aquest es converteix en un 5, d'acord? 244 00:11:31,540 --> 00:11:38,350 Això diu anar a qualsevol x és apuntant a, de manera que anar a aquesta adreça 245 00:11:38,350 --> 00:11:40,210 i que sigui igual a 5. 246 00:11:40,210 --> 00:11:44,390 Així que assignem 5 a aquesta direcció, no? 247 00:11:44,390 --> 00:11:52,540 >> I llavors, si vostè fa això, això ens dóna l'adreça de. 248 00:11:52,540 --> 00:11:54,730 Aquesta és l'adreça de l'operador. 249 00:11:54,730 --> 00:11:57,700 Llavors, ¿quina és la direcció de x? 250 00:11:57,700 --> 00:11:58,809 No sabem. 251 00:11:58,809 --> 00:12:00,225 No hem dotat amb una adreça. 252 00:12:00,225 --> 00:12:03,000 253 00:12:03,000 --> 00:12:09,105 Podríem dir que és some-- ara ens vam una adreça, per la qual cosa la direcció és de 4. 254 00:12:09,105 --> 00:12:10,690 255 00:12:10,690 --> 00:12:16,980 I en realitat, si passem per alguna cosa com això, una mica del que vam fer. 256 00:12:16,980 --> 00:12:25,800 Així que treballar a través d'aquí-- Trobada ajuda si vostè dibuixa cap a fora punters. 257 00:12:25,800 --> 00:12:28,270 Si vostè està en el seu examen, el recomano dibuixar caixes. 258 00:12:28,270 --> 00:12:29,490 259 00:12:29,490 --> 00:12:33,310 >> Així que aquesta primera, int x és igual a 5. 260 00:12:33,310 --> 00:12:37,370 Això només vol dir que tenim una mica de col·locar a la memòria que és 5, no? 261 00:12:37,370 --> 00:12:38,540 262 00:12:38,540 --> 00:12:44,760 I la nostra taula aquí ens diu que és en la direcció 0x04. 263 00:12:44,760 --> 00:12:48,770 264 00:12:48,770 --> 00:12:50,280 I llavors es crea una mica de punter. 265 00:12:50,280 --> 00:12:51,820 266 00:12:51,820 --> 00:12:55,310 Així que anem a trencar això baix una alhora. 267 00:12:55,310 --> 00:12:59,820 Així que això crea alguns boxejar a un int, oi? 268 00:12:59,820 --> 00:13:01,970 Es va a celebrar alguna direcció d'un ell. 269 00:13:01,970 --> 00:13:03,470 Així que això és cert punter. 270 00:13:03,470 --> 00:13:04,940 271 00:13:04,940 --> 00:13:06,510 I aquesta guix és realment petit. 272 00:13:06,510 --> 00:13:07,472 273 00:13:07,472 --> 00:13:08,680 Així que tenim una mica de punter aquí. 274 00:13:08,680 --> 00:13:10,060 275 00:13:10,060 --> 00:13:13,530 I la nostra taula ens diu que és l'adreça és 0x08. 276 00:13:13,530 --> 00:13:15,190 277 00:13:15,190 --> 00:13:16,200 Refredar. 278 00:13:16,200 --> 00:13:23,240 I estem assignant a la direcció de x. 279 00:13:23,240 --> 00:13:26,330 >> Recordeu, els punters tenen adreces, d'acord? 280 00:13:26,330 --> 00:13:32,050 Així que si volem mantenir x, tenim utilitzar l'operador de direcció, la qual cosa 281 00:13:32,050 --> 00:13:36,520 és el símbol d'unió, per obtenir l'adreça de x, que en aquest cas, 0x04. 282 00:13:36,520 --> 00:13:39,130 283 00:13:39,130 --> 00:13:44,430 I després, si tenim una còpia int, això només 284 00:13:44,430 --> 00:13:48,060 crea alguna altra caixa que manté un int anomenada còpia. 285 00:13:48,060 --> 00:13:49,410 286 00:13:49,410 --> 00:13:55,330 I si assignem a esto-- de manera que aquest fa referència a ella. 287 00:13:55,330 --> 00:14:00,090 Així que diu anar a qualsevol punter de direcció es manté. 288 00:14:00,090 --> 00:14:05,330 Punter manté aquesta direcció, pel que ens agradaria anar per aquí, 289 00:14:05,330 --> 00:14:07,130 i diem, bé, el que està en ell? 290 00:14:07,130 --> 00:14:08,610 És maig. 291 00:14:08,610 --> 00:14:09,815 Llavors còpia es converteix en 5. 292 00:14:09,815 --> 00:14:11,800 293 00:14:11,800 --> 00:14:12,540 Té sentit? 294 00:14:12,540 --> 00:14:15,540 295 00:14:15,540 --> 00:14:25,020 >> Què passa si he tractat d'assignar és a només punter. 296 00:14:25,020 --> 00:14:26,476 297 00:14:26,476 --> 00:14:27,850 Què significa en realitat punter igual? 298 00:14:27,850 --> 00:14:31,126 299 00:14:31,126 --> 00:14:34,315 Només seria el punter conté, no? 300 00:14:34,315 --> 00:14:36,400 301 00:14:36,400 --> 00:14:37,580 I llavors, ¿què si ho vaig fer? 302 00:14:37,580 --> 00:14:38,922 303 00:14:38,922 --> 00:14:39,880 Quina seria la còpia ser ara? 304 00:14:39,880 --> 00:14:41,365 305 00:14:41,365 --> 00:14:42,275 >> AUDIÈNCIA: 0x08. 306 00:14:42,275 --> 00:14:44,150 ALLISON BUCHHOLTZ-AU: Sí, la direcció del nostre punter. 307 00:14:44,150 --> 00:14:46,832 308 00:14:46,832 --> 00:14:48,790 Qualsevol part d'això que necessita ser re-explica? 309 00:14:48,790 --> 00:14:50,170 310 00:14:50,170 --> 00:14:50,670 Refredar. 311 00:14:50,670 --> 00:14:53,350 312 00:14:53,350 --> 00:14:57,740 Definitivament hi ha una molt diversió problema en una prova 313 00:14:57,740 --> 00:15:00,100 que puguem sobre aquesta li dóna més pràctica. 314 00:15:00,100 --> 00:15:00,937 315 00:15:00,937 --> 00:15:03,270 Els nois de la setmana passada pot dir-li que no era tan dolent. 316 00:15:03,270 --> 00:15:06,000 Arribem a través d'un sencer carta, i tothom ho van fer molt bé. 317 00:15:06,000 --> 00:15:10,830 >> OK, així que això és informació general de la sintaxi dels punters. 318 00:15:10,830 --> 00:15:15,070 El més important és entendre com crear-los, fer referència, 319 00:15:15,070 --> 00:15:18,190 i la direcció, d'acord? 320 00:15:18,190 --> 00:15:18,690 Refredar. 321 00:15:18,690 --> 00:15:20,775 Qualssevol altres temes abans ens submergim en la pràctica. 322 00:15:20,775 --> 00:15:24,280 323 00:15:24,280 --> 00:15:28,011 A més, si estem passant per els problemes de la pràctica 324 00:15:28,011 --> 00:15:30,760 i hi ha una cosa que vostè vol un actualització sobre, podem fer això també. 325 00:15:30,760 --> 00:15:31,300 Té vostè alguna cosa? 326 00:15:31,300 --> 00:15:32,758 >> AUDIÈNCIA: Estructures i llistes enllaçades. 327 00:15:32,758 --> 00:15:35,130 ALLISON BUCHHOLTZ-AU: Les estructures i vinculat llistes, a D'acord. 328 00:15:35,130 --> 00:15:37,100 Així estructures. 329 00:15:37,100 --> 00:15:38,990 En realitat ens anem sobre aquesta nit també. 330 00:15:38,990 --> 00:15:40,130 331 00:15:40,130 --> 00:15:41,890 OK, així estructures. 332 00:15:41,890 --> 00:15:47,490 Les estructures són bàsicament només un mètode perquè vostè mantingui 333 00:15:47,490 --> 00:15:50,430 múltiples valors de tipus diferents. 334 00:15:50,430 --> 00:15:55,150 Així que amb un arsenal som constreta a un tipus de dades. 335 00:15:55,150 --> 00:16:00,965 La nostra gamma ja sigui ha de ser només números, o simplement ser caràcters, o simplement ser carrosses. 336 00:16:00,965 --> 00:16:02,240 337 00:16:02,240 --> 00:16:05,470 >> Però, potser necessitis contenir més que això. 338 00:16:05,470 --> 00:16:09,130 Potser vostè necessita per hold-- si estem parlant d'un estudiant, 339 00:16:09,130 --> 00:16:13,660 vostè va a tenir la seva casa, la seva Nombre d'identificació, la seva edat, lloc de residència, 340 00:16:13,660 --> 00:16:14,240 Oi? 341 00:16:14,240 --> 00:16:16,460 I tots els que són diferents tipus de tipus. 342 00:16:16,460 --> 00:16:18,680 Així que no es pot emmagatzemar els que tots en una matriu. 343 00:16:18,680 --> 00:16:21,750 >> Així que el que pot fer vostè és pot crear una estructura, la qual 344 00:16:21,750 --> 00:16:26,240 es pot pensar en com el teu propi tipus de dades de caràcter personal. 345 00:16:26,240 --> 00:16:29,130 Així que en lloc de només tenir ints i en lloc de només amb carrosses, 346 00:16:29,130 --> 00:16:33,210 vostè pot tenir un estudiant tipus que té tots aquests camps en el mateix. 347 00:16:33,210 --> 00:16:39,740 Així que la forma inicialitzem les nostres estructures és-- realitat 348 00:16:39,740 --> 00:16:44,921 ja que la meva escriptura és terrible, van a la transició a escriure. 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 >> Acceptar, per la qual cosa si volem crear un struct-- Jo només vaig a aquí baix. 352 00:16:53,150 --> 00:16:57,730 No tingueu en compte el principal en el que sigui que utilitzarem més endavant. 353 00:16:57,730 --> 00:17:02,330 Així que la forma en què vols fer és amb typedef struct. 354 00:17:02,330 --> 00:17:10,530 355 00:17:10,530 --> 00:17:13,349 I anem a trucar a aquest estudiant perquè això és el que jo estava fent servir. 356 00:17:13,349 --> 00:17:17,801 OK, així que typedef vol dir que ets la definició d'un nou tipus, d'acord? 357 00:17:17,801 --> 00:17:20,140 358 00:17:20,140 --> 00:17:24,355 Hi ha matisos en tant ho fa només una estructura enfront d'una estructura typedef. 359 00:17:24,355 --> 00:17:26,313 Per a tots els intents i propòsits, vostès són només 360 00:17:26,313 --> 00:17:29,490 suposarà que són aproximadament el mateix i just 361 00:17:29,490 --> 00:17:30,820 utilitzar typedef struct per ara. 362 00:17:30,820 --> 00:17:35,180 Es convertirà de forma més evident en la seva següent P estableix quines són aquestes diferències, 363 00:17:35,180 --> 00:17:37,960 però jo no crec que es necessita preocupar d'això ara mateix. 364 00:17:37,960 --> 00:17:40,360 M'agradaria molt que saber com crear-ne un, 365 00:17:40,360 --> 00:17:41,880 accedir-hi, i assignar [? valor. ?] 366 00:17:41,880 --> 00:17:47,820 >> Un nou tipus d'estructura, i estem demanant que els estudiants. 367 00:17:47,820 --> 00:17:52,640 Així que després hem acabat la creació d'aquest, per a tots els intents i propòsits, 368 00:17:52,640 --> 00:17:55,070 vostè tindrà un tipus anomenat estudiant. 369 00:17:55,070 --> 00:17:59,610 I vostè pot pensar en ell només com un tipus com un int o float, o un char. 370 00:17:59,610 --> 00:18:01,820 És només un altre tipus, d'acord? 371 00:18:01,820 --> 00:18:04,530 >> Així que en aquest, què tenim? 372 00:18:04,530 --> 00:18:05,420 Tenim potser un nom. 373 00:18:05,420 --> 00:18:08,275 Així que potser volem un nom de cadena. 374 00:18:08,275 --> 00:18:09,610 375 00:18:09,610 --> 00:18:14,065 I tenim potser una int que és un ID. 376 00:18:14,065 --> 00:18:16,360 377 00:18:16,360 --> 00:18:19,085 I tenim un altre a aquest és el número de telèfon. 378 00:18:19,085 --> 00:18:21,990 379 00:18:21,990 --> 00:18:26,200 I hem deixat some-- a veure. 380 00:18:26,200 --> 00:18:27,200 Què més podríem tenir? 381 00:18:27,200 --> 00:18:29,385 Tindrem una mica de corda a casa. 382 00:18:29,385 --> 00:18:32,340 383 00:18:32,340 --> 00:18:34,510 Totes les coses que un estudiant té. 384 00:18:34,510 --> 00:18:36,960 >> Així que això crea una estructura ara. 385 00:18:36,960 --> 00:18:41,450 Llavors, ¿com podríem crear un estudiant? 386 00:18:41,450 --> 00:18:46,960 Si tenim alguna variable que és va a parlar de Walker aquí, 387 00:18:46,960 --> 00:18:51,245 així que tener-- només som va a trucar a aquest caminador. 388 00:18:51,245 --> 00:18:52,520 Ell necessita un tipus. 389 00:18:52,520 --> 00:18:53,770 Quin és el teu tipus? 390 00:18:53,770 --> 00:18:54,520 AUDIÈNCIA: Estudiant. 391 00:18:54,520 --> 00:18:55,395 ALLISON BUCHHOLTZ-AU: Estudiant. 392 00:18:55,395 --> 00:18:57,130 393 00:18:57,130 --> 00:19:04,800 Així que això simplement crea un objecte que pugui pensar que té totes aquestes coses. 394 00:19:04,800 --> 00:19:07,880 Vostè acaba de crear un estudiant caminador. 395 00:19:07,880 --> 00:19:10,910 Així que ara hem de ser capaços assignar tots aquests, no? 396 00:19:10,910 --> 00:19:13,500 Així que algú recorda com accedim dins d'una estructura? 397 00:19:13,500 --> 00:19:14,762 398 00:19:14,762 --> 00:19:15,470 AUDIÈNCIA: Període. 399 00:19:15,470 --> 00:19:16,730 ALLISON BUCHHOLTZ-AU: Període Exactament. 400 00:19:16,730 --> 00:19:23,795 Així que si volíem assignar ell un nom, que podria fer això. 401 00:19:23,795 --> 00:19:24,820 402 00:19:24,820 --> 00:19:28,680 Òbviament, això faria ser-- aquesta part aquí seria 403 00:19:28,680 --> 00:19:31,831 estar dins de principal, per la qual en realitat m'ho dius a mi fer això. 404 00:19:31,831 --> 00:19:40,980 405 00:19:40,980 --> 00:19:44,250 Declari que estigui per sobre de principal, així que podem usar-la dins de principal. 406 00:19:44,250 --> 00:19:52,250 407 00:19:52,250 --> 00:20:00,980 Així que ara jo vull que faci ID, i només haurem de fer una mica d'allà, 408 00:20:00,980 --> 00:20:02,970 i després li assignarem una casa. 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 Refredar. 412 00:20:09,650 --> 00:20:19,870 >> Així que ara si mai necessiten accés una mica més tard potser en-- nosaltres-- 413 00:20:19,870 --> 00:20:25,920 si mai necessitem accedir a qualsevol cosa, farem una còpia d'identificació int. 414 00:20:25,920 --> 00:20:27,400 415 00:20:27,400 --> 00:20:30,530 I vull copiar ID de Walker en això. 416 00:20:30,530 --> 00:20:31,370 Com podria jo fer-ho? 417 00:20:31,370 --> 00:20:33,670 418 00:20:33,670 --> 00:20:37,790 Vostè necessita tenir accés dins del caminant struct a [? anar a aquest?] [? I?]. 419 00:20:37,790 --> 00:20:41,280 I de la mateixa manera que assignat fins aquí, com 420 00:20:41,280 --> 00:20:45,573 podríem accedir-hi quan volem donar aquest valor a una altra cosa? 421 00:20:45,573 --> 00:20:46,406 AUDIÈNCIA: Walker.id. 422 00:20:46,406 --> 00:20:47,252 423 00:20:47,252 --> 00:20:48,376 ALLISON BUCHHOLTZ-AU: Sí, exactament. 424 00:20:48,376 --> 00:20:51,884 425 00:20:51,884 --> 00:20:54,175 Així que això és més o menys tot el que necessita saber per a estructures. 426 00:20:54,175 --> 00:20:55,750 427 00:20:55,750 --> 00:20:58,560 Només ha de pensar en com una altra variable. 428 00:20:58,560 --> 00:21:01,710 Bàsicament un crear el seu propi tipus de variable, d'acord? 429 00:21:01,710 --> 00:21:04,440 430 00:21:04,440 --> 00:21:07,970 S'utilitza per declarar les variables de cap manera. 431 00:21:07,970 --> 00:21:10,290 Aquí caminant continua sent una variable. 432 00:21:10,290 --> 00:21:14,230 Només té un estudiant tipus ara en lloc d'un tipus int, o una cadena de tipus, 433 00:21:14,230 --> 00:21:15,070 o un tipus char. 434 00:21:15,070 --> 00:21:17,014 435 00:21:17,014 --> 00:21:19,930 Si hi havia una manera fàcil de parlar sobre estructures, és, literalment, només un 436 00:21:19,930 --> 00:21:24,430 crear el seu propi tipus de dades que li permet al grup 437 00:21:24,430 --> 00:21:28,320 totes aquestes diferents tipus de dades junts. 438 00:21:28,320 --> 00:21:29,754 439 00:21:29,754 --> 00:21:31,595 Això té sentit? 440 00:21:31,595 --> 00:21:33,920 441 00:21:33,920 --> 00:21:34,420 Okay. 442 00:21:34,420 --> 00:21:35,920 443 00:21:35,920 --> 00:21:37,530 Això i l'accés amb punts. 444 00:21:37,530 --> 00:21:38,790 445 00:21:38,790 --> 00:21:39,960 Gairebé tot el que necessita. 446 00:21:39,960 --> 00:21:41,150 447 00:21:41,150 --> 00:21:46,600 >> Bé, d'on va la meva PowerPoint? 448 00:21:46,600 --> 00:21:47,580 Aquí el tens. 449 00:21:47,580 --> 00:21:49,050 450 00:21:49,050 --> 00:21:50,520 Bé, això és rar. 451 00:21:50,520 --> 00:21:53,950 452 00:21:53,950 --> 00:21:55,420 Ajá. 453 00:21:55,420 --> 00:21:56,766 Acceptar, fresc. 454 00:21:56,766 --> 00:21:58,876 455 00:21:58,876 --> 00:22:01,000 Qualssevol altres coses o fer que adreçar-se a la pràctica? 456 00:22:01,000 --> 00:22:02,210 457 00:22:02,210 --> 00:22:02,710 Practiqui? 458 00:22:02,710 --> 00:22:03,501 Okay. 459 00:22:03,501 --> 00:22:04,000 Impressionant. 460 00:22:04,000 --> 00:22:05,642 461 00:22:05,642 --> 00:22:06,600 Vaig a sortir d'aquesta. 462 00:22:06,600 --> 00:22:08,490 Si en qualsevol moment durant preguntes de la pràctica, 463 00:22:08,490 --> 00:22:12,630 Estic content de renovar i passar per les coses. 464 00:22:12,630 --> 00:22:15,240 Així que tinc concurs zero fins aquí. 465 00:22:15,240 --> 00:22:18,370 Si vostès volen tirar que a l'equip, 466 00:22:18,370 --> 00:22:20,670 igual que prendre 5 minuts per navegar a través d '. 467 00:22:20,670 --> 00:22:23,540 Potser triar algun superior preguntes que volen repassar. 468 00:22:23,540 --> 00:22:27,390 Si vostès no pot decidir, només haurem de a poc a poc començar a treballar a través d'ells, 469 00:22:27,390 --> 00:22:31,590 però estic segur que hi haurà algun preguntes que vostè és particular 470 00:22:31,590 --> 00:22:34,890 amb ganes de parlar i tenir el meu treball a través de tots vostès. 471 00:22:34,890 --> 00:22:36,580 Així que seguir endavant i prendre cinc minuts. 472 00:22:36,580 --> 00:22:37,780 Desplaçar-se a través d '. 473 00:22:37,780 --> 00:22:40,620 I aquesta és la prova a partir de 2013. 474 00:22:40,620 --> 00:22:41,841 >> AUDIÈNCIA: Zero? 475 00:22:41,841 --> 00:22:43,630 >> ALLISON BUCHHOLTZ-AU: Sí, concurs zero. 476 00:22:43,630 --> 00:22:45,647 No estem fent un concurs de coses. 477 00:22:45,647 --> 00:22:46,980 Farem que en un parell de setmanes. 478 00:22:46,980 --> 00:22:52,941 479 00:22:52,941 --> 00:22:55,190 També per a aquells de vostès que va arribar tard, tenim el caramel, 480 00:22:55,190 --> 00:23:00,580 pel que fa que vostès volen el caramel? 481 00:23:00,580 --> 00:23:01,530 >> AUDIÈNCIA: És clar. 482 00:23:01,530 --> 00:23:03,321 >> ALLISON BUCHHOLTZ-AU: Jo només sóc passarà voltant. 483 00:23:03,321 --> 00:23:09,774 484 00:23:09,774 --> 00:23:11,940 Escolta, si vostès arriben aquí d'hora, s'obté més dolços. 485 00:23:11,940 --> 00:23:12,500 Això està bé. 486 00:23:12,500 --> 00:23:13,550 Ben, vols caramels? 487 00:23:13,550 --> 00:23:19,350 488 00:23:19,350 --> 00:23:20,556 Vols una mica d'això? 489 00:23:20,556 --> 00:23:24,122 490 00:23:24,122 --> 00:23:26,080 També hi ha Snickers si algú vol Snickers. 491 00:23:26,080 --> 00:23:27,640 492 00:23:27,640 --> 00:23:29,360 Vaig a deixar aquí i aquí. 493 00:23:29,360 --> 00:23:30,946 Siéntase lliure. 494 00:23:30,946 --> 00:23:32,485 Vols més? 495 00:23:32,485 --> 00:23:33,235 AUDIÈNCIA: tot a punt. 496 00:23:33,235 --> 00:23:33,540 Gràcies. 497 00:23:33,540 --> 00:23:36,248 >> ALLISON BUCHHOLTZ-AU: I jo tenia una bona munt allà al principi. 498 00:23:36,248 --> 00:23:49,080 499 00:23:49,080 --> 00:23:51,980 Vostès l'oportunitat de prendre la prova i Va arribar a tenir una festa concurs classificació. 500 00:23:51,980 --> 00:23:54,496 501 00:23:54,496 --> 00:23:55,360 És un caos. 502 00:23:55,360 --> 00:23:56,460 503 00:23:56,460 --> 00:23:57,385 900 exàmens. 504 00:23:57,385 --> 00:23:58,650 Serà molt divertit. 505 00:23:58,650 --> 00:24:00,441 506 00:24:00,441 --> 00:24:02,036 L'anar a ser gran. 507 00:24:02,036 --> 00:24:04,430 Estic bastant segur que és una de la major vinculació de personal 508 00:24:04,430 --> 00:24:05,380 nits de l'any. 509 00:24:05,380 --> 00:24:15,660 510 00:24:15,660 --> 00:24:19,175 Algú ha fet prova de zero l'any passat encara per curiositat? 511 00:24:19,175 --> 00:24:20,335 >> AUDIÈNCIA: Parts d'ella. 512 00:24:20,335 --> 00:24:21,543 >> ALLISON BUCHHOLTZ-AU: Parts d'ella, a D'acord. 513 00:24:21,543 --> 00:24:24,272 514 00:24:24,272 --> 00:24:26,482 Sabia vostè té preguntes sobre qualsevol d'ells? 515 00:24:26,482 --> 00:24:28,190 AUDIÈNCIA: Ja va anar a les hores d'oficina. 516 00:24:28,190 --> 00:24:28,898 Gràcies això. 517 00:24:28,898 --> 00:24:30,187 518 00:24:30,187 --> 00:24:32,520 ALLISON BUCHHOLTZ-AU: Bé, amb sort és encara tipus d'estris. 519 00:24:32,520 --> 00:24:42,990 520 00:24:42,990 --> 00:24:45,634 Quan vas a horari d'oficina perquè? 521 00:24:45,634 --> 00:24:47,300 AUDIÈNCIA: El meu TF ells tenia aquesta tarda. 522 00:24:47,300 --> 00:24:47,966 ALLISON BUCHHOLTZ-AU: Oh. 523 00:24:47,966 --> 00:24:48,977 Qui és el teu TF? 524 00:24:48,977 --> 00:24:49,854 525 00:24:49,854 --> 00:24:51,020 AUDIÈNCIA: Fred [? Wujaya?]. 526 00:24:51,020 --> 00:24:52,622 527 00:24:52,622 --> 00:24:54,080 ALLISON BUCHHOLTZ-AU: Hi ha tantes TFS. 528 00:24:54,080 --> 00:24:55,350 529 00:24:55,350 --> 00:24:55,850 Així que molts. 530 00:24:55,850 --> 00:25:16,530 531 00:25:16,530 --> 00:25:17,340 Bé. 532 00:25:17,340 --> 00:25:45,310 533 00:25:45,310 --> 00:25:48,950 Algú té alguna per iniciar el que pugui Anoti que volem treballar? 534 00:25:48,950 --> 00:25:53,770 535 00:25:53,770 --> 00:25:55,685 Suposo que els punters un amb la taula. 536 00:25:55,685 --> 00:25:56,890 537 00:25:56,890 --> 00:25:57,610 No t'ho pensis. 538 00:25:57,610 --> 00:25:59,180 >> AUDIÈNCIA: Potser l'interruptor d'un. 539 00:25:59,180 --> 00:26:02,362 540 00:26:02,362 --> 00:26:03,445 ALLISON BUCHHOLTZ-AU: Així que el número 12? 541 00:26:03,445 --> 00:26:06,750 542 00:26:06,750 --> 00:26:10,770 Assumeixo número 8 i 9 són, probablement, El que la gent vol anar. 543 00:26:10,770 --> 00:26:12,116 >> AUDIÈNCIA: I 10 i 11. 544 00:26:12,116 --> 00:26:21,860 545 00:26:21,860 --> 00:26:25,806 >> ALLISON BUCHHOLTZ-AU: I vostès saben vostè aconsegueix una pàgina de notes, oi? 546 00:26:25,806 --> 00:26:28,450 >> AUDIÈNCIA: Sí, i què són ens va permetre posar en això. 547 00:26:28,450 --> 00:26:30,658 >> ALLISON BUCHHOLTZ-AU: Està permès posar tot el que vulguis. 548 00:26:30,658 --> 00:26:31,887 549 00:26:31,887 --> 00:26:32,720 I pot ser escrit. 550 00:26:32,720 --> 00:26:35,270 Pel que jo recordo, la nostra van ser mecanografiades. 551 00:26:35,270 --> 00:26:37,022 >> AUDIÈNCIA: Vostè pot fer esquena i banda i banda? 552 00:26:37,022 --> 00:26:38,780 >> ALLISON BUCHHOLTZ-AU: Sí, banda i banda. 553 00:26:38,780 --> 00:26:42,940 Així que alguna cosa com el munt i [? part de darrere?] munt, el seu funcionament 554 00:26:42,940 --> 00:26:43,780 vegades. 555 00:26:43,780 --> 00:26:44,840 Útil. 556 00:26:44,840 --> 00:26:47,990 Potser petites coses sobre punters per recordar. 557 00:26:47,990 --> 00:26:49,205 Sintaxi de les coses. 558 00:26:49,205 --> 00:26:51,600 559 00:26:51,600 --> 00:26:54,830 Tenir la mateixa manera que un esquelet programa pot ser molt útil. 560 00:26:54,830 --> 00:27:00,719 Jo sé que sempre em vaig oblidar exactament el Se suposava que havia d'escriure per int main, 561 00:27:00,719 --> 00:27:03,010 perquè sempre acaba copio enganxar des del meu conjunt P anterior 562 00:27:03,010 --> 00:27:06,232 o que ja hi és, per la qual cosa Realment mai he escrit, 563 00:27:06,232 --> 00:27:07,690 així que tenir això pot ser super útil. 564 00:27:07,690 --> 00:27:09,280 565 00:27:09,280 --> 00:27:14,320 >> OK, així que per què no fem nosaltres començar amb el número 8, llavors? 566 00:27:14,320 --> 00:27:21,730 567 00:27:21,730 --> 00:27:22,810 Bé. 568 00:27:22,810 --> 00:27:23,310 Okay. 569 00:27:23,310 --> 00:27:25,060 570 00:27:25,060 --> 00:27:26,310 Així que consideri el programa a continuació. 571 00:27:26,310 --> 00:27:28,110 572 00:27:28,110 --> 00:27:30,700 Així que, òbviament, quan veiem punters, probablement 573 00:27:30,700 --> 00:27:32,200 una bona idea per començar a dibuixar, oi? 574 00:27:32,200 --> 00:27:34,552 575 00:27:34,552 --> 00:27:36,760 Vull saber on tota la meva grans trossos de guix van ser. 576 00:27:36,760 --> 00:27:37,870 Això és una mica molest. 577 00:27:37,870 --> 00:27:40,210 578 00:27:40,210 --> 00:27:45,820 >> Així que tenim aquí una funció d'intercanvi això va a prendre en dos punters. 579 00:27:45,820 --> 00:27:48,630 Així doncs, en aquest cas, en realitat hauria de ser el canvi 580 00:27:48,630 --> 00:27:53,400 coses enfront del nostre intercanvi inicial funció que només va prendre en còpies. 581 00:27:53,400 --> 00:27:57,030 Llavors, ¿què farà és-- comencem per principal, 582 00:27:57,030 --> 00:27:58,450 perquè aquí és on 1 és. 583 00:27:58,450 --> 00:28:04,296 >> Així que tenim una mica de int x 1. 584 00:28:04,296 --> 00:28:11,860 Tenim alguns i que és igual a 2. 585 00:28:11,860 --> 00:28:14,390 I després tenim algun intercanvi això va a prendre aquests. 586 00:28:14,390 --> 00:28:17,320 I anem a veure el que tenim aquí. 587 00:28:17,320 --> 00:28:19,542 588 00:28:19,542 --> 00:28:22,709 I en el nostre table-- oh noi. 589 00:28:22,709 --> 00:28:23,792 Com vaig a fer això? 590 00:28:23,792 --> 00:28:25,900 Vaig a treure la meva taula aquí. 591 00:28:25,900 --> 00:28:49,490 592 00:28:49,490 --> 00:28:50,552 Tot just pel que és allà. 593 00:28:50,552 --> 00:28:51,260 Tot just pel que és. 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 I ells ens donen que 1 és 1, i 2 gen. 598 00:29:15,706 --> 00:29:16,206 Refredar. 599 00:29:16,206 --> 00:29:17,674 600 00:29:17,674 --> 00:29:18,174 Impressionant. 601 00:29:18,174 --> 00:29:19,650 602 00:29:19,650 --> 00:29:20,464 Així que 3. 603 00:29:20,464 --> 00:29:21,380 I hi ha [? A 1.?] 604 00:29:21,380 --> 00:29:24,500 605 00:29:24,500 --> 00:29:25,250 >> Bé. 606 00:29:25,250 --> 00:29:35,202 I a continuació, la direcció de x és 0x123. 607 00:29:35,202 --> 00:29:41,260 I I és Ox127. 608 00:29:41,260 --> 00:29:41,760 Refredar. 609 00:29:41,760 --> 00:29:42,940 610 00:29:42,940 --> 00:29:43,595 Bé. 611 00:29:43,595 --> 00:29:46,710 Vull que els nois treballa en aquest per al treball just com-- en ell 612 00:29:46,710 --> 00:29:48,385 amb les persones que t'envolten. 613 00:29:48,385 --> 00:29:50,340 M'hauria agradat haver dit que mentre jo estava assegut a dalt. 614 00:29:50,340 --> 00:29:50,840 Treballar en ell. 615 00:29:50,840 --> 00:29:53,270 Intenta treballar-hi per vosaltres mateixos per un parell de minuts, 616 00:29:53,270 --> 00:29:54,930 i després vaig a treballar-hi amb vostè. 617 00:29:54,930 --> 00:29:57,034 618 00:29:57,034 --> 00:30:00,117 A causa de que l'única manera que estiguis realment va a aprendre és fent-ho vostè mateix. 619 00:30:00,117 --> 00:31:29,580 620 00:31:29,580 --> 00:31:30,110 No es preocupi. 621 00:31:30,110 --> 00:31:30,610 Bona sort. 622 00:31:30,610 --> 00:32:17,390 623 00:32:17,390 --> 00:32:20,030 >> Bé, per què no fem que a poc a poc començar a treballar a través d'aquest. 624 00:32:20,030 --> 00:32:23,695 Així que tothom rep després de la línia 1, x és 1. 625 00:32:23,695 --> 00:32:26,860 Després de la línia dos, x i i són 1 i 2, oi? 626 00:32:26,860 --> 00:32:27,400 Refredar. 627 00:32:27,400 --> 00:32:30,310 Així que la línia 3 és on les coses posar-se interessant, és clar. 628 00:32:30,310 --> 00:32:34,970 >> Així que el que hem fet aquí és que ara tenim intercanviat. 629 00:32:34,970 --> 00:32:42,360 Diem que X i Y tenen aquests punts, o que tenen la direcció de x i y, 630 00:32:42,360 --> 00:32:43,390 Oi? 631 00:32:43,390 --> 00:32:48,451 Així que en aquest cas, tres, Quin és el valor d'una? 632 00:32:48,451 --> 00:32:52,379 633 00:32:52,379 --> 00:32:59,806 una havia estat aprovada en, se li ha donat el valor de la direcció de x, oi? 634 00:32:59,806 --> 00:33:02,542 635 00:33:02,542 --> 00:33:03,454 >> AUDIÈNCIA: 1? 636 00:33:03,454 --> 00:33:05,200 >> ALLISON BUCHHOLTZ-AU: Així que afegim a la x? 637 00:33:05,200 --> 00:33:06,420 Quina és l'adreça de x? 638 00:33:06,420 --> 00:33:07,212 >> AUDIÈNCIA: 0x123. 639 00:33:07,212 --> 00:33:08,087 >> ALLISON BUCHHOLTZ-AU: Exactament. 640 00:33:08,087 --> 00:33:13,960 641 00:33:13,960 --> 00:33:16,790 Però el que és una realitat que apunta? 642 00:33:16,790 --> 00:33:20,790 Si haguéssim d'eliminar la referència a, ¿Quin valor hauria de donar-nos. 643 00:33:20,790 --> 00:33:21,290 AUDIÈNCIA: 1. 644 00:33:21,290 --> 00:33:23,164 ALLISON BUCHHOLTZ-AU: seria donar-nos 1, perquè el que 645 00:33:23,164 --> 00:33:27,810 que estem dient és anar a aquest direcció, ens diu quin és el valor. 646 00:33:27,810 --> 00:33:28,890 Llavors, ¿què seria de b? 647 00:33:28,890 --> 00:33:30,500 648 00:33:30,500 --> 00:33:31,445 >> AUDIÈNCIA: 0x127. 649 00:33:31,445 --> 00:33:32,320 ALLISON BUCHHOLTZ-AU: Exactament. 650 00:33:32,320 --> 00:33:33,610 651 00:33:33,610 --> 00:33:35,410 Així que és l'adreça de i. 652 00:33:35,410 --> 00:33:36,580 653 00:33:36,580 --> 00:33:39,811 I llavors, ¿què [? eliminar la referència? ?] 654 00:33:39,811 --> 00:33:40,310 AUDIÈNCIA: 2. 655 00:33:40,310 --> 00:33:42,172 656 00:33:42,172 --> 00:33:43,380 ALLISON BUCHHOLTZ-AU: OK, així que ara fa quatre. 657 00:33:43,380 --> 00:33:44,390 658 00:33:44,390 --> 00:33:51,300 Vam dir a és equal-- bé ara que hem fet int temp és igual a l'estrella d'una. 659 00:33:51,300 --> 00:33:53,580 Llavors, ¿què canvia? 660 00:33:53,580 --> 00:33:55,680 Només hi ha una cosa això canvia aquí. 661 00:33:55,680 --> 00:33:56,180 Què és? 662 00:33:56,180 --> 00:33:57,892 663 00:33:57,892 --> 00:33:58,624 >> AUDIÈNCIA: temp. 664 00:33:58,624 --> 00:33:59,540 ALLISON BUCHHOLTZ-AU: La temp. 665 00:33:59,540 --> 00:34:06,120 Així que podem tornar a escriure tot això. 666 00:34:06,120 --> 00:34:07,790 667 00:34:07,790 --> 00:34:10,690 Una bona estratègia per a aquests s'acaba d'esbrinar 668 00:34:10,690 --> 00:34:14,050 quins canvis, perquè més sovint només hi ha una cosa que és 669 00:34:14,050 --> 00:34:16,300 canviarà en un moment donat, d'acord? 670 00:34:16,300 --> 00:34:17,960 671 00:34:17,960 --> 00:34:20,100 Així hem assignat temp. 672 00:34:20,100 --> 00:34:26,929 >> Ara el nostre proper punt, cinc, ens han fet una estrella igual a protagonitzar b. 673 00:34:26,929 --> 00:34:28,880 Llavors, ¿què canvia ara? 674 00:34:28,880 --> 00:34:29,760 >> AUDIÈNCIA: Estrella a. 675 00:34:29,760 --> 00:34:32,081 >> ALLISON BUCHHOLTZ-AU: Estrella a, so tota la resta es manté igual. 676 00:34:32,081 --> 00:34:38,610 677 00:34:38,610 --> 00:34:39,900 I què vol dir protagonitzar un igual? 678 00:34:39,900 --> 00:34:40,659 >> AUDIÈNCIA: 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 Preciós. 682 00:34:42,960 --> 00:34:45,360 683 00:34:45,360 --> 00:34:46,239 Impressionant. 684 00:34:46,239 --> 00:34:51,190 Acceptar i, a continuació, ara tenim iniciar b és igual a temp. 685 00:34:51,190 --> 00:34:53,907 Així que l'únic que canvia és l'estrella b. 686 00:34:53,907 --> 00:34:55,344 Tota la resta es manté igual. 687 00:34:55,344 --> 00:35:01,100 688 00:35:01,100 --> 00:35:02,610 ¿I quina és l'estrella b igual a ara? 689 00:35:02,610 --> 00:35:04,840 690 00:35:04,840 --> 00:35:06,190 I que hi hagi completat la taula. 691 00:35:06,190 --> 00:35:11,620 692 00:35:11,620 --> 00:35:18,460 Perquè ara, al final, si diem x ei, sabem que en aquest point-- 693 00:35:18,460 --> 00:35:23,060 sabem que quan ens canviat protagonitzar una de 2, 694 00:35:23,060 --> 00:35:29,620 el que van fer és que va dir que estava bé, en abordar 0x123 aquí, canviar-lo. 695 00:35:29,620 --> 00:35:31,780 696 00:35:31,780 --> 00:35:33,290 Ara bé, això era febrer. 697 00:35:33,290 --> 00:35:34,460 698 00:35:34,460 --> 00:35:40,600 I a continuació, en aquest punt, dèiem així, adreceu-vos a l'estrella b. 699 00:35:40,600 --> 00:35:45,305 Així que anar a la direcció en 0x127 i el converteixen en un 1. 700 00:35:45,305 --> 00:35:49,670 701 00:35:49,670 --> 00:35:53,110 Així que ara al final quan en realitat ens tornem de main, 702 00:35:53,110 --> 00:35:56,445 en realitat tenim que x és igual a 2 i y és igual a 1. 703 00:35:56,445 --> 00:35:58,500 704 00:35:58,500 --> 00:35:59,500 Tothom bé amb això? 705 00:35:59,500 --> 00:36:00,720 706 00:36:00,720 --> 00:36:02,320 Acceptar, fresc. 707 00:36:02,320 --> 00:36:04,030 Número 9. 708 00:36:04,030 --> 00:36:05,950 Vostès treballar en això. 709 00:36:05,950 --> 00:36:09,016 Vaig a establir un consell pel que podem treure a través d'ell. 710 00:36:09,016 --> 00:36:09,910 Serà una explosió. 711 00:36:09,910 --> 00:36:13,760 712 00:36:13,760 --> 00:36:16,320 Les grans taules poden ser realment fa por, ho sé. 713 00:36:16,320 --> 00:36:19,910 Però si només els pren en una fila un temps, ells donen molt menys por. 714 00:36:19,910 --> 00:38:12,025 715 00:38:12,025 --> 00:38:12,860 Bé. 716 00:38:12,860 --> 00:38:16,230 717 00:38:16,230 --> 00:38:21,190 >> Així que ja saps que això tindrà passat per principal primer, no? 718 00:38:21,190 --> 00:38:24,140 Inicialitza x i y i després tracta de canviar-los. 719 00:38:24,140 --> 00:38:28,560 Així que fins i tot està per sobre d'intercanvi, de manera real, Goes és que estem passant per principal, 720 00:38:28,560 --> 00:38:31,040 i llavors està trucant fins a canviar, d'acord? 721 00:38:31,040 --> 00:38:32,810 Així que tot el món sap això. 722 00:38:32,810 --> 00:38:34,960 >> Així que quin nois volen començar? 723 00:38:34,960 --> 00:38:37,240 Hi ha algú realment segur sobre un d'aquests? 724 00:38:37,240 --> 00:38:38,307 725 00:38:38,307 --> 00:38:39,265 O fins i tot parcialment segur? 726 00:38:39,265 --> 00:38:44,170 727 00:38:44,170 --> 00:38:48,120 Per què no comencem amb x? 728 00:38:48,120 --> 00:38:49,060 Què pensem x és? 729 00:38:49,060 --> 00:38:49,735 >> AUDIÈNCIA: 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 Així que per què és 2. 733 00:38:56,340 --> 00:38:58,880 734 00:38:58,880 --> 00:39:01,380 I això és perquè el gran distinció aquí 735 00:39:01,380 --> 00:39:04,890 és que només som passant còpies, no? 736 00:39:04,890 --> 00:39:06,520 No estem passant per referència. 737 00:39:06,520 --> 00:39:08,850 Així que fins al final de aquest programa x i y 738 00:39:08,850 --> 00:39:14,170 han romàs igual, perquè són només còpies en la funció d'intercanvi. 739 00:39:14,170 --> 00:39:16,320 Ells en realitat no canvien, no? 740 00:39:16,320 --> 00:39:17,570 741 00:39:17,570 --> 00:39:19,290 >> Llavors, què sobre a, b, i la temperatura? 742 00:39:19,290 --> 00:39:21,540 743 00:39:21,540 --> 00:39:22,890 >> AUDIÈNCIA: A és B. 744 00:39:22,890 --> 00:39:23,940 >> ALLISON BUCHHOLTZ-AU: a és b. 745 00:39:23,940 --> 00:39:28,569 Així que en aquest cas, una era x, que és 1, no? 746 00:39:28,569 --> 00:39:29,860 Així que aquí, anem a caminar a través d'ell. 747 00:39:29,860 --> 00:39:33,940 Així que al principi, una i b són 1 i 2 i indefinit. 748 00:39:33,940 --> 00:39:35,000 749 00:39:35,000 --> 00:39:40,850 Així que originalment temp aconsegueix assignat a una, pel que la temperatura és 1. 750 00:39:40,850 --> 00:39:46,150 a és igual a b, de manera que tenim 2, i b és igual a temp. 751 00:39:46,150 --> 00:39:47,284 Ara tenim 1. 752 00:39:47,284 --> 00:39:49,454 753 00:39:49,454 --> 00:39:55,860 >> AUDIÈNCIA: En el qual anterior intercanviades ampersand x i signe i. 754 00:39:55,860 --> 00:39:57,390 Què significa això exactament? 755 00:39:57,390 --> 00:39:59,890 ALLISON BUCHHOLTZ-AU: Així que això significa que estàs passant per referència. 756 00:39:59,890 --> 00:40:03,830 Així que això significa que ets en realitat que passa a les adreces d'on 757 00:40:03,830 --> 00:40:04,814 x i i s'emmagatzemen. 758 00:40:04,814 --> 00:40:06,730 AUDIÈNCIA: Però vostè no és el canvi de la direcció. 759 00:40:06,730 --> 00:40:07,860 ALLISON BUCHHOLTZ-AU: No és intercanvi de les direccions. 760 00:40:07,860 --> 00:40:10,015 Vostè està intercanviant el que hi ha dins d'ells. 761 00:40:10,015 --> 00:40:11,510 762 00:40:11,510 --> 00:40:14,460 Igual que el que està en aquesta direcció, i això és per què funciona. 763 00:40:14,460 --> 00:40:20,750 Versus en aquest programa aquí el que estàs fent és que estàs creant còpies. 764 00:40:20,750 --> 00:40:27,440 Així que tens x i i que existeixen com les seves pròpies variables aquí. 765 00:40:27,440 --> 00:40:31,530 766 00:40:31,530 --> 00:40:34,140 Però després, quan es passa ells en permuta, és 767 00:40:34,140 --> 00:40:38,090 com si està creant tot aquest altre conjunt. 768 00:40:38,090 --> 00:40:41,272 Així que mai és en realitat x i i commovedores. 769 00:40:41,272 --> 00:40:46,890 >> AUDIÈNCIA: Si signe x el que està en la direcció de x, ¿quina seria l'estrella x ser? 770 00:40:46,890 --> 00:40:53,290 >> ALLISON BUCHHOLTZ-AU: Àmpersand x és el que està en la direcció de x, llavors star-- bé, 771 00:40:53,290 --> 00:40:54,950 en aquest cas, x no és un punter. 772 00:40:54,950 --> 00:40:56,332 773 00:40:56,332 --> 00:40:57,040 AUDIÈNCIA: Oh, OK. 774 00:40:57,040 --> 00:40:58,998 Pel que només fa això perquè no és un punter. 775 00:40:58,998 --> 00:40:59,890 ALLISON BUCHHOLTZ-AU: Dret. 776 00:40:59,890 --> 00:41:03,046 Només es pot fer d'estrella cosa que és un punter. 777 00:41:03,046 --> 00:41:05,920 Potser vostè podria fer que a les coses que no ho són, però la compilació que 778 00:41:05,920 --> 00:41:07,350 fan que les coses boges que passaria. 779 00:41:07,350 --> 00:41:09,570 I jo no sóc exactament segur del que anava a succeir. 780 00:41:09,570 --> 00:41:11,880 Sempre es pot prendre la direcció d'alguna cosa, 781 00:41:11,880 --> 00:41:14,255 però no es pot eliminar la referència cosa que no és un punter. 782 00:41:14,255 --> 00:41:14,805 783 00:41:14,805 --> 00:41:17,860 Si això té sentit, això és un bon distinció de tenir. 784 00:41:17,860 --> 00:41:19,870 785 00:41:19,870 --> 00:41:21,340 >> Així que no és tan dolent, oi? 786 00:41:21,340 --> 00:41:23,650 Les taules són d'esperar aconseguir una mica menys de por. 787 00:41:23,650 --> 00:41:25,450 788 00:41:25,450 --> 00:41:26,690 Bé. 789 00:41:26,690 --> 00:41:28,370 Ah, les divertides. 790 00:41:28,370 --> 00:41:31,265 Així que ara, a escriure el seu propi codi. 791 00:41:31,265 --> 00:41:33,640 792 00:41:33,640 --> 00:41:37,950 Així que vaig a deixar que vostès treballa en això durant uns quatre minuts, 793 00:41:37,950 --> 00:41:41,480 i llavors podem parlar sobre de maneres d'apropar-se a ella. 794 00:41:41,480 --> 00:41:45,080 795 00:41:45,080 --> 00:41:47,110 No dubti en parlar amb la gent que t'envolta. 796 00:41:47,110 --> 00:41:48,114 797 00:41:48,114 --> 00:41:49,155 També això és interessant. 798 00:41:49,155 --> 00:41:51,460 És com una totes les nenes secció en aquest moment. 799 00:41:51,460 --> 00:41:52,190 Bastant emocionant. 800 00:41:52,190 --> 00:41:53,310 801 00:41:53,310 --> 00:41:54,502 Excepte per Chang. 802 00:41:54,502 --> 00:41:56,190 Però Chang no és realment part de la secció. 803 00:41:56,190 --> 00:42:17,282 804 00:42:17,282 --> 00:42:17,985 Impressionant. 805 00:42:17,985 --> 00:42:18,485 Perfecte. 806 00:42:18,485 --> 00:42:38,059 807 00:42:38,059 --> 00:42:39,475 Així que li donaré un parell de consells. 808 00:42:39,475 --> 00:42:43,450 809 00:42:43,450 --> 00:42:46,890 En el cas on s'ha més d'un caràcter, on 810 00:42:46,890 --> 00:42:49,990 vostè té una mica més com 123 o 1000 alguna cosa, 811 00:42:49,990 --> 00:42:53,790 ha de ser capaç de bucle i convertir a través de cada un d'aquells. 812 00:42:53,790 --> 00:42:55,340 813 00:42:55,340 --> 00:42:58,699 Així que hi ha un parell maneres que vostè pot fer que, 814 00:42:58,699 --> 00:43:01,740 però vostè està definitivament va a tenir un bucle en algun lloc d'allà per bucle 815 00:43:01,740 --> 00:43:05,150 a través d'ells, que és alguna cosa així com el sorteig 816 00:43:05,150 --> 00:43:09,540 amb fins i tot si es diu a strlen, que és una cosa així com oh 817 00:43:09,540 --> 00:43:12,418 potser vol utilitzar la longitud de la cadena d'alguna manera. 818 00:43:12,418 --> 00:45:17,300 819 00:45:17,300 --> 00:45:17,829 >> Bé. 820 00:45:17,829 --> 00:45:20,870 Llavors, què pensen vostès que podria ser una de les primeres coses que volem fer? 821 00:45:20,870 --> 00:45:23,149 822 00:45:23,149 --> 00:45:25,690 Hi ha un parell de casos en aquí hem de tenir en compte, oi? 823 00:45:25,690 --> 00:45:27,360 O tenim una cosa que és nul. 824 00:45:27,360 --> 00:45:28,685 825 00:45:28,685 --> 00:45:30,383 Què tenim? 826 00:45:30,383 --> 00:45:30,882 Casos. 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 Tenim el cas que té alguna cosa que no sigui 09, no? 831 00:45:42,414 --> 00:45:43,580 Així que anem a dir que té lletres. 832 00:45:43,580 --> 00:45:44,900 833 00:45:44,900 --> 00:45:46,510 O tenim el cas que és vàlid. 834 00:45:46,510 --> 00:45:48,450 835 00:45:48,450 --> 00:45:50,130 Tres casos per pensar. 836 00:45:50,130 --> 00:45:53,527 Així que quin pensa que podria ser la més fàcil per tenir cura de primera? 837 00:45:53,527 --> 00:45:54,152 AUDIÈNCIA: Nul. 838 00:45:54,152 --> 00:45:55,527 ALLISON BUCHHOLTZ-AU: El cas és nul. 839 00:45:55,527 --> 00:45:56,610 Llavors, ¿què anàvem a fer allà? 840 00:45:56,610 --> 00:45:57,954 841 00:45:57,954 --> 00:45:58,870 AUDIÈNCIA: [inaudible]. 842 00:45:58,870 --> 00:46:02,434 843 00:46:02,434 --> 00:46:03,184 ALLISON BUCHHOLTZ-AU: Sí. 844 00:46:03,184 --> 00:46:05,140 845 00:46:05,140 --> 00:46:06,550 ¿I què és el que vull fer? 846 00:46:06,550 --> 00:46:07,341 >> AUDIÈNCIA: Torna 0. 847 00:46:07,341 --> 00:46:07,935 848 00:46:07,935 --> 00:46:09,110 >> ALLISON BUCHHOLTZ-AU: Exactament. 849 00:46:09,110 --> 00:46:09,860 Impressionant. 850 00:46:09,860 --> 00:46:10,640 Okay. 851 00:46:10,640 --> 00:46:15,270 Així que ara el cas que tingui lletres i el cas de que és vàlid. 852 00:46:15,270 --> 00:46:19,140 De fet, podem tenir cura això dins d'un bucle, d'acord? 853 00:46:19,140 --> 00:46:22,710 Així que una manera de fer-ho it-- del que podria ser una manera simple de comprovar si és vàlida. 854 00:46:22,710 --> 00:46:25,150 855 00:46:25,150 --> 00:46:29,144 Hauríem d'anar a través de cada lletra i fer què? 856 00:46:29,144 --> 00:46:34,336 857 00:46:34,336 --> 00:46:35,640 >> AUDIÈNCIA: Comprovar si és en-- 858 00:46:35,640 --> 00:46:39,570 >> ALLISON BUCHHOLTZ-AU: Dret, es pot comprovar si és entre 0 i 9, no? 859 00:46:39,570 --> 00:46:40,880 860 00:46:40,880 --> 00:46:42,700 I després, en el cas que és vàlida, estem 861 00:46:42,700 --> 00:46:46,550 va a acabar iteració a través de la nostra cadena de tota manera, no? 862 00:46:46,550 --> 00:46:48,690 Llavors, ¿per què no intentem i combinar-les en una de sola. 863 00:46:48,690 --> 00:46:51,260 Repetirem a través de la cadena fora, i com hem 864 00:46:51,260 --> 00:46:56,400 fer això, anem a primer fer una verificació per veure si aquesta lletra 865 00:46:56,400 --> 00:46:58,110 o si aquest personatge és vàlida. 866 00:46:58,110 --> 00:47:02,150 Si és així, realitzarem la operació que hem de convertir. 867 00:47:02,150 --> 00:47:05,050 En cas contrari, tornarà 0, ¿no? 868 00:47:05,050 --> 00:47:09,160 >> Així que abans de fer això, ens probablement voldrà alguna variable 869 00:47:09,160 --> 00:47:12,820 que podem tornar al final que serà el nostre valor real. 870 00:47:12,820 --> 00:47:17,005 Així que anem a inicialitzar algun valor sigui 0. 871 00:47:17,005 --> 00:47:18,390 I així és com vam començar. 872 00:47:18,390 --> 00:47:22,452 873 00:47:22,452 --> 00:47:23,785 Així que vaig a desfer-se d'aquest. 874 00:47:23,785 --> 00:47:26,750 875 00:47:26,750 --> 00:47:30,489 Llavors, ¿com anem a iterar a través d'aquesta cadena. 876 00:47:30,489 --> 00:47:31,280 AUDIÈNCIA: bucle For. 877 00:47:31,280 --> 00:47:32,280 ALLISON BUCHHOLTZ-AU: Un bucle for. 878 00:47:32,280 --> 00:47:33,160 Llavors, ¿quina és la nostra busques? 879 00:47:33,160 --> 00:47:34,710 880 00:47:34,710 --> 00:47:35,909 >> AUDIÈNCIA: i és 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 I el que estem iterant fins que? 884 00:47:41,180 --> 00:47:42,450 >> AUDIÈNCIA: longitud de str s. 885 00:47:42,450 --> 00:47:47,920 886 00:47:47,920 --> 00:47:50,900 >> ALLISON BUCHHOLTZ-AU: OK, ara record hi ha una millor manera. [Inaudible]. 887 00:47:50,900 --> 00:47:52,935 >> AUDIÈNCIA: Sí, podem fer n és igual. 888 00:47:52,935 --> 00:47:53,810 ALLISON BUCHHOLTZ-AU: Exactament. 889 00:47:53,810 --> 00:47:55,010 890 00:47:55,010 --> 00:47:56,190 >> AUDIÈNCIA: i és menor que n. 891 00:47:56,190 --> 00:47:57,559 892 00:47:57,559 --> 00:47:59,475 ALLISON BUCHHOLTZ-AU: I per què voldríem fer això? 893 00:47:59,475 --> 00:48:00,815 894 00:48:00,815 --> 00:48:01,940 Te'n recordes de la raó? 895 00:48:01,940 --> 00:48:04,180 896 00:48:04,180 --> 00:48:05,680 AUDIÈNCIA: Hem de tornar a calcular la mateixa. 897 00:48:05,680 --> 00:48:08,735 ALLISON BUCHHOLTZ-AU: robava d'aquesta manera vostè només s'han de calcular strlen una vegada. 898 00:48:08,735 --> 00:48:09,750 899 00:48:09,750 --> 00:48:14,400 Si ho fa i és menor que strlen s, això és dir que recalcula 900 00:48:14,400 --> 00:48:17,050 la longitud de cada vegada s'executa el bucle for, 901 00:48:17,050 --> 00:48:20,800 que no és un enorme cost de l'energia, però és 902 00:48:20,800 --> 00:48:24,280 millor pràctica per intentar fer coses com que una vegada. 903 00:48:24,280 --> 00:48:27,610 A menys que potser vostè té una cadena boja això està canviant en cada iteració. 904 00:48:27,610 --> 00:48:30,371 Però si es manté igual, la salvarà. 905 00:48:30,371 --> 00:48:30,870 Bé. 906 00:48:30,870 --> 00:48:33,430 I llavors jo plus plus. 907 00:48:33,430 --> 00:48:34,040 Impressionant. 908 00:48:34,040 --> 00:48:35,789 Estem en el nostre camí. 909 00:48:35,789 --> 00:48:36,830 AUDIÈNCIA: De debò ràpidament. 910 00:48:36,830 --> 00:48:39,600 En primer lloc, pel que anem a dir que acabem de He de menys de strlen de s, 911 00:48:39,600 --> 00:48:42,175 ens estan qualificant en el disseny en absolut o només la correcció? 912 00:48:42,175 --> 00:48:43,640 913 00:48:43,640 --> 00:48:44,610 Ells no ho són. 914 00:48:44,610 --> 00:48:47,920 Estem de qualificacions en la correcció per a proves pel que jo sé. 915 00:48:47,920 --> 00:48:52,670 No puc fer una en el ple garantia, però en la seva major part, 916 00:48:52,670 --> 00:48:57,060 gran majoria és correcte, perquè estàs sota molta restricció de temps. 917 00:48:57,060 --> 00:48:59,704 Disseny normalment significa vostè té temps per pensar 918 00:48:59,704 --> 00:49:01,245 sobre l'elegància de la seva situació. 919 00:49:01,245 --> 00:49:03,710 920 00:49:03,710 --> 00:49:05,770 >> Acceptar, per la qual cosa estem iterant a través. 921 00:49:05,770 --> 00:49:10,640 Així que hem de revisar, ja sigui a veure si aquest personatge és vàlida 922 00:49:10,640 --> 00:49:14,550 o si podem fer el nostre normal [? una per a i?] funció. 923 00:49:14,550 --> 00:49:16,600 Podem preocupar pel que és a dir en un segon. 924 00:49:16,600 --> 00:49:19,340 Llavors, ¿per què no ens take-- si algú pot pensar 925 00:49:19,340 --> 00:49:21,930 sobre una manera de comprovar que veure si això és vàlid. 926 00:49:21,930 --> 00:49:23,346 927 00:49:23,346 --> 00:49:25,740 Sabem que serà si alguna condició, no? 928 00:49:25,740 --> 00:49:26,830 929 00:49:26,830 --> 00:49:32,300 I recorda que això és en ASCII, així que com podria 930 00:49:32,300 --> 00:49:37,359 veiem si no és 0,1, 2, 3, 4, 5, 6, 7, 8, o 9. 931 00:49:37,359 --> 00:49:38,150 AUDIÈNCIA: Si alfa. 932 00:49:38,150 --> 00:49:39,800 933 00:49:39,800 --> 00:49:44,100 >> ALLISON BUCHHOLTZ-AU: Així que si ho faria alfa només fes-nos saber si es tracta d'una carta. 934 00:49:44,100 --> 00:49:47,810 I si ens donen un símbol, és encara no del tot va a comprovar. 935 00:49:47,810 --> 00:49:54,270 Així que si vostè tira de la seva ASCII taula, sabem que del 0 al 9 936 00:49:54,270 --> 00:49:55,340 estan en un segment. 937 00:49:55,340 --> 00:49:57,560 938 00:49:57,560 --> 00:50:00,540 Digues-me els nombres que corresponen a si és possible. 939 00:50:00,540 --> 00:50:08,136 940 00:50:08,136 --> 00:50:08,677 AUDIÈNCIA: 40. 941 00:50:08,677 --> 00:50:11,440 942 00:50:11,440 --> 00:50:13,714 >> ALLISON BUCHHOLTZ-AU: Així que el rang és com 40-- 943 00:50:13,714 --> 00:50:14,380 AUDIÈNCIA: Potser. 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 No estic segur. 947 00:50:17,430 --> 00:50:18,510 >> ALLISON BUCHHOLTZ-AU: de 40-57? 948 00:50:18,510 --> 00:50:19,426 >> AUDIÈNCIA: 48, crec. 949 00:50:19,426 --> 00:50:20,730 ALLISON BUCHHOLTZ-AU: 48 a 57. 950 00:50:20,730 --> 00:50:26,070 Així que sabem que els ASCII symbols-- si el valor ASCII no és 951 00:50:26,070 --> 00:50:29,940 entre el 48 i el 57, no és vàlid, no? 952 00:50:29,940 --> 00:50:32,050 Així que podríem fer servir això per a el nostre avantatge possiblement? 953 00:50:32,050 --> 00:50:33,770 954 00:50:33,770 --> 00:50:38,082 Com aconseguirem aquesta carta, en primer lloc? 955 00:50:38,082 --> 00:50:40,910 Com estem accedint això aquest personatge? 956 00:50:40,910 --> 00:50:42,010 >> AUDIÈNCIA: s i suport. 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 Perquè podem pensar en cadenes com arrays, recorden. 960 00:50:46,285 --> 00:50:47,470 961 00:50:47,470 --> 00:50:48,740 Llavors, ¿què és el que volem dir? 962 00:50:48,740 --> 00:50:55,920 Volem dir si aquesta és-- et donaré una pista. 963 00:50:55,920 --> 00:50:56,920 Es tracta d'un menor que. 964 00:50:56,920 --> 00:50:58,711 Què creus que ha de ser inferior a? 965 00:50:58,711 --> 00:50:59,074 966 00:50:59,074 --> 00:50:59,615 AUDIÈNCIA: 57? 967 00:50:59,615 --> 00:51:01,550 968 00:51:01,550 --> 00:51:02,900 >> ALLISON BUCHHOLTZ-AU: 47, no? 969 00:51:02,900 --> 00:51:08,920 Però també representa que a mesura que un 0 en un sol [? els radis?], perquè això és 970 00:51:08,920 --> 00:51:09,689 el caràcter 0. 971 00:51:09,689 --> 00:51:10,605 També pot posar 47. 972 00:51:10,605 --> 00:51:11,660 973 00:51:11,660 --> 00:51:14,350 Tenir la taula ASCII, com que es veu, és només una mica 974 00:51:14,350 --> 00:51:18,580 vostè ha de tenir en el seu full d'examen. 975 00:51:18,580 --> 00:51:25,830 >> Així que si aquest és el cas, si és una menys de 0-- i no necessàriament. 976 00:51:25,830 --> 00:51:30,890 No és més que qualsevol dels dos serà inferior o superior a 9. 977 00:51:30,890 --> 00:51:33,055 Així que vostè pot omplir aquesta última per a mi? 978 00:51:33,055 --> 00:51:36,440 Així que o es d'i és el que, Rhea? 979 00:51:36,440 --> 00:51:39,810 980 00:51:39,810 --> 00:51:41,536 >> AUDIÈNCIA: Major que 9. 981 00:51:41,536 --> 00:51:42,970 982 00:51:42,970 --> 00:51:44,221 >> ALLISON BUCHHOLTZ-AU: No. 983 00:51:44,221 --> 00:51:47,280 Això té sentit per tot el món, com vam arribar allà? 984 00:51:47,280 --> 00:51:51,340 Aquests problemes, que són com una vegada que veure les solucions, és com oh, OK. 985 00:51:51,340 --> 00:51:52,312 986 00:51:52,312 --> 00:51:53,937 I és per això que la pràctica l'ajudarà. 987 00:51:53,937 --> 00:51:55,070 988 00:51:55,070 --> 00:51:57,400 OK, així que tornem 0. 989 00:51:57,400 --> 00:51:57,900 Preciós. 990 00:51:57,900 --> 00:51:59,000 991 00:51:59,000 --> 00:51:59,670 Bé. 992 00:51:59,670 --> 00:52:00,780 993 00:52:00,780 --> 00:52:02,365 En cas contrari, ¿què volem fer? 994 00:52:02,365 --> 00:52:04,640 Aquesta és la part interessant on és una mica més 995 00:52:04,640 --> 00:52:07,550 com les matemàtiques enfront de CS al meu entendre. 996 00:52:07,550 --> 00:52:09,479 997 00:52:09,479 --> 00:52:11,520 Algú té una idea de com podem fer això? 998 00:52:11,520 --> 00:52:15,822 999 00:52:15,822 --> 00:52:18,155 Així que l'important s'adonen és el primer caràcter 1000 00:52:18,155 --> 00:52:21,510 estem prenent serà el dígit d'ordre més alt, no? 1001 00:52:21,510 --> 00:52:25,975 Així que si estem veient la conversió 123, la primera vegada iterem 1002 00:52:25,975 --> 00:52:30,800 serà 1, però necessitem que per ser 100 per al final, oi? 1003 00:52:30,800 --> 00:52:34,450 Així que una cosa que pots fer és que amb cada dígit subsegüent 1004 00:52:34,450 --> 00:52:39,670 vostè pren, vostè multiplica el seu valor per 10, de manera que per al moment en què arribi a la final, 1005 00:52:39,670 --> 00:52:42,960 tot ha estat desplaçat cap amunt, a la dreta? 1006 00:52:42,960 --> 00:52:46,490 >> Així que la primera vegada que s'executa ell, vostè té 1 com a seu valor. 1007 00:52:46,490 --> 00:52:50,370 Segona vegada que s'executa, vostè multiplicar el seu valor per 10. 1008 00:52:50,370 --> 00:52:55,180 S'actualitzarà de manera que ara és 10, i afegir en el seu següent valor. 1009 00:52:55,180 --> 00:52:57,830 I llavors vostè multiplica això per 10 i afegir en el seu següent valor. 1010 00:52:57,830 --> 00:53:01,880 I és per això que diuen que això és molt més semblant a les proves 1011 00:53:01,880 --> 00:53:06,920 un algoritme matemàtic front CS, però estic divagant. 1012 00:53:06,920 --> 00:53:08,080 Jo no escric les proves. 1013 00:53:08,080 --> 00:53:13,520 >> Així que una cosa que podem fer és que diuen que és igual a 10 vegades el valor. 1014 00:53:13,520 --> 00:53:16,630 Així que això canviarà seu dígit un cop cada vegada. 1015 00:53:16,630 --> 00:53:18,770 1016 00:53:18,770 --> 00:53:20,915 I després només volem afegir. 1017 00:53:20,915 --> 00:53:22,070 1018 00:53:22,070 --> 00:53:24,290 Volem afegir en el acabem de rebre, no? 1019 00:53:24,290 --> 00:53:25,350 1020 00:53:25,350 --> 00:53:31,649 Llavors, ¿com ens convertim en realitat la nostra De caràcters ASCII en el nombre 1021 00:53:31,649 --> 00:53:32,440 que representa? 1022 00:53:32,440 --> 00:53:37,680 1023 00:53:37,680 --> 00:53:40,800 >> Així que sabem que 0 és igual a 47, no? 1024 00:53:40,800 --> 00:53:44,260 Així que si 0 és 47, el que hauríem de fer perquè 1025 00:53:44,260 --> 00:53:47,376 per fer realitat sigui un int de 0? 1026 00:53:47,376 --> 00:53:48,384 >> AUDIÈNCIA: És 48. 1027 00:53:48,384 --> 00:53:49,050 ALLISON BUCHHOLTZ-AU: 48? 1028 00:53:49,050 --> 00:53:49,550 Ho sento. 1029 00:53:49,550 --> 00:53:53,500 1030 00:53:53,500 --> 00:53:55,100 Ens resta 48, no? 1031 00:53:55,100 --> 00:53:58,580 1032 00:53:58,580 --> 00:53:59,550 Recordi matemàtiques ASCII? 1033 00:53:59,550 --> 00:54:01,565 Podem tractar només com nombres normals. 1034 00:54:01,565 --> 00:54:02,570 1035 00:54:02,570 --> 00:54:05,900 Si els tracta com a nombres, es converteixen en els números d'eficàcia. 1036 00:54:05,900 --> 00:54:10,410 Així que si tenim es de i, que anem a dir en aquest cas és igual a 0. 1037 00:54:10,410 --> 00:54:14,420 Així s de i en aquest cas seria el ASCII-- 1038 00:54:14,420 --> 00:54:16,675 el int ASCII perquè seria 47. 1039 00:54:16,675 --> 00:54:17,750 1040 00:54:17,750 --> 00:54:19,875 Així que podríem subtract-- o 48. 1041 00:54:19,875 --> 00:54:20,930 1042 00:54:20,930 --> 00:54:22,440 Vostè podria fer això, és una manera. 1043 00:54:22,440 --> 00:54:25,125 Algú sap d'un millor manera que podríem fer 48? 1044 00:54:25,125 --> 00:54:27,220 1045 00:54:27,220 --> 00:54:31,608 Acabem de dir 0 és-- entrar en l'ASCII que podia fer cita 0. 1046 00:54:31,608 --> 00:54:39,740 1047 00:54:39,740 --> 00:54:43,160 Així ho fa tipus de fer sentit de com funciona això? 1048 00:54:43,160 --> 00:54:50,080 >> AUDIÈNCIA: En aquest punt, és el valor 0 perquè fins i tot si ho multipliques per 10, 1049 00:54:50,080 --> 00:54:53,340 estàs començant amb zero, pel que en cas que s'encén? 1050 00:54:53,340 --> 00:54:59,360 >> ALLISON BUCHHOLTZ-AU: Així que en aquest cas, voler multiplicar abans d'afegir, 1051 00:54:59,360 --> 00:55:06,650 perquè en aquest cas, sí, ho faria encara ser: el meu punter no es troba. 1052 00:55:06,650 --> 00:55:09,980 El valor en aquest cas, la primera temps correm serà zero. 1053 00:55:09,980 --> 00:55:12,320 Així que només estàs afegint en aquest primer dígit. 1054 00:55:12,320 --> 00:55:15,930 El que és important és que la propera vegada iterar, que vol desplaçar cap amunt 1055 00:55:15,930 --> 00:55:18,722 abans d'afegir el seu següent dígit a. 1056 00:55:18,722 --> 00:55:21,223 Això aclarir per a vostè? 1057 00:55:21,223 --> 00:55:21,723 Okay. 1058 00:55:21,723 --> 00:55:23,050 1059 00:55:23,050 --> 00:55:25,900 >> A vegades vas a aconseguir més coses estranyes Mathy. 1060 00:55:25,900 --> 00:55:28,020 1061 00:55:28,020 --> 00:55:30,750 Si tingués més de això, vostè encara va 1062 00:55:30,750 --> 00:55:32,610 a get-- faràs molt bé. 1063 00:55:32,610 --> 00:55:35,150 Crèdit parcial és una molt gran cosa sobre concursos CS50. 1064 00:55:35,150 --> 00:55:36,270 Així que escriure el que saps. 1065 00:55:36,270 --> 00:55:39,640 Si tens tot a excepció d'aquí, ets 1066 00:55:39,640 --> 00:55:41,390 encara va a fer molt bé el problema. 1067 00:55:41,390 --> 00:55:43,750 Com que vostè està demostrant, OK, jo sé gairebé. 1068 00:55:43,750 --> 00:55:45,570 Sé que he de recórrer. 1069 00:55:45,570 --> 00:55:47,260 Jo sé el que he de comprovar. 1070 00:55:47,260 --> 00:55:50,584 Acabo de fer no prou obtenir la forma de convertir-lo. 1071 00:55:50,584 --> 00:55:51,500 Vas a estar bé. 1072 00:55:51,500 --> 00:55:52,850 Sí, vostè va a perdre un parell de punts, 1073 00:55:52,850 --> 00:55:55,641 però vostè encara va a aconseguir un bon nombre de punts per a alguna cosa 1074 00:55:55,641 --> 00:55:57,990 com que si estàs falten aquestes dues línies. 1075 00:55:57,990 --> 00:56:00,660 M'agradaria ser com bé, aquesta persona sap el que estan fent. 1076 00:56:00,660 --> 00:56:02,070 Matemàtiques és difícil. 1077 00:56:02,070 --> 00:56:04,930 Així que jo diria que estaria bé. 1078 00:56:04,930 --> 00:56:09,474 >> Acceptar, de manera que els nois llestos per tracti de strlen amb punters ara 1079 00:56:09,474 --> 00:56:10,890 que vostès són mestres punter? 1080 00:56:10,890 --> 00:56:12,400 1081 00:56:12,400 --> 00:56:15,106 Així que vaig a deixar que vostès nois treballen que per una mica. 1082 00:56:15,106 --> 00:56:17,131 1083 00:56:17,131 --> 00:56:19,090 Si algú necessita un repàs. 1084 00:56:19,090 --> 00:56:23,120 1085 00:56:23,120 --> 00:56:28,060 Així que vostè vol utilitzar punter aritmètica, i després, si s és nul, 1086 00:56:28,060 --> 00:56:29,624 la seva aplicació ha de tornar 0. 1087 00:56:29,624 --> 00:56:37,045 1088 00:56:37,045 --> 00:56:39,670 Coses com aquesta que et fan molt feliç de simplement cridar strlen 1089 00:56:39,670 --> 00:56:40,586 al final del dia. 1090 00:56:40,586 --> 00:57:24,874 1091 00:57:24,874 --> 00:57:27,624 Crec que aquest podria ser una mica més fàcil que l'anterior, que 1092 00:57:27,624 --> 00:57:28,123 és bo. 1093 00:57:28,123 --> 00:58:51,789 1094 00:58:51,789 --> 00:58:55,690 Et vaig a donar un minut més nois, i després anem a treballar a través d'ell. 1095 00:58:55,690 --> 00:58:56,896 1096 00:58:56,896 --> 00:58:58,320 I després hem d'anar als interruptors. 1097 00:58:58,320 --> 00:59:32,480 1098 00:59:32,480 --> 00:59:34,660 >> Acceptar, nois llestos? 1099 00:59:34,660 --> 00:59:35,790 1100 00:59:35,790 --> 00:59:37,420 Potser una mica. 1101 00:59:37,420 --> 00:59:40,210 Així que jo li he donat el seu dues opcions, no? 1102 00:59:40,210 --> 00:59:45,810 Qualsevol de comprovar nul·la i retornar 0 si que és, o realment calcular la longitud. 1103 00:59:45,810 --> 00:59:48,220 Llavors, ¿qui vol escriure comprovar nul·la? 1104 00:59:48,220 --> 00:59:50,100 1105 00:59:50,100 --> 00:59:51,790 No t'ho pensis. 1106 00:59:51,790 --> 00:59:56,460 >> AUDIÈNCIA: Si parèntesi s és igual a és igual a nul·la rendibilitat 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 M'encanta quan la meitat del seu problema és simplement la comprovació de nuls. 1111 01:00:02,320 --> 01:00:04,820 Sé que amb vostès últim setmana jo estava com a xec per nul 1112 01:00:04,820 --> 01:00:06,630 literalment cada vegada. 1113 01:00:06,630 --> 01:00:07,510 Acceptar, així que-- 1114 01:00:07,510 --> 01:00:08,716 1115 01:00:08,716 --> 01:00:12,750 >> AUDIÈNCIA: Si return 0 és només una línia, Quina falta ens fan el suport arrissat? 1116 01:00:12,750 --> 01:00:15,860 >> ALLISON BUCHHOLTZ-AU: No ho fa tècnicament necessitar, sempre ets consistent. 1117 01:00:15,860 --> 01:00:19,240 És una bona pràctica només a adquirir l'hàbit 1118 01:00:19,240 --> 01:00:21,650 de la utilització de claus, però tècnicament no. 1119 01:00:21,650 --> 01:00:23,320 No els necessita per a una línia. 1120 01:00:23,320 --> 01:00:26,030 Nosaltres només tendim a recomanar per a les persones que comencen a programar. 1121 01:00:26,030 --> 01:00:27,740 1122 01:00:27,740 --> 01:00:30,450 >> Així que ara el que podríem voler fer aquí? 1123 01:00:30,450 --> 01:00:32,222 Així que ara que sabem que la nostra cadena és vàlida. 1124 01:00:32,222 --> 01:00:33,680 Volem mantenir càlcul de la longitud. 1125 01:00:33,680 --> 01:00:35,620 Quin és, probablement, la primera El que volem fer? 1126 01:00:35,620 --> 01:00:38,770 1127 01:00:38,770 --> 01:00:41,276 >> AUDIÈNCIA: Crear una int que és la longitud. 1128 01:00:41,276 --> 01:00:42,150 ALLISON BUCHHOLTZ-AU: Exactament. 1129 01:00:42,150 --> 01:00:43,450 AUDIÈNCIA: I volem configurar-lo perquè? 1130 01:00:43,450 --> 01:00:44,210 ALLISON BUCHHOLTZ-AU: 0. 1131 01:00:44,210 --> 01:00:44,710 Perfecte. 1132 01:00:44,710 --> 01:00:46,050 1133 01:00:46,050 --> 01:00:47,290 Bé. 1134 01:00:47,290 --> 01:00:48,750 Ara el que vull fer? 1135 01:00:48,750 --> 01:00:50,000 Això és realment la major part d'ella. 1136 01:00:50,000 --> 01:00:50,890 No t'ho pensis. 1137 01:00:50,890 --> 01:00:54,370 >> AUDIÈNCIA: Així que probablement ho fa un bucle for. 1138 01:00:54,370 --> 01:01:03,150 I després, ja quan es diu s ets obtenir l'adreça de la primera hora, 1139 01:01:03,150 --> 01:01:05,660 vostè començaria amb i és igual a 0. 1140 01:01:05,660 --> 01:01:07,980 1141 01:01:07,980 --> 01:01:15,755 I després, sempre i quan x a més que no està de tornada slash 0. 1142 01:01:15,755 --> 01:01:17,130 ALLISON BUCHHOLTZ-AU: El separador nul. 1143 01:01:17,130 --> 01:01:18,380 AUDIÈNCIA: El separador nul. 1144 01:01:18,380 --> 01:01:18,890 1145 01:01:18,890 --> 01:01:21,088 A continuació, s'afegeix un de longitud. 1146 01:01:21,088 --> 01:01:22,372 >> ALLISON BUCHHOLTZ-AU: Sí. 1147 01:01:22,372 --> 01:01:25,940 Acceptar, pel que permet convertir aquesta en codi molt concreta. 1148 01:01:25,940 --> 01:01:27,537 Però aquesta és la idea perfecta. 1149 01:01:27,537 --> 01:01:28,870 Això és exactament el que estem fent. 1150 01:01:28,870 --> 01:01:31,910 Anem a ser la iteració a través amb el punter. 1151 01:01:31,910 --> 01:01:34,590 Així que el que volem fer és lloc d'un int 1152 01:01:34,590 --> 01:01:36,660 aquí, perquè som no es refereix a una xarxa IT. 1153 01:01:36,660 --> 01:01:42,390 Ens referim a l'inici d'una cadena, de començar a ser una mica de direcció, 1154 01:01:42,390 --> 01:01:43,300 Oi? 1155 01:01:43,300 --> 01:01:44,600 >> Per això volem un punter. 1156 01:01:44,600 --> 01:01:47,610 1157 01:01:47,610 --> 01:01:52,310 Així que anem a tenir una mica d'estrella char, perquè correspon als nostres s, no? 1158 01:01:52,310 --> 01:01:57,270 Així que aquest és un moment que estem inicialitzar l'inici de la cadena, d'acord? 1159 01:01:57,270 --> 01:01:58,949 Així que anem a cridar i. 1160 01:01:58,949 --> 01:02:01,740 Si és el principi de la cadena, ¿Què serà assignat a? 1161 01:02:01,740 --> 01:02:03,690 1162 01:02:03,690 --> 01:02:04,530 No 0. 1163 01:02:04,530 --> 01:02:06,238 Nosaltres volem que sigui la començament de la nostra cadena. 1164 01:02:06,238 --> 01:02:07,170 1165 01:02:07,170 --> 01:02:09,960 El que representa l'inici de la nostra cadena que ens va ser donat? 1166 01:02:09,960 --> 01:02:10,800 >> AUDIÈNCIA: Just 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 Així que això crea un nou punter que representa l'inici de la nostra cadena, d'acord? 1170 01:02:17,890 --> 01:02:19,430 1171 01:02:19,430 --> 01:02:22,777 Una altra forma de pensar d'ella és com aquí està la nostra matriu. 1172 01:02:22,777 --> 01:02:26,690 Aquesta és la nostra cadena, s. 1173 01:02:26,690 --> 01:02:28,650 1174 01:02:28,650 --> 01:02:32,400 Així que diguem que aquest és el primer lloc, i això és 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 Aquesta és la nostra s, que sosté que la direcció. 1179 01:02:38,535 --> 01:02:39,810 1180 01:02:39,810 --> 01:02:45,960 I acabem de crear una altra anomenada i que només es refereix a la mateixa cosa. 1181 01:02:45,960 --> 01:02:49,437 Així que els dos estan simplement apuntant a l'inici de la nostra cadena. 1182 01:02:49,437 --> 01:02:51,020 Això és només una representació gràfica. 1183 01:02:51,020 --> 01:02:53,830 1184 01:02:53,830 --> 01:02:57,100 >> Així que ara el que volem fer és que volem repetir 1185 01:02:57,100 --> 01:03:02,040 la nostra condició d'iteració a través de la nostra cadena. 1186 01:03:02,040 --> 01:03:02,920 Ara anar de compres. 1187 01:03:02,920 --> 01:03:04,150 He d'anar a comprar, nois. 1188 01:03:04,150 --> 01:03:06,290 1189 01:03:06,290 --> 01:03:12,390 És que volem mantenir l'actualització fins arribem al terminador nul, no? 1190 01:03:12,390 --> 01:03:14,930 Llavors, què podria que sembla? 1191 01:03:14,930 --> 01:03:17,760 1192 01:03:17,760 --> 01:03:21,880 Volem i, o volem estrella i és la pregunta? 1193 01:03:21,880 --> 01:03:26,160 1194 01:03:26,160 --> 01:03:29,255 És el terminador nul una adreça o alguna cosa situat en una direcció? 1195 01:03:29,255 --> 01:03:31,420 1196 01:03:31,420 --> 01:03:33,660 Situat en una direcció, ¿no? 1197 01:03:33,660 --> 01:03:38,420 >> Així que hem d'eliminar la referència del que és aquí, perquè això és només una mica de direcció. 1198 01:03:38,420 --> 01:03:44,350 Per aconseguir realment l'inici hem d'eliminar la referència d'aquest 1199 01:03:44,350 --> 01:03:46,770 pel que en realitat obtenim el que hi ha en aquest primer lloc. 1200 01:03:46,770 --> 01:03:48,690 1201 01:03:48,690 --> 01:03:52,910 Així que si ho fem Star I, el que No volem que la igualtat? 1202 01:03:52,910 --> 01:03:53,885 1203 01:03:53,885 --> 01:03:54,760 AUDIÈNCIA: Tornar barra? 1204 01:03:54,760 --> 01:03:57,760 1205 01:03:57,760 --> 01:03:59,260 >> ALLISON BUCHHOLTZ-AU: No. 1206 01:03:59,260 --> 01:04:01,430 Això té sentit per a tothom? 1207 01:04:01,430 --> 01:04:05,620 Hem d'entrar a la nostra cadena i assegurar-se que no és el final. 1208 01:04:05,620 --> 01:04:07,200 1209 01:04:07,200 --> 01:04:08,990 I llavors podem simplement actualitzar així. 1210 01:04:08,990 --> 01:04:09,680 Actualització normal. 1211 01:04:09,680 --> 01:04:11,910 1212 01:04:11,910 --> 01:04:15,070 Així que, mentre aquests són Met, ¿què és el que hem de fer? 1213 01:04:15,070 --> 01:04:17,700 1214 01:04:17,700 --> 01:04:18,852 >> AUDIÈNCIA: Longitud plus plus. 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 I després, després del bucle for acaba, ¿què és el que volem tornar? 1218 01:04:25,540 --> 01:04:27,082 1219 01:04:27,082 --> 01:04:27,790 AUDIÈNCIA: longitud? 1220 01:04:27,790 --> 01:04:28,623 ALLISON BUCHHOLTZ-AU: longitud. 1221 01:04:28,623 --> 01:04:29,910 1222 01:04:29,910 --> 01:04:30,760 Cal anar. 1223 01:04:30,760 --> 01:04:33,790 1224 01:04:33,790 --> 01:04:37,810 Òbviament la carn d'aquest és la comprensió d'aquest bucle. 1225 01:04:37,810 --> 01:04:39,280 1226 01:04:39,280 --> 01:04:41,090 Tothom obtenir la forma que van treballar? 1227 01:04:41,090 --> 01:04:42,460 1228 01:04:42,460 --> 01:04:44,170 Estic content d'anar-hi de nou. 1229 01:04:44,170 --> 01:04:48,400 >> AUDIÈNCIA: La segona part, per la qual cosa l'estrella i allà, 1230 01:04:48,400 --> 01:04:51,834 aquesta és l'adreça de la primer-- 1231 01:04:51,834 --> 01:04:53,250 ALLISON BUCHHOLTZ-AU: No és la direcció. 1232 01:04:53,250 --> 01:04:54,142 És el que està en. 1233 01:04:54,142 --> 01:04:55,600 AUDIÈNCIA: Això és en realitat en aquest país. 1234 01:04:55,600 --> 01:04:57,475 ALLISON BUCHHOLTZ-AU: Això és el que és en realitat en aquest país. 1235 01:04:57,475 --> 01:05:01,280 Així que això és deixar que dient-- em faig aquesta millor. 1236 01:05:01,280 --> 01:05:07,940 Així que això és 0x04, i jo només vaig per dir que vaig a fer això el meu nom. 1237 01:05:07,940 --> 01:05:14,531 1238 01:05:14,531 --> 01:05:15,030 Okay. 1239 01:05:15,030 --> 01:05:17,456 1240 01:05:17,456 --> 01:05:19,080 Sí, sé que tinc opinió concurs d'aquesta nit. 1241 01:05:19,080 --> 01:05:20,620 1242 01:05:20,620 --> 01:05:21,540 Un munt d'opinió Quiz. 1243 01:05:21,540 --> 01:05:23,500 1244 01:05:23,500 --> 01:05:26,620 Així que diguem que aquesta cadena és el meu nom, Allison. 1245 01:05:26,620 --> 01:05:28,600 Poc desordenat, però hi és. 1246 01:05:28,600 --> 01:05:33,640 I s representa la ubicació d'on comença la cadena, 1247 01:05:33,640 --> 01:05:41,950 així que vaig a fer això real-- aquesta és l'adreça d'una, 1248 01:05:41,950 --> 01:05:45,000 on comença la cadena, no? 1249 01:05:45,000 --> 01:05:48,560 >> Així que el que fem aquí és que volem utilitzar punters per recórrer. 1250 01:05:48,560 --> 01:05:49,920 1251 01:05:49,920 --> 01:05:56,870 Així que vam crear algun punter, i, que també és igual a la d'inici de la cadena. 1252 01:05:56,870 --> 01:05:57,880 1253 01:05:57,880 --> 01:06:03,820 I en cada punt, volem continuar passant per la matriu 1254 01:06:03,820 --> 01:06:07,570 aquí fins que ens colpegem el terminador nul. 1255 01:06:07,570 --> 01:06:12,320 Així que sempre volem comprovar què és en cadascuna d'aquestes direccions. 1256 01:06:12,320 --> 01:06:15,730 >> Per tant, eliminar la referència i, de manera que la primera vegada que ho fem nosaltres 1257 01:06:15,730 --> 01:06:17,810 a dir, OK, el que està en la direcció 0x04? 1258 01:06:17,810 --> 01:06:19,060 1259 01:06:19,060 --> 01:06:19,720 És un a. 1260 01:06:19,720 --> 01:06:20,660 Bé, estem bé. 1261 01:06:20,660 --> 01:06:21,770 Increment de longitud. 1262 01:06:21,770 --> 01:06:22,790 Passar a la següent. 1263 01:06:22,790 --> 01:06:32,410 Així que jo-- recordar punters augment pel mida del que estan assenyalant. 1264 01:06:32,410 --> 01:06:35,320 Així doncs, en aquest cas, ja que és un char, que va a actualitzar a un. 1265 01:06:35,320 --> 01:06:38,755 Així que ara anem a mirar a 5, el que significa que va per aquí. 1266 01:06:38,755 --> 01:06:39,860 1267 01:06:39,860 --> 01:06:43,440 Pel que diu bé, anar a 0x05. 1268 01:06:43,440 --> 01:06:44,270 Què hi ha aquí? 1269 01:06:44,270 --> 01:06:44,930 És una l. 1270 01:06:44,930 --> 01:06:47,870 I seguirà fent que fins que arriba a aquest. 1271 01:06:47,870 --> 01:06:50,990 I diu bé, el que està en sigui quina sigui la direcció que és això? 1272 01:06:50,990 --> 01:06:53,060 El separador nul, a D'acord. 1273 01:06:53,060 --> 01:06:53,870 Sortida. 1274 01:06:53,870 --> 01:06:55,240 I just tornar longitud. 1275 01:06:55,240 --> 01:06:56,370 1276 01:06:56,370 --> 01:06:59,800 Perquè vostè necessita el que en realitat és a aquesta direcció, no l'adreça de si mateix. 1277 01:06:59,800 --> 01:07:03,110 1278 01:07:03,110 --> 01:07:05,790 >> Hi ha molt pocs llocs on que realment necessita la direcció. 1279 01:07:05,790 --> 01:07:08,720 La majoria de les vegades quan utilitzeu la i és 1280 01:07:08,720 --> 01:07:12,424 quan vostè és el primer l'assignació d'un punter o quan 1281 01:07:12,424 --> 01:07:14,090 estàs passant en una altra funció. 1282 01:07:14,090 --> 01:07:16,350 1283 01:07:16,350 --> 01:07:21,330 Acceptar, tots bé allà? 1284 01:07:21,330 --> 01:07:21,830 Tipus de? 1285 01:07:21,830 --> 01:07:23,810 1286 01:07:23,810 --> 01:07:25,040 Okay. 1287 01:07:25,040 --> 01:07:28,210 >> Així que sembla que hem té al voltant de 12 minuts per al final, 1288 01:07:28,210 --> 01:07:31,340 així que anirem a potser el nostre últim problema, 1289 01:07:31,340 --> 01:07:34,230 i després hi ha alguna conceptes que han sorgit 1290 01:07:34,230 --> 01:07:36,830 mentrestant podem anar ràpidament sobre això. 1291 01:07:36,830 --> 01:07:42,310 >> Així que canviar de marxa és l'última problema aquí, canviar estats. 1292 01:07:42,310 --> 01:07:44,970 1293 01:07:44,970 --> 01:07:49,450 Així que el seu treball és tornar a escriure aquest de manera que es comporta de la mateixa 1294 01:07:49,450 --> 01:07:50,580 però no utilitza els interruptors. 1295 01:07:50,580 --> 01:07:53,684 1296 01:07:53,684 --> 01:07:54,666 Mans guix. 1297 01:07:54,666 --> 01:08:11,630 1298 01:08:11,630 --> 01:08:13,420 Així que qualsevol pregunta sobre aquest fos el bat? 1299 01:08:13,420 --> 01:08:15,420 1300 01:08:15,420 --> 01:08:15,920 Cap? 1301 01:08:15,920 --> 01:08:16,420 Okay. 1302 01:08:16,420 --> 01:08:17,920 1303 01:08:17,920 --> 01:08:22,170 Tothom entén que si el cas no té res després d'ella, 1304 01:08:22,170 --> 01:08:25,029 que significa que ha segueixi el següent pas? 1305 01:08:25,029 --> 01:08:28,200 Així que el cas 1 i 2 en aquest cas fer exactament el mateix. 1306 01:08:28,200 --> 01:08:31,153 1307 01:08:31,153 --> 01:08:32,444 Algunes vegades un moment de confusió. 1308 01:08:32,444 --> 01:09:32,700 1309 01:09:32,700 --> 01:09:33,488 >> Bé. 1310 01:09:33,488 --> 01:09:34,404 Algú té alguna idea? 1311 01:09:34,404 --> 01:09:36,364 1312 01:09:36,364 --> 01:09:36,864 Sí? 1313 01:09:36,864 --> 01:09:40,120 >> AUDIÈNCIA: Així que vostè pot només ho fan si les declaracions. 1314 01:09:40,120 --> 01:09:41,140 >> ALLISON BUCHHOLTZ-AU: mm-hm. 1315 01:09:41,140 --> 01:09:42,880 Quina és la nostra primera? 1316 01:09:42,880 --> 01:09:48,120 >> AUDIÈNCIA: Si n és igual és igual a 1, i les 2 línies per o n és igual 1317 01:09:48,120 --> 01:09:51,059 és igual a 2, després la lletra petita. 1318 01:09:51,059 --> 01:09:57,760 1319 01:09:57,760 --> 01:09:59,520 I a continuació, es pot fer una altra cosa si? 1320 01:09:59,520 --> 01:10:02,160 O pots simplement fer un si? 1321 01:10:02,160 --> 01:10:03,650 >> ALLISON BUCHHOLTZ-AU: Vostè pot fer una altra cosa si? 1322 01:10:03,650 --> 01:10:05,274 >> AUDIÈNCIA: Li importa si ho fas si? 1323 01:10:05,274 --> 01:10:06,320 ALLISON BUCHHOLTZ-AU: Pel que fa. 1324 01:10:06,320 --> 01:10:10,160 Fa anyone-- així, obtindrà el mateix resultat 1325 01:10:10,160 --> 01:10:13,930 si s'utilitza només passaria front si utilitza IFS altres. 1326 01:10:13,930 --> 01:10:17,090 Podeu pensar en la raó per què és possible que vulgueu utilitzar una cosa 1327 01:10:17,090 --> 01:10:18,680 si davant d'una gran quantitat de IFS? 1328 01:10:18,680 --> 01:10:20,260 1329 01:10:20,260 --> 01:10:21,510 Ha de amb eficiència. 1330 01:10:21,510 --> 01:10:22,225 Sí? 1331 01:10:22,225 --> 01:10:24,783 >> AUDIÈNCIA: Es comprovaria tots els IFS cada vegada. 1332 01:10:24,783 --> 01:10:26,076 1333 01:10:26,076 --> 01:10:28,110 >> ALLISON BUCHHOLTZ-AU: Així que fins i tot si va colpejar aquesta primera, 1334 01:10:28,110 --> 01:10:29,880 que aniria en xec cada altre. 1335 01:10:29,880 --> 01:10:36,690 Així que vostè vol utilitzar if-else IFS en casos on només un d'ells mai s'aplicarà. 1336 01:10:36,690 --> 01:10:39,380 Així que l'exclusió mútua és el que tendim a dir. 1337 01:10:39,380 --> 01:10:41,410 1338 01:10:41,410 --> 01:10:46,550 Si vostè té un munt de sís, significa que potser més d'un d'ells 1339 01:10:46,550 --> 01:10:49,630 assumptes, i potser més de un d'ells pot ser veritat. 1340 01:10:49,630 --> 01:10:51,910 I voleu tant d'ells per a executar si són certes. 1341 01:10:51,910 --> 01:10:57,180 Si només desitja un d'ells per treballar en aquests casos mútuament excloents, 1342 01:10:57,180 --> 01:11:00,790 voleu utilitzar un altre si, perquè tot té a veure amb l'eficiència. 1343 01:11:00,790 --> 01:11:05,350 El seu codi és simplement millor dissenyat si s'adhereix a aquesta pràctica. 1344 01:11:05,350 --> 01:11:07,330 Així que en aquest cas tindrem una persona si. 1345 01:11:07,330 --> 01:11:09,080 I això seria? 1346 01:11:09,080 --> 01:11:11,890 >> AUDIÈNCIA: n és igual és igual a 3. 1347 01:11:11,890 --> 01:11:12,765 ALLISON BUCHHOLTZ-AU: Perfecte. 1348 01:11:12,765 --> 01:11:19,420 1349 01:11:19,420 --> 01:11:20,445 Suports. 1350 01:11:20,445 --> 01:11:25,190 1351 01:11:25,190 --> 01:11:29,930 I després, en la nostra última cas, ¿què tenim? 1352 01:11:29,930 --> 01:11:31,495 Altres vendes o bé si? 1353 01:11:31,495 --> 01:11:32,120 AUDIÈNCIA: Else. 1354 01:11:32,120 --> 01:11:33,450 1355 01:11:33,450 --> 01:11:37,900 >> ALLISON BUCHHOLTZ-AU: Tenim want-- Vol més si ja tenim casos concrets. 1356 01:11:37,900 --> 01:11:39,270 No és una mena de calaix de sastre. 1357 01:11:39,270 --> 01:11:44,247 Si vostè tenia un defecte en un switch-- recordar en interruptors que pot tenir el cas, 1358 01:11:44,247 --> 01:11:45,330 i llavors vostè té per defecte. 1359 01:11:45,330 --> 01:11:48,760 Si vostè tenia un defecte, que és una espècie del seu estat de compte més allà. 1360 01:11:48,760 --> 01:11:52,180 Però si només té casos, que significa que vostè necessita 1361 01:11:52,180 --> 01:11:54,315 per comprovar si es tracta de cada un d'aquells. 1362 01:11:54,315 --> 01:11:57,755 Així, en aquest cas, seria el 4 o 5. 1363 01:11:57,755 --> 01:12:00,480 1364 01:12:00,480 --> 01:12:01,450 Volem una empremta. 1365 01:12:01,450 --> 01:12:02,990 1366 01:12:02,990 --> 01:12:03,630 És gran. 1367 01:12:03,630 --> 01:12:06,640 1368 01:12:06,640 --> 01:12:07,509 I aquí ho tens. 1369 01:12:07,509 --> 01:12:08,800 I això seria el seu programa. 1370 01:12:08,800 --> 01:12:11,890 1371 01:12:11,890 --> 01:12:17,050 >> Així que en aquest cas si tenia un defecte alguna cosa, 1372 01:12:17,050 --> 01:12:20,470 tindríem una més en el que volia que féssim. 1373 01:12:20,470 --> 01:12:23,365 Així que és una bona distinció és a dir, de comprendre. 1374 01:12:23,365 --> 01:12:25,368 1375 01:12:25,368 --> 01:12:27,790 Això ajuda amb interruptors per a vostè? 1376 01:12:27,790 --> 01:12:28,800 Perfecte. 1377 01:12:28,800 --> 01:12:29,390 Bé. 1378 01:12:29,390 --> 01:12:31,320 1379 01:12:31,320 --> 01:12:33,340 >> Tenim prop de vuit minuts per al final. 1380 01:12:33,340 --> 01:12:37,090 Vostès tenen alguna altres conceptes d'alt nivell? 1381 01:12:37,090 --> 01:12:38,720 Preguntes en general? 1382 01:12:38,720 --> 01:12:39,220 Sí? 1383 01:12:39,220 --> 01:12:42,860 >> AUDIÈNCIA: Vaig tenir una pregunta sobre d'un d'ells 1384 01:12:42,860 --> 01:12:46,257 això va ser l'atzar generador de nombres en concurs zero. 1385 01:12:46,257 --> 01:12:47,340 ALLISON BUCHHOLTZ-AU: Oh, això. 1386 01:12:47,340 --> 01:12:51,460 Aquest és un altre on és més matemàtica no sigui: sí. 1387 01:12:51,460 --> 01:12:53,800 1388 01:12:53,800 --> 01:12:59,452 La solució a que-- Jo fins i tot quan Jo ho veig, jo sóc com el que és això. 1389 01:12:59,452 --> 01:13:00,590 >> AUDIÈNCIA: Era el número 7. 1390 01:13:00,590 --> 01:13:02,720 1391 01:13:02,720 --> 01:13:05,310 >> ALLISON BUCHHOLTZ-AU: És estrany, al meu entendre. 1392 01:13:05,310 --> 01:13:07,260 1393 01:13:07,260 --> 01:13:11,630 Així que bàsicament vostè vol utilitzar drand48, que 1394 01:13:11,630 --> 01:13:15,420 li donarà una mica de nombre entre 0 i 1. 1395 01:13:15,420 --> 01:13:21,200 I voleu utilitzar-lo de manera que d'alguna manera obtenir A-- 1396 01:13:21,200 --> 01:13:26,690 i és molt més d'un problema de matemàtiques per a mi que crec que un problema CS. 1397 01:13:26,690 --> 01:13:29,040 1398 01:13:29,040 --> 01:13:37,845 >> La forma en què ho fas i it-- de vegades només serà així. 1399 01:13:37,845 --> 01:13:39,340 1400 01:13:39,340 --> 01:13:41,090 Una vegada més, aquests són els els casos en que és una espècie 1401 01:13:41,090 --> 01:13:46,310 de com escriure el que pot i de crèdit parcial. 1402 01:13:46,310 --> 01:13:47,800 1403 01:13:47,800 --> 01:13:51,510 Així que si volem un canvi, sabem que estem 1404 01:13:51,510 --> 01:13:54,182 utilitzarà drand48 d'alguna manera, no? 1405 01:13:54,182 --> 01:13:55,640 Així que per què no acaba d'anotar que cap avall. 1406 01:13:55,640 --> 01:13:58,286 1407 01:13:58,286 --> 01:13:59,410 Estem utilitzant d'alguna manera. 1408 01:13:59,410 --> 01:14:00,780 1409 01:14:00,780 --> 01:14:04,190 La forma que tenen vostès ho fa servir és 1410 01:14:04,190 --> 01:14:08,175 com això, que vaig a tractar d'explicar. 1411 01:14:08,175 --> 01:14:10,200 1412 01:14:10,200 --> 01:14:15,340 >> Així que bàsicament el que passa aquí és perquè és entre 0 i 1, 1413 01:14:15,340 --> 01:14:19,300 el que estàs fent és que estàs multiplicant por-- això és en gran mesura una qüestió de matemàtiques. 1414 01:14:19,300 --> 01:14:22,010 Simplement completa exempció de responsabilitat, és a dir completament una qüestió de matemàtiques. 1415 01:14:22,010 --> 01:14:23,990 El que estàs fent és a causa de 0 i 1 i 1416 01:14:23,990 --> 01:14:26,460 vull que sigui dins aquest rang, en realitat 1417 01:14:26,460 --> 01:14:29,360 esbrinar què tan gran el rang és, i després 1418 01:14:29,360 --> 01:14:32,710 que, bàsicament, l'escala cap amunt, que és el que això està fent. 1419 01:14:32,710 --> 01:14:39,050 >> b almenys una li dóna aquest rang, el diferència entre aquests nombres. 1420 01:14:39,050 --> 01:14:44,040 Vostè pot multiplicar entre 0 i 1, i després l'addició d'un sol 1421 01:14:44,040 --> 01:14:48,870 vol dir que l'escalat cap amunt de manera que sigui entre a i b, 1422 01:14:48,870 --> 01:14:52,377 que no em va agradar de veritat aquest problema. 1423 01:14:52,377 --> 01:14:58,380 1424 01:14:58,380 --> 01:15:01,790 Com he dit, aquest qüestionari s'entén que abasta 1425 01:15:01,790 --> 01:15:04,110 les persones que són menys còmodes, en algun punt intermedi, 1426 01:15:04,110 --> 01:15:05,070 i més còmode. 1427 01:15:05,070 --> 01:15:07,550 Així que si ho van fer de manera que es tractava d'alguna cosa 1428 01:15:07,550 --> 01:15:10,050 que tothom en el menor còmode lloc aconseguiria, 1429 01:15:10,050 --> 01:15:12,259 tindríem massa gent anotant perfecciona, 1430 01:15:12,259 --> 01:15:13,925 i el més còmode seria avorrit. 1431 01:15:13,925 --> 01:15:14,980 1432 01:15:14,980 --> 01:15:18,970 >> Així que sempre tenen aquests tipus de preguntes desafiament per a la ment 1433 01:15:18,970 --> 01:15:22,695 que estan destinats a ser una mica més difícil que prengui una mica de pensament creatiu. 1434 01:15:22,695 --> 01:15:25,030 1435 01:15:25,030 --> 01:15:27,790 Quan vostè els veu, no massa perplex. 1436 01:15:27,790 --> 01:15:31,720 Definitivament, m'agradaria dir flip a través del seu concurs en primer lloc. 1437 01:15:31,720 --> 01:15:35,020 Davant els problemes que vostè sap que pot, 1438 01:15:35,020 --> 01:15:38,480 perquè no serveix de res quedar encallat en un problema quan hi ha tres 1439 01:15:38,480 --> 01:15:42,090 o de quatre o cinc a la pàgina després que vostè pot fer fàcilment. 1440 01:15:42,090 --> 01:15:45,331 1441 01:15:45,331 --> 01:15:48,520 >> AUDIÈNCIA: Per què és exactament el que es multiplica pel rang? 1442 01:15:48,520 --> 01:15:54,935 >> ALLISON BUCHHOLTZ-AU: es multiplica el rang que vostè sabes-- és com la quantitat després d'un 1443 01:15:54,935 --> 01:15:55,485 Vols? 1444 01:15:55,485 --> 01:15:57,840 1445 01:15:57,840 --> 01:16:02,130 Així que vostè pot pensar, perquè retorna un nombre entre 0 i 1, 1446 01:16:02,130 --> 01:16:03,890 es pot pensar en ell com un percentatge. 1447 01:16:03,890 --> 01:16:12,195 Així que és bàsicament dient que si tenim la nostra línia número aquí, una és aquí, 1448 01:16:12,195 --> 01:16:13,840 i b és aquí. 1449 01:16:13,840 --> 01:16:19,170 Ets com la quantitat d'un passat és? 1450 01:16:19,170 --> 01:16:20,010 És tot el que estem fent. 1451 01:16:20,010 --> 01:16:24,920 Així que vostè està demanant el percentatge d'aquest rang, el qual 1452 01:16:24,920 --> 01:16:26,170 és el que t'està donant. 1453 01:16:26,170 --> 01:16:30,915 I llavors, bàsicament, només escalar cap amunt mitjançant l'addició d'a. 1454 01:16:30,915 --> 01:16:32,302 És un desafiament per a la ment matemàtica. 1455 01:16:32,302 --> 01:16:35,400 1456 01:16:35,400 --> 01:16:39,060 >> Si hi havia algun consell d'última hora, jo diria flip a través de les preguntes, 1457 01:16:39,060 --> 01:16:41,660 esbrinar quines vostè Sé que com, oh jo m'encarrego. 1458 01:16:41,660 --> 01:16:43,196 1459 01:16:43,196 --> 01:16:45,820 Gairebé segurament van a ser preguntes que vostè no sabrà 1460 01:16:45,820 --> 01:16:49,580 o que vostè va a tenir temps per, per ho va copejar les seves fortaleses, d'acord? 1461 01:16:49,580 --> 01:16:50,990 Vostès van a excel·lent. 1462 01:16:50,990 --> 01:16:52,740 Hi ha una gran quantitat de preguntes per una raó, 1463 01:16:52,740 --> 01:16:57,140 perquè vostè tingui temps per tipus de tenir l'oportunitat 1464 01:16:57,140 --> 01:16:59,330 per demostrar el que vostè és realment bo. 1465 01:16:59,330 --> 01:17:02,370 Així que està bé si estàs no és bo en tot. 1466 01:17:02,370 --> 01:17:03,371 Jugar a les teves fortaleses. 1467 01:17:03,371 --> 01:17:03,870 Sí? 1468 01:17:03,870 --> 01:17:06,536 >> AUDIÈNCIA: Així és aquest va a tornar alguna cosa que ha truncat? 1469 01:17:06,536 --> 01:17:10,810 1470 01:17:10,810 --> 01:17:15,015 Sí, ho farà, perquè Drand rendiments entre 0 i 1. 1471 01:17:15,015 --> 01:17:17,459 1472 01:17:17,459 --> 01:17:19,250 Es tornarà una int, perquè va a truncar 1473 01:17:19,250 --> 01:17:22,933 quan afegim una o multipliquem per ella. 1474 01:17:22,933 --> 01:17:27,670 1475 01:17:27,670 --> 01:17:28,442 Refredar. 1476 01:17:28,442 --> 01:17:29,525 Per a qualsevol dubte d'última hora? 1477 01:17:29,525 --> 01:17:31,310 1478 01:17:31,310 --> 01:17:32,615 >> Vostès van a fer molt bé. 1479 01:17:32,615 --> 01:17:34,440 Vostè serà fabulós. 1480 01:17:34,440 --> 01:17:37,100 I fins i tot si no és així, hi haurà ser dolços aquí la propera setmana. 1481 01:17:37,100 --> 01:17:39,040 1482 01:17:39,040 --> 01:17:40,020 I jo t'estimaré. 1483 01:17:40,020 --> 01:17:41,270 T'estimo nois independentment. 1484 01:17:41,270 --> 01:17:42,550 1485 01:17:42,550 --> 01:17:43,930 Molt bé, tothom, la bona sort. 1486 01:17:43,930 --> 01:17:44,680 Tenen un gran temps. 1487 01:17:44,680 --> 01:17:45,620 1488 01:17:45,620 --> 01:17:46,620 Vas a estar bé. 1489 01:17:46,620 --> 01:17:47,370 I saps què? 1490 01:17:47,370 --> 01:17:50,310 En dos dies es va haver acabat, mentre que jo 1491 01:17:50,310 --> 01:17:53,675 tenir dos exàmens parcials dijous, per la qual cosa almenys es farà vostès. 1492 01:17:53,675 --> 01:17:56,550 Molt bé, vaig a veure vostès la setmana que ve. 1493 01:17:56,550 --> 01:17:58,208