1 00:00:00,000 --> 00:00:00,960 2 00:00:00,960 --> 00:00:03,360 >> [CHWARAE CERDDORIAETH] 3 00:00:03,360 --> 00:00:11,050 4 00:00:11,050 --> 00:00:12,065 >> DAVIN: pob hawl, guys. 5 00:00:12,065 --> 00:00:13,642 6 00:00:13,642 --> 00:00:15,350 Felly mae hwn yn yr adolygiad am y cwis cyntaf. 7 00:00:15,350 --> 00:00:17,751 A yw pawb yn barod ar gyfer y cwis ar ddydd Mercher? 8 00:00:17,751 --> 00:00:18,292 ALLISON: Woo! 9 00:00:18,292 --> 00:00:18,743 MYFYRIWR: Woo! 10 00:00:18,743 --> 00:00:19,242 DAVIN: Yeah. 11 00:00:19,242 --> 00:00:19,920 ALLISON: Yeah! 12 00:00:19,920 --> 00:00:20,920 DAVIN: Bod guy yn barod. 13 00:00:20,920 --> 00:00:22,200 Mae hynny'n guy, dwy law, 'n glws. 14 00:00:22,200 --> 00:00:23,234 15 00:00:23,234 --> 00:00:25,900 Felly adolygiad cwis heddiw, mae'n mynd i fod tua awr a hanner. 16 00:00:25,900 --> 00:00:27,940 Rydym yn mynd i fynd dros yr holl brif cysyniadau dylech wybod am y cwis. 17 00:00:27,940 --> 00:00:31,434 Rydym yn mynd i fynd dros rai codio gan enghreifftiau llaw, sydd ar bob cwis. 18 00:00:31,434 --> 00:00:34,350 Ac os oes gennych gwestiynau, mae croeso i godi eich llaw a phopeth 19 00:00:34,350 --> 00:00:34,945 fel 'na. 20 00:00:34,945 --> 00:00:36,695 Wel, logisteg ynglŷn â y cwis ar-lein. 21 00:00:36,695 --> 00:00:38,450 Felly, rydym yn mynd i rannu pobl i fyny i mewn gwahanol ystafelloedd. 22 00:00:38,450 --> 00:00:39,491 Mae'n seiliedig ar eu henw. 23 00:00:39,491 --> 00:00:43,630 Felly os oes gennych unrhyw gwestiynau ynghylch lle i fynd neu ynghylch pa ddeunydd sydd, fel, 24 00:00:43,630 --> 00:00:46,810 y gair swyddogol ar yr hyn sy'n digwydd i fod ar y cwis, gwiriwch ar-lein. 25 00:00:46,810 --> 00:00:48,420 A dyna i gyd yn gyfredol. 26 00:00:48,420 --> 00:00:51,280 Felly, os nad oes unrhyw gwestiynau i ddechrau, rydym yn mynd i ddechrau. 27 00:00:51,280 --> 00:00:52,790 28 00:00:52,790 --> 00:00:53,710 A dyma Allison. 29 00:00:53,710 --> 00:00:56,060 30 00:00:56,060 --> 00:00:57,000 >> [Clap] 31 00:00:57,000 --> 00:00:59,300 >> ALLISON: OK, diolch, Rob. 32 00:00:59,300 --> 00:01:00,280 Gwerthfawrogi hynny. 33 00:01:00,280 --> 00:01:01,350 34 00:01:01,350 --> 00:01:03,050 Dylai Davin wedi flipped i hyn. 35 00:01:03,050 --> 00:01:07,240 Mae hyn yn y rhestr anghyflawn o pynciau, fel bob amser, fel y Davin newydd ei ddweud. 36 00:01:07,240 --> 00:01:10,860 Ymgynghori y ddogfennaeth lein am y cwis sero. 37 00:01:10,860 --> 00:01:13,680 Ond mae hyn yn eithaf much-- 'i' ar y maes llafur 38 00:01:13,680 --> 00:01:15,550 yw popeth yr ydym wedi mynd drosodd hyd yn hyn. 39 00:01:15,550 --> 00:01:18,290 Mae popeth yma yn gêm deg, yn ogystal ag unrhyw beth arall 40 00:01:18,290 --> 00:01:21,380 a allai fod wedi cael eu crybwyll yn y ddarlith. 41 00:01:21,380 --> 00:01:25,070 >> Mae fy adran, yma, yn dim llawer o adolygiad. 42 00:01:25,070 --> 00:01:27,775 Mae ymarferion gwpl Efallai eich bod yn guys weithio ar. 43 00:01:27,775 --> 00:01:30,650 Ond ar gyfer y rhan fwyaf, rydym yn wir eisiau mynd i'r Davin gyda'r rhai cod 44 00:01:30,650 --> 00:01:31,710 gan ymarferion llaw. 45 00:01:31,710 --> 00:01:33,940 >> Felly, yr wyf yn mynd i hedfan drwy'r hyn. 46 00:01:33,940 --> 00:01:36,330 Os oes gennych unrhyw gwestiynau, rhoi'r gorau i mi. 47 00:01:36,330 --> 00:01:37,270 Codwch eich llaw. 48 00:01:37,270 --> 00:01:39,250 Rwy'n addo 'n annhymerus' yn ôl pob tebyg welwch. 49 00:01:39,250 --> 00:01:41,042 Os nad yw, dim ond chwifio o gwmpas. 50 00:01:41,042 --> 00:01:42,250 Rydw i'n mynd i fod yn siarad yn gyflym. 51 00:01:42,250 --> 00:01:43,950 Rwy'n gobeithio y bydd pawb yn iawn gyda hynny. 52 00:01:43,950 --> 00:01:48,020 >> OK, gair arbennig, Davin amlwg anghofio i troi drwy sleidiau hyn. 53 00:01:48,020 --> 00:01:51,880 [Chwerthin] Rydych chi mewn trafferth, dyn. 54 00:01:51,880 --> 00:01:55,770 Felly, awgrymiadau ar gyfer cwis sero, ymarfer codio ar bapur. 55 00:01:55,770 --> 00:01:58,950 Rydych guys yn mynd i gael rhywfaint o ymarfer gyda hynny yn awr gyda Davin, 56 00:01:58,950 --> 00:02:00,655 felly ni fyddwch yn eich pen eich hun yn llwyr. 57 00:02:00,655 --> 00:02:03,030 Rwy'n credu ein bod ni'n mynd mewn gwirionedd drwy'r ddwy swyddogaeth. 58 00:02:03,030 --> 00:02:04,500 Felly, byddwch yn cael ei baratoi yn dda yno. 59 00:02:04,500 --> 00:02:05,958 >> Bod yn gyfarwydd â'ch setiau problem. 60 00:02:05,958 --> 00:02:08,150 Cafwyd cwestiynau ar cwisiau blaenorol 61 00:02:08,150 --> 00:02:12,680 a fydd yn gofyn i chi, er enghraifft, i cod i fyny rhywbeth tebyg iawn i Mario. 62 00:02:12,680 --> 00:02:15,060 Felly mae bod yn gyfarwydd iawn â'r eich problem yn gosod, yn ogystal 63 00:02:15,060 --> 00:02:17,827 gan fod y cwestiynau yr ydym yn gofyn i chi yn y dechrau ar y ffurflen 64 00:02:17,827 --> 00:02:19,660 eich bod yn llenwi allan, bydd eich gwasanaethu yn dda iawn. 65 00:02:19,660 --> 00:02:20,940 66 00:02:20,940 --> 00:02:23,380 >> A oes cwis blaenorol o dan y cyfyngiadau amser. 67 00:02:23,380 --> 00:02:25,430 Mae'r rhain cwisiau yn hir. 68 00:02:25,430 --> 00:02:26,850 Mae'r amser yn mynd yn gyflym iawn. 69 00:02:26,850 --> 00:02:30,480 Ac yn aml iawn, nid ydych yn sylweddoli pa mor gyflym mae'n mynd hyd nes y byddwch mewn gwirionedd 70 00:02:30,480 --> 00:02:32,180 rhoi eich hun o dan y cyfyngiadau hynny. 71 00:02:32,180 --> 00:02:36,500 Felly os gallwch chi jyst naddu allan, chi'n gwybod, 75 munud, naill ai heno neu yfory 72 00:02:36,500 --> 00:02:41,020 i gymryd un o'r cwisiau hyn o dan hynny, byddwch yn mewn cyflwr llawer gwell. 73 00:02:41,020 --> 00:02:43,060 >> A hefyd, creu eich taflen gyfeirio. 74 00:02:43,060 --> 00:02:45,290 Cofiwch, byddwch yn cael un blaen a'r cefn dudalen 75 00:02:45,290 --> 00:02:47,040 fel cyfeirio ar gyfer eich cwis ar ddydd Mercher. 76 00:02:47,040 --> 00:02:49,074 Creu hynny yn ffordd wych i astudio. 77 00:02:49,074 --> 00:02:51,990 Mae unrhyw beth sy'n eich bod yn cael trafferth gyda chi am eu cynnwys ar yno. 78 00:02:51,990 --> 00:02:55,627 Mae unrhyw beth sy'n eich TFS wedi bod, fel, mae hyn yn wirioneddol bwysig. 79 00:02:55,627 --> 00:02:57,960 Dylech wybod hyn, yn cael eu efallai y pethau yr ydych yn ei gael ar yno 80 00:02:57,960 --> 00:02:59,931 os nad oes gennych yn eu cof. 81 00:02:59,931 --> 00:03:02,680 Hyd yn oed os ydych yn gwybod nhw wir yn yn dda, weithiau yn ei chael ar yno 82 00:03:02,680 --> 00:03:07,030 yn fath ychydig o gysur i chi, a gwn cwisiau yn straen. 83 00:03:07,030 --> 00:03:09,260 Felly gall unrhyw gysur i chi gael cymorth. 84 00:03:09,260 --> 00:03:13,072 Mae pob hawl, hefyd, yn cael cwsg a bwyta ac yn hoffi'r pethau arferol 85 00:03:13,072 --> 00:03:14,280 ein bod yn dweud wrthych am cwisiau. 86 00:03:14,280 --> 00:03:16,320 87 00:03:16,320 --> 00:03:18,890 >> Felly, yn dechrau i ffwrdd yn hawdd, mathau data a meintiau. 88 00:03:18,890 --> 00:03:22,720 Fel y dywedais, mae hyn yn unig yn mynd i gael ei mi daflu llawer o bethau 89 00:03:22,720 --> 00:03:24,320 i fyny fan hyn y dylech ei wybod. 90 00:03:24,320 --> 00:03:27,600 Felly, rydym wedi ein chars sydd yn un bytes, ints 91 00:03:27,600 --> 00:03:30,390 sy'n cael eu pedwar bytes, hir hir, sef wyth bytes. 92 00:03:30,390 --> 00:03:33,280 Yn y bôn, dim ond i chi am gynnal cyfanrifau mwy o faint. 93 00:03:33,280 --> 00:03:35,490 Fflotiau, sef pedwar, dyblau, sef wyth. 94 00:03:35,490 --> 00:03:38,150 Unwaith eto, dim ond yn rhoi mwy i chi le ar gyfer eich fflotiau. 95 00:03:38,150 --> 00:03:41,290 Ac yna teipiwch seren, felly mae unrhyw pwyntydd ar 32-bit peiriant, 96 00:03:41,290 --> 00:03:44,650 sydd yn rhaid i gyd i chi guys i wybod, mae pedwar bytes. 97 00:03:44,650 --> 00:03:46,542 >> Felly yr holl bethau dylech yn gwybod, efallai pethau 98 00:03:46,542 --> 00:03:48,250 rydych am ei gael ar eich taflen gyfeirio. 99 00:03:48,250 --> 00:03:50,350 100 00:03:50,350 --> 00:03:53,520 OK, trosi deuaidd i deuaidd, trosi 101 00:03:53,520 --> 00:03:56,860 i hecsadegol, yn ôl ac ymlaen, pob peth y dylech ei wybod. 102 00:03:56,860 --> 00:03:59,480 Felly, o deuaidd i'w degol. 103 00:03:59,480 --> 00:04:03,309 Ydych guys am gymryd munud cyflym a cheisio chyfrif i bob un o'r rhain 104 00:04:03,309 --> 00:04:04,600 ac yna dweud wrthyf beth ydyn nhw? 105 00:04:04,600 --> 00:04:06,500 106 00:04:06,500 --> 00:04:10,240 >> Rwyf hefyd yn cael Candy yn fy bag, felly gall unrhyw un sy'n ateb yn cael Candy, gyda llaw. 107 00:04:10,240 --> 00:04:13,560 108 00:04:13,560 --> 00:04:14,480 Ac mae gen i lawer ohono. 109 00:04:14,480 --> 00:04:15,760 110 00:04:15,760 --> 00:04:16,870 Gadewch i mi cydio hyn. 111 00:04:16,870 --> 00:04:18,480 Rydw i'n mynd i roi hwn i Gabe. 112 00:04:18,480 --> 00:04:21,829 Felly, gallwch ddosbarthu Candy i pwy bynnag braf a chydweithredol. 113 00:04:21,829 --> 00:04:23,490 >> OK, gwelais law yno yn y cefn. 114 00:04:23,490 --> 00:04:26,418 115 00:04:26,418 --> 00:04:28,370 >> MYFYRIWR: Yeah, yr un cyntaf yw 42. 116 00:04:28,370 --> 00:04:30,280 >> ALLISON: Ie, un cyntaf yw 42, yn gywir. 117 00:04:30,280 --> 00:04:31,163 118 00:04:31,163 --> 00:04:32,038 MYFYRIWR: [Anghlywadwy]. 119 00:04:32,038 --> 00:04:34,810 [Chwerthin] 120 00:04:34,810 --> 00:04:37,030 ALLISON: Ail un, mae yn ôl yn felyn? 121 00:04:37,030 --> 00:04:38,910 MYFYRIWR: 110,010. 122 00:04:38,910 --> 00:04:43,410 ALLISON: Cywir, ac mae hyn yn cafodd yr un olaf, i lawr yma ar y gwaelod? 123 00:04:43,410 --> 00:04:44,570 Hefyd, yeah, rydych yn gwybod ei eisiau? 124 00:04:44,570 --> 00:04:45,550 Dim ond toss allan Candy. 125 00:04:45,550 --> 00:04:46,483 Beth am candy i bawb? 126 00:04:46,483 --> 00:04:47,510 >> MYFYRIWR: [Anghlywadwy] pan rydym yn ei wneud. 127 00:04:47,510 --> 00:04:48,051 >> ALLISON: SHH. 128 00:04:48,051 --> 00:04:49,380 129 00:04:49,380 --> 00:04:50,910 Ac yna yr un olaf. 130 00:04:50,910 --> 00:04:52,000 Pwy sydd eisiau ateb? 131 00:04:52,000 --> 00:04:52,744 Iawn yno. 132 00:04:52,744 --> 00:04:54,480 >> MYFYRIWR: 11100. 133 00:04:54,480 --> 00:04:56,820 >> ALLISON: 11100, yn edrych ar hynny. 134 00:04:56,820 --> 00:04:58,790 Llongyfarchiadau, swydd wych, pawb. 135 00:04:58,790 --> 00:05:03,370 OK, mae pawb yn fath o deall y broses ar gyfer gwneud hyn? 136 00:05:03,370 --> 00:05:08,700 Rydych wedi, mynd o deuaidd i'w degol y ffordd yr wyf yn tueddu i wneud hynny, yn cael ei ysgrifennu allan 137 00:05:08,700 --> 00:05:09,920 y pwerau o 2. 138 00:05:09,920 --> 00:05:18,350 Felly yr wyf yn ei ddweud, OK, 0 gwaith 2-0, felly dyna 0, 1 gwaith 2 i'r cyntaf, 139 00:05:18,350 --> 00:05:21,400 yw 2 yn mynd ymlaen y ffordd honno. 140 00:05:21,400 --> 00:05:25,790 A oes unrhyw un eisiau i mi yn benodol mynd trwy enghraifft o deuaidd? 141 00:05:25,790 --> 00:05:26,840 142 00:05:26,840 --> 00:05:28,140 OK, oer. 143 00:05:28,140 --> 00:05:30,390 >> Degol i deuaidd yn debyg iawn. 144 00:05:30,390 --> 00:05:31,550 145 00:05:31,550 --> 00:05:33,630 Dwi'n tueddu i ysgrifennu allan y pwerau o 2. 146 00:05:33,630 --> 00:05:38,660 Dechreuwch â'r un sydd yn y mwyaf, ond nid yw'n mynd heibio i'r degol 147 00:05:38,660 --> 00:05:39,710 eich bod yn chwilio am. 148 00:05:39,710 --> 00:05:42,870 Ac yna fath o weithio eich ffordd yn ôl adio i fyny pethau yn ôl yr angen. 149 00:05:42,870 --> 00:05:45,200 >> Ac yna gydag adio, 'i' yn union fel ychwanegiad arferol. 150 00:05:45,200 --> 00:05:51,110 Os ydych chi erioed wedi cael y achos lle rydych yn ychwanegu dau 1s, mae'n amlwg yn dod yn 2. 151 00:05:51,110 --> 00:05:56,875 2 mewn deuaidd yn awr 1 0 felly mae angen i gario eich 1 yn y golofn nesaf. 152 00:05:56,875 --> 00:05:57,375 Cool. 153 00:05:57,375 --> 00:05:59,220 154 00:05:59,220 --> 00:06:03,240 >> Hecsadegol, gallai hyn fod yn rhywbeth sydd ychydig yn llai cyfarwydd. 155 00:06:03,240 --> 00:06:06,600 Felly, fel Rob yn unig oedd yn dweud wrthyf ymlaen llaw, ei gamp ar gyfer hyn 156 00:06:06,600 --> 00:06:10,210 ydy at jyst rhannu i fyny yn bedwar ddarnau beit, OK? 157 00:06:10,210 --> 00:06:11,050 Bits, n chwith. 158 00:06:11,050 --> 00:06:11,720 Gweld? 159 00:06:11,720 --> 00:06:12,220 Diolch Rob. 160 00:06:12,220 --> 00:06:15,874 Dyma pam eich bod chi yma. [SŴN] Iawn, felly rydym yn unig dorri i fyny 161 00:06:15,874 --> 00:06:16,790 yn bedwar ddarnau ddarnau. 162 00:06:16,790 --> 00:06:21,570 Felly, gyda binaries i hecsadegol, rydym yn edrych ar y cyntaf 4, 163 00:06:21,570 --> 00:06:25,573 sef os oes gennym bedwar 1s mewn rhes, pa rif mae hynny'n ei symboleiddio? 164 00:06:25,573 --> 00:06:26,540 >> MYFYRIWR: F. 165 00:06:26,540 --> 00:06:32,751 >> ALLISON: Felly, yn yr achos hwn, beth yw 11111111 or-- ie? 166 00:06:32,751 --> 00:06:33,250 MYFYRIWR: FF. 167 00:06:33,250 --> 00:06:34,600 ALLISON: Perffaith, FF. 168 00:06:34,600 --> 00:06:36,900 Mor fawr, Candy ar eich cyfer. 169 00:06:36,900 --> 00:06:41,100 Yn awr, ar gyfer sut y hecsadegol i deuaidd, rydym yn dim ond meddwl am y peth fath o o chwith. 170 00:06:41,100 --> 00:06:46,420 Ar gyfer pob rhif neu llythyren bod gennym yn ein hecsadegol, 171 00:06:46,420 --> 00:06:53,930 dim ond drosi i ei bedwar bit [Chwerthin] at ei drosi pedwar bit. 172 00:06:53,930 --> 00:06:58,696 Felly 5, yn yr achos hwn, yr hyn yw 5 os rydym yn cynrychioli ei gyda phedwar darnau? 173 00:06:58,696 --> 00:06:59,608 >> MYFYRIWR: 010? 174 00:06:59,608 --> 00:07:00,520 Mm-EM. 175 00:07:00,520 --> 00:07:03,605 Ac yna A, sef mewn gwirionedd yn 10, fyddai? 176 00:07:03,605 --> 00:07:06,230 177 00:07:06,230 --> 00:07:08,040 1010. 178 00:07:08,040 --> 00:07:09,670 Felly mae gennym hynny, yma. 179 00:07:09,670 --> 00:07:13,990 Felly trosi rhwng hecsadegol ac deuaidd nid mewn gwirionedd yw bod ddrwg. 180 00:07:13,990 --> 00:07:16,565 Os ydych yn edrych arno mewn pedair bit darnau, yn mynd i fod yn euraidd. 181 00:07:16,565 --> 00:07:18,330 182 00:07:18,330 --> 00:07:19,300 Everyone-- ie? 183 00:07:19,300 --> 00:07:21,903 >> ROB: Mae hyn yn wirion, ond yr wyf bob amser yn cofio 184 00:07:21,903 --> 00:07:23,500 A, gan fod A yn fod i fod yn 10. 185 00:07:23,500 --> 00:07:26,230 A deuaidd dim ond 10 10, so-- 186 00:07:26,230 --> 00:07:27,310 >> ALLISON: Ah, dyna ni. 187 00:07:27,310 --> 00:07:28,615 >> ROB: Hey. 188 00:07:28,615 --> 00:07:30,020 >> ALLISON: Hey, candy i Rob. 189 00:07:30,020 --> 00:07:31,707 190 00:07:31,707 --> 00:07:33,290 Mae pethau nad ydynt yn siocled i mewn 'na. 191 00:07:33,290 --> 00:07:34,180 Felly, gallwch chi gael rhywfaint o. 192 00:07:34,180 --> 00:07:35,790 193 00:07:35,790 --> 00:07:36,760 Mathemateg Felly ASCII. 194 00:07:36,760 --> 00:07:38,206 195 00:07:38,206 --> 00:07:38,705 Ymddwyn. 196 00:07:38,705 --> 00:07:40,630 197 00:07:40,630 --> 00:07:44,720 Felly mathemateg ASCII, wrth i chi guys yn ôl pob tebyg yn dda cofio 198 00:07:44,720 --> 00:07:48,480 p yn gosod 2 gyda Visioneer a Caesar, wnaethoch chi lawer o hyn. 199 00:07:48,480 --> 00:07:49,610 200 00:07:49,610 --> 00:07:51,980 Cofiwch, mae'r cymeriadau yn yn sylfaenol rhifau yn unig. 201 00:07:51,980 --> 00:07:54,780 Felly, gallwn wneud mathemateg â hwy, yn union fel rydym yn ei wneud mathemateg gyda ints. 202 00:07:54,780 --> 00:07:58,090 >> Felly mae gennym dim ond ychydig beth syml yma. 203 00:07:58,090 --> 00:08:00,940 Mae gennym rai yn A dyna ymgychwyn i 65. 204 00:08:00,940 --> 00:08:07,440 A B gyfwerth â gwerth ASCII o A ynghyd ag 1, torgoch C cyfartal i D minws 1, 205 00:08:07,440 --> 00:08:09,060 a torgoch D sy'n hafal i 68. 206 00:08:09,060 --> 00:08:13,130 Felly, yna rydym yn mynd i argraffu pob un ohonynt, fel y gwelwn yma. 207 00:08:13,130 --> 00:08:15,650 A gall unrhyw un ddweud wrthyf beth fydd hyn yn argraffu? 208 00:08:15,650 --> 00:08:17,335 209 00:08:17,335 --> 00:08:18,210 MYFYRIWR: [Anghlywadwy]. 210 00:08:18,210 --> 00:08:20,540 ALLISON: Yn union, felly un peth i hysbysiad yw 211 00:08:20,540 --> 00:08:22,900 ein bod yn argraffu cymeriadau bob tro, yma. 212 00:08:22,900 --> 00:08:28,290 Rydym yn dynodi er bod A a B yn ints pan fyddwn yn datgan iddynt uchod. 213 00:08:28,290 --> 00:08:32,870 Ydym yn eu printio fel cymeriadau gan y cant C ac mae ein datganiad printf, 214 00:08:32,870 --> 00:08:34,610 felly byddant i gyd yn argraffu fel cymeriadau. 215 00:08:34,610 --> 00:08:40,730 Ac wrth gwrs, mae'r gwerth ASCII 65 ewyllys argraffu fel A. Mae gwerth ASCII o A ac 1 216 00:08:40,730 --> 00:08:43,669 fyddai 66, a fyddai'n falch i B. Felly, mewn gwirionedd, yr ydym 217 00:08:43,669 --> 00:08:49,107 cael A B C D pawb da yno? 218 00:08:49,107 --> 00:08:49,690 Unrhyw gwestiynau? 219 00:08:49,690 --> 00:08:50,721 220 00:08:50,721 --> 00:08:51,220 Awesome. 221 00:08:51,220 --> 00:08:52,500 222 00:08:52,500 --> 00:08:53,455 >> OK, cwmpas. 223 00:08:53,455 --> 00:08:55,090 224 00:08:55,090 --> 00:08:59,950 Felly cwmpas yn amlwg yn iawn peth pwysig i'w ddeall, yma. 225 00:08:59,950 --> 00:09:03,250 Mae llawer ohonoch chi, os ydych yn cael gwallau lunio, 226 00:09:03,250 --> 00:09:06,085 ac mae'n dweud nad oes gennych mynediad i rai newidyn, 227 00:09:06,085 --> 00:09:08,540 'i' yn ôl pob tebyg oherwydd eich bod diffiniedig o fewn dolen 228 00:09:08,540 --> 00:09:12,210 ac yna ceisio i gael mynediad ato allan ohono, neu fisa gwrthwyneb. 229 00:09:12,210 --> 00:09:16,410 >> Felly gwmpas wrth ei wraidd, 'i jyst yn penderfynu ble 230 00:09:16,410 --> 00:09:20,800 rydym yn dweud newidyn yn bodoli, lle rydym yn yn gallu newid ei, lle y gallwn gael gafael arno. 231 00:09:20,800 --> 00:09:24,550 'I' jyst fath o dweud rhain yn yr unig leoedd lle mae gennych fynediad 232 00:09:24,550 --> 00:09:26,060 i'r newidyn hwn. 233 00:09:26,060 --> 00:09:30,080 >> Felly, mae'r ddau scopes yr ydym yn siarad am yn ystod y dosbarth yn fyd-eang ac yn lleol. 234 00:09:30,080 --> 00:09:35,080 Felly newidynnau byd-eang yr ydym yn siarad am pan fyddwch yn eu diffinio uwchben prif. 235 00:09:35,080 --> 00:09:38,390 Mae'n golygu bod eich holl rhaglen yn cael ei gweld, 236 00:09:38,390 --> 00:09:42,090 ac mae'n bodoli cyhyd gan fod y rhaglen yn rhedeg, OK? 237 00:09:42,090 --> 00:09:45,100 Lleol yn golygu ei fod yn mwy o gaeth i ranbarth. 238 00:09:45,100 --> 00:09:50,520 Felly, pryd bynnag y byddwch yn cael swyddogaethau penodol fel cyfnewid, rydym bob amser yn siarad am. 239 00:09:50,520 --> 00:09:54,380 Rydym bob amser yn siarad am cyfnewid gyda A a B. A a B yn bodoli o fewn y swyddogaeth honno. 240 00:09:54,380 --> 00:09:55,690 Nid ydynt yn bodoli unrhyw le arall. 241 00:09:55,690 --> 00:09:56,860 242 00:09:56,860 --> 00:10:00,610 >> Yn ogystal, pan fydd gennych os datganiadau neu ar gyfer dolenni. 243 00:10:00,610 --> 00:10:04,670 Pryd bynnag yr ydym, er enghraifft, mewn a am dolen sydd gennym int i mi yn dychwelyd 0. 244 00:10:04,670 --> 00:10:06,630 Mae gennym rai cyflwr ac yr ydym yn ei ddiweddaru. 245 00:10:06,630 --> 00:10:10,270 Dim ond yn bodoli o fewn y bresys o hynny am ddolen. 246 00:10:10,270 --> 00:10:13,270 Os ydych yn ceisio cael mynediad iddo mewn mannau eraill, Byddai eich compiler gweiddi ar chi. 247 00:10:13,270 --> 00:10:14,560 Byddai'n hoffi, beth yr ydych yn ceisio ei wneud? 248 00:10:14,560 --> 00:10:15,400 Nid yw hyn yn bodoli. 249 00:10:15,400 --> 00:10:16,644 250 00:10:16,644 --> 00:10:18,435 Felly dyna y ddau gwahanol fathau o gwmpas. 251 00:10:18,435 --> 00:10:19,486 252 00:10:19,486 --> 00:10:20,860 A yw hynny'n gwneud synnwyr i bawb? 253 00:10:20,860 --> 00:10:23,870 254 00:10:23,870 --> 00:10:27,890 >> Felly, er enghraifft, yma, mae hyn yn yn unig yw ychydig rhaglen syml. 255 00:10:27,890 --> 00:10:29,120 256 00:10:29,120 --> 00:10:32,890 Beth ydych chi'n guys meddwl sy'n yn mynd i ddigwydd ar bob pwynt 257 00:10:32,890 --> 00:10:34,210 ein bod yn ceisio argraffu? 258 00:10:34,210 --> 00:10:40,150 Felly, mae hyn yn un fan hyn, beth sy'n mynd i ddigwydd? 259 00:10:40,150 --> 00:10:43,047 260 00:10:43,047 --> 00:10:44,255 MYFYRIWR: Bydd yn argraffu tri. 261 00:10:44,255 --> 00:10:44,880 ALLISON: Iawn. 262 00:10:44,880 --> 00:10:45,930 Bydd yn argraffu tri. 263 00:10:45,930 --> 00:10:47,272 Beth am fan hyn? 264 00:10:47,272 --> 00:10:48,230 MYFYRIWR: Ni fydd yn gweithio. 265 00:10:48,230 --> 00:10:48,910 ALLISON: Ni fydd yn gweithio. 266 00:10:48,910 --> 00:10:50,290 Ydych allan o gwmpas, dde? 267 00:10:50,290 --> 00:10:55,160 Nid yw newidyn lleol yn bodoli y tu allan i'r bresys hyn, i gyd yn iawn? 268 00:10:55,160 --> 00:10:56,462 Ac yna beth am fan hyn? 269 00:10:56,462 --> 00:10:57,850 >> MYFYRIWR: [Anghlywadwy]. 270 00:10:57,850 --> 00:10:59,210 >> ALLISON: Beth? 271 00:10:59,210 --> 00:10:59,900 Rob, ewch. 272 00:10:59,900 --> 00:11:00,854 >> ROB: wyf newydd ei ddweud. 273 00:11:00,854 --> 00:11:04,200 Dylai newidynnau byd-eang fod yn tanlinellu newidyn byd-eang. 274 00:11:04,200 --> 00:11:05,660 >> ALLISON: Ah, ie, sori. 275 00:11:05,660 --> 00:11:06,200 Ddiolch, Rob. 276 00:11:06,200 --> 00:11:07,480 277 00:11:07,480 --> 00:11:10,170 Rob fel ein compiler breswyl. 278 00:11:10,170 --> 00:11:12,684 Bydd yn jyst gweiddi arnom pan fyddwn yn ei angen. [Chwerthin] Ie, bod 279 00:11:12,684 --> 00:11:14,225 Dylai fod yn amrywiol tanlinellu byd-eang. 280 00:11:14,225 --> 00:11:15,760 281 00:11:15,760 --> 00:11:18,430 Felly, gan dybio bod hynny oedd tanlinellu byd-eang 282 00:11:18,430 --> 00:11:20,260 amrywiol, beth sy'n mynd i ddigwydd yma? 283 00:11:20,260 --> 00:11:21,260 MYFYRIWR: Bydd hynny'n gweithio. 284 00:11:21,260 --> 00:11:22,093 ALLISON: Bydd yn gweithio. 285 00:11:22,093 --> 00:11:24,655 Felly bydd yn argraffu, felly dim ond enghraifft syml iawn. 286 00:11:24,655 --> 00:11:27,650 287 00:11:27,650 --> 00:11:29,870 OK, prototeipiau. 288 00:11:29,870 --> 00:11:33,680 Felly, yn amlwg, mae gwir pwysleisio i chi guys 289 00:11:33,680 --> 00:11:36,460 i wneud swyddogaethau os yw'n gwneud synnwyr yn eich rhaglenni. 290 00:11:36,460 --> 00:11:38,460 Ond wrth gwrs, pan fyddwch yn gwneud eich hun swyddogaethau, 291 00:11:38,460 --> 00:11:40,930 fel arfer byddwch yn eu diffinio ar ôl prif. 292 00:11:40,930 --> 00:11:42,430 A byddwch yn ceisio eu galw yn y prif. 293 00:11:42,430 --> 00:11:46,030 Ac os nad ydych yn defnyddio prototeip, Bydd eich compiler gweiddi ar chi. 294 00:11:46,030 --> 00:11:49,590 >> Prototeip yn y bôn dim ond dweud wrth eich compiler 295 00:11:49,590 --> 00:11:52,400 fod gennyf swyddogaeth hyn isod brif. 296 00:11:52,400 --> 00:11:54,970 Rydw i'n mynd i alw ei fod cyn i mi ddiffinio iddo. 297 00:11:54,970 --> 00:11:56,360 Dim ond yn dal ar. 298 00:11:56,360 --> 00:12:00,660 Rwy'n addo y caiff ei diffinio, ac rydych Bydd yn rhaid i bopeth sydd ei angen arnoch. 299 00:12:00,660 --> 00:12:05,900 >> Felly, y ffordd yr ydym yn ei wneud mae yr un eich ffurflen math, eich enw swyddogaeth, eich mewnbwn 300 00:12:05,900 --> 00:12:06,400 rhestr. 301 00:12:06,400 --> 00:12:09,760 Mae'n bôn y llinell gyntaf am eich datganiad swyddogaeth. 302 00:12:09,760 --> 00:12:11,510 Mae'n wir i gyd ydyw. 303 00:12:11,510 --> 00:12:14,440 Ond mae hyn yn unig yw math cyffredinol o fformat. 304 00:12:14,440 --> 00:12:17,220 >> Felly, yn ein henghraifft fan hyn, Dylai yr ydych guys 305 00:12:17,220 --> 00:12:19,700 wedi gweld yn adran ar ryw adeg, rydym wedi 306 00:12:19,700 --> 00:12:23,220 rhyw ciwb int sy'n cymryd peth int o fewnbwn. 307 00:12:23,220 --> 00:12:25,870 Ac rydym wedi ein prif swyddogaeth, sy'n galw ciwb. 308 00:12:25,870 --> 00:12:28,670 A chiwb ei ddiffinio ar ôl y ffaith. 309 00:12:28,670 --> 00:12:34,450 >> Felly os na bai gennym fewnbwn ciwb int ar y brig, pan byddem ni'n ei alw ciwb 310 00:12:34,450 --> 00:12:36,620 o fewn prif, ein compiler Byddai cael wallgof ar ni. 311 00:12:36,620 --> 00:12:38,890 Byddai'n cael ei hoffi, beth ydych chi'n siarad am? 312 00:12:38,890 --> 00:12:40,360 Nid Cube yn bodoli. 313 00:12:40,360 --> 00:12:41,910 Nid wyf yn gwybod beth rydych yn gofyn amdano. 314 00:12:41,910 --> 00:12:43,490 A Im 'jyst yn stopio mynd. 315 00:12:43,490 --> 00:12:47,330 >> Ond oherwydd ein bod yn gwneud ein prototeip ar y brig, yr ydym wedi dweud, 316 00:12:47,330 --> 00:12:49,800 eich bod yn gwybod, pan fyddwch yn gweld ciwb, peidiwch â phoeni am y peth. 317 00:12:49,800 --> 00:12:51,990 Rwy'n addo ei fod yn diffinio'n ddiweddarach. 318 00:12:51,990 --> 00:12:53,750 A bydd yn gadael i chi wneud yr hyn rydych ei eisiau. 319 00:12:53,750 --> 00:12:57,750 Felly, os ydych chi erioed gennych swyddogaeth sy'n cael ei ddatgan ar ôl i chi ei alw 320 00:12:57,750 --> 00:13:00,570 am y tro cyntaf, mae angen i chi wedi ei prototeipio ar y brig. 321 00:13:00,570 --> 00:13:01,640 322 00:13:01,640 --> 00:13:02,720 >> Ie? 323 00:13:02,720 --> 00:13:04,412 >> ROB: Mae'n sgwâr, nid cubing. 324 00:13:04,412 --> 00:13:05,855 >> ALLISON: O fy Nuw. 325 00:13:05,855 --> 00:13:09,435 Doeddwn i ddim yn have-- Gabe, yr wyf yn meddwl oeddech yn ein proofreader. 326 00:13:09,435 --> 00:13:10,740 327 00:13:10,740 --> 00:13:12,760 Guys OK, yn amyneddgar gyda mi, yma. 328 00:13:12,760 --> 00:13:14,440 Rwy'n gobeithio y bydd pawb sy'n cael y syniad. 329 00:13:14,440 --> 00:13:15,560 330 00:13:15,560 --> 00:13:20,380 OK, felly dylai hyn gael wedi'i sgwario, nid torri'n giwbiau. 331 00:13:20,380 --> 00:13:22,700 Ond mae'r syniad yn aros yr un fath. 332 00:13:22,700 --> 00:13:23,702 333 00:13:23,702 --> 00:13:26,660 Unrhyw swyddogaeth yr ydym yn galw ar ôl dylai'r ffaith fod â prototeip. 334 00:13:26,660 --> 00:13:27,730 335 00:13:27,730 --> 00:13:28,970 Mae pawb yn dda gyda hynny? 336 00:13:28,970 --> 00:13:30,730 337 00:13:30,730 --> 00:13:32,310 Unrhyw typos eraill? 338 00:13:32,310 --> 00:13:32,810 OK. 339 00:13:32,810 --> 00:13:34,730 340 00:13:34,730 --> 00:13:36,230 Unrhyw typos yma cyn i ni ddechrau, Rob? 341 00:13:36,230 --> 00:13:37,356 342 00:13:37,356 --> 00:13:42,380 [Chwerthin] Iawn, felly structs. 343 00:13:42,380 --> 00:13:45,040 Yn y bôn, byddwch yn caniatáu structs i greu eich math data eich hun. 344 00:13:45,040 --> 00:13:49,264 Mae cymaint fel int neu torgoch neu fflôt, 'i' jyst fath arall. 345 00:13:49,264 --> 00:13:51,680 Rwy'n hoffi meddwl am y peth fel, fel, creu eich math data eich hun. 346 00:13:51,680 --> 00:13:53,740 Chi er ei fod yn caniatáu i wneud hynny. 347 00:13:53,740 --> 00:13:56,160 Ac mae'n dal gwahanol fathau o ddata. 348 00:13:56,160 --> 00:14:01,030 >> Felly, os ydych yn cofio, mewn amrywiaeth, rydym yn dim ond yn dal pethau o fath tebyg. 349 00:14:01,030 --> 00:14:04,660 Structs yn ein galluogi i gynnal lluosog bethau o wahanol fathau. 350 00:14:04,660 --> 00:14:08,944 Felly, yn yr achos yma, rydym yn fod â struct a elwir Myfyrwyr, 351 00:14:08,944 --> 00:14:10,650 enwir yma ar y gwaelod. 352 00:14:10,650 --> 00:14:13,540 Ac mae gennym rai id int a rhywfaint o enw llinyn. 353 00:14:13,540 --> 00:14:14,620 354 00:14:14,620 --> 00:14:17,300 Felly, mae hyn yn unig yw arall yn fath data. 355 00:14:17,300 --> 00:14:18,950 Erbyn hyn mae gennym fath ddata o'r enw Myfyrwyr. 356 00:14:18,950 --> 00:14:20,330 357 00:14:20,330 --> 00:14:24,750 >> Felly, oherwydd ein bod yn gallu meddwl am mae fel dim ond un arall math data, 358 00:14:24,750 --> 00:14:27,760 gallwn ddatgan newidynnau fel y byddem unrhyw arall. 359 00:14:27,760 --> 00:14:32,680 Felly, yn hytrach na dim ond ar ôl, fel, mae myfyriwr yn int, rydym yn unig yn cael fyfyriwr, 360 00:14:32,680 --> 00:14:33,390 i fyfyrwyr 1. 361 00:14:33,390 --> 00:14:33,560 Oh, yn edrych. 362 00:14:33,560 --> 00:14:34,059 Mae'n Rob. 363 00:14:34,059 --> 00:14:35,750 364 00:14:35,750 --> 00:14:38,880 Felly dyma ni yn datgan a struct, neu newidyn 365 00:14:38,880 --> 00:14:40,940 Gelwir fyfyrwyr 1 o myfyriwr math. 366 00:14:40,940 --> 00:14:45,370 Felly, mae'n mynd i gael id ac enw sy'n gysylltiedig ag ef. 367 00:14:45,370 --> 00:14:48,430 >> A'r ffordd yr ydym yn cael mynediad rhain elfennau o fewn ein struct 368 00:14:48,430 --> 00:14:50,100 yw gyda'r gweithredwr dot, yma. 369 00:14:50,100 --> 00:14:51,910 370 00:14:51,910 --> 00:14:54,660 Felly, yn yr achos hwn, rydym yn datgan rhywfaint myfyriwr 1. 371 00:14:54,660 --> 00:14:57,080 Rydym yn neilltuo yr ID i fod yn 1. 372 00:14:57,080 --> 00:14:58,840 Ac rydym yn neilltuo yr enw i fod Rob. 373 00:14:58,840 --> 00:15:03,010 374 00:15:03,010 --> 00:15:04,960 OK, mae pawb yn dda gyda hynny? 375 00:15:04,960 --> 00:15:06,787 Defnyddiwch ef jyst like-- ie? 376 00:15:06,787 --> 00:15:09,530 >> MYFYRIWR: Yeah, typedef-- pryd mae angen i ni ddefnyddio typedef? 377 00:15:09,530 --> 00:15:13,190 >> ALLISON: Felly typedef unig Dywed that-- Rob, rydych 378 00:15:13,190 --> 00:15:16,990 Gall gywiro fi ar hyn os wyf yn wrong-- ond typedef yn unig mewn gwirionedd yn datgan 379 00:15:16,990 --> 00:15:19,330 fel math y gallwch eu defnyddio, dde? 380 00:15:19,330 --> 00:15:22,550 >> ROB: Yeah, 'i' yn y bôn, felly mae'n dim ond creu 381 00:15:22,550 --> 00:15:24,215 enw arall, neu lysenw am fath. 382 00:15:24,215 --> 00:15:25,590 Felly, gallwch deipio bod [Anghlywadwy]. 383 00:15:25,590 --> 00:15:27,140 384 00:15:27,140 --> 00:15:30,350 Felly [Anghlywadwy] yn bodoli, ac yn awr rydym yn unig wedi 385 00:15:30,350 --> 00:15:32,090 [Anghlywadwy] fodd yn union yr un peth. 386 00:15:32,090 --> 00:15:37,210 Ac felly dyma, rydym yn teipio, rwy'n credu, rhyw fath struct 2 [Anghlywadwy]. 387 00:15:37,210 --> 00:15:40,680 Felly, 'i' jyst llysenw am fath penodol. 388 00:15:40,680 --> 00:15:44,344 >> MYFYRIWR: Llinynnol [Anghlywadwy] llyfrgell ei deipio i fyny fel seren torgoch. 389 00:15:44,344 --> 00:15:51,380 390 00:15:51,380 --> 00:15:54,390 >> ALLISON: At ein dibenion ni fan hyn, os ydych yn datgan struct, 391 00:15:54,390 --> 00:15:55,600 dim ond gwneud typedef struct. 392 00:15:55,600 --> 00:15:57,680 393 00:15:57,680 --> 00:16:04,490 OK, felly ymlaen llaw, mae hyn yn dim ond newidyn normal yma. 394 00:16:04,490 --> 00:16:06,390 Rydym yn cael mynediad 'i ag a dot. 395 00:16:06,390 --> 00:16:08,580 os oes gennym pwyntydd i a struct, gallwn mewn gwirionedd 396 00:16:08,580 --> 00:16:10,700 ddefnyddio saeth, sydd yn eithaf oer. 397 00:16:10,700 --> 00:16:17,130 >> Felly, yn yr achos hwn, mae gennym pwyntydd i myfyriwr 1 sydd o myfyriwr math. 398 00:16:17,130 --> 00:16:19,020 Cofiwch, gyda'ch adeiladu pwyntydd, 399 00:16:19,020 --> 00:16:23,710 beth bynnag rydych am deipio eich pwyntydd yn pwyntio at i fod ar y dechrau. 400 00:16:23,710 --> 00:16:25,960 Felly mae gennym rywfaint o fyfyrwyr 1, yma. 401 00:16:25,960 --> 00:16:27,370 402 00:16:27,370 --> 00:16:31,050 Ac ers myfyriwr hwn 1 yn pigfain awr, 403 00:16:31,050 --> 00:16:36,520 gallwn mewn gwirionedd yn mynd i fyfyrwyr enw 1 arrow yn hytrach na dot, am ei fod yn pwyntydd, 404 00:16:36,520 --> 00:16:37,640 a benodi Rob. 405 00:16:37,640 --> 00:16:40,720 Ac yn awr os ydym am newid Rob i Davin, 406 00:16:40,720 --> 00:16:43,570 mae hyn yn unig yw dangos i chi ffordd wahanol i wneud hynny. 407 00:16:43,570 --> 00:16:48,850 >> Felly, yn hytrach na defnyddio'r saeth, rydych Gall also-- wyf am orffen hyn ac yna 408 00:16:48,850 --> 00:16:52,860 cymryd bod question-- gallech hefyd yn gwneud cyfeirnod myfyriwr 1. 409 00:16:52,860 --> 00:16:56,170 Mae hynny'n ei ddweud yn hoffi mynd i beth bynnag sydd yn fyfyriwr 1, a oedd yn 410 00:16:56,170 --> 00:16:58,840 fyddai ein struct myfyrwyr. 411 00:16:58,840 --> 00:17:03,910 Cael mynediad 'i ag a dot a'r elfen eich bod am, ac yna ail-neilltuo iddo. 412 00:17:03,910 --> 00:17:05,326 Cafwyd cwestiwn. 413 00:17:05,326 --> 00:17:08,034 MYFYRIWR: Ie, felly sut y dewch chi i ddefnyddio [Anghlywadwy] pan fyddwch chi 414 00:17:08,034 --> 00:17:10,367 gwneud seren myfyrwyr heb [Anghlywadwy] myfyriwr? 415 00:17:10,367 --> 00:17:12,200 ALLISON: Gan fod hwn yn creu pwyntydd. 416 00:17:12,200 --> 00:17:13,616 ROB: Rydym yn mynd i siarad am y peth. 417 00:17:13,616 --> 00:17:16,119 ALLISON: Rydym yn mynd i siarad am hynny yn nes ymlaen yn yr adolygiad. 418 00:17:16,119 --> 00:17:17,660 Felly dim ond ddal gafael meddwl hynny. 419 00:17:17,660 --> 00:17:20,560 Os yw'n dal i'ch poeni yn y pen, dewch siarad ag un ohonom ni. 420 00:17:20,560 --> 00:17:23,380 >> Felly, mae'r rhain yn gwneud yn union yr un peth. 421 00:17:23,380 --> 00:17:25,579 Rydym yn unig yn dangos i chi dau gwahanol ffyrdd o wneud hynny. 422 00:17:25,579 --> 00:17:29,470 Myfyriwr 1 bellach yn pwyntydd, felly gallwch gael mynediad i'r elfen Enw 423 00:17:29,470 --> 00:17:30,960 o fewn y struct gyda saeth. 424 00:17:30,960 --> 00:17:36,440 Neu gallwch dereference eich pwyntydd, a Yna mynediad iddo gymaint ag arfer. 425 00:17:36,440 --> 00:17:38,430 Ydy hynny'n gwneud synnwyr i bob un? 426 00:17:38,430 --> 00:17:39,480 427 00:17:39,480 --> 00:17:43,890 Os bydd y pwyntydd cyfan mae pethau ychydig yn ddryslyd, bydd Gabe yn siarad am hynny, 428 00:17:43,890 --> 00:17:45,740 ac yna efallai hyn bydd yn gwneud mwy o synnwyr. 429 00:17:45,740 --> 00:17:46,240 Ie? 430 00:17:46,240 --> 00:17:48,387 >> MYFYRIWR: Ie, felly sut mae hyn yn wahanol i'r? 431 00:17:48,387 --> 00:17:49,470 ALLISON: Yr un blaenorol? 432 00:17:49,470 --> 00:17:52,330 Felly y myfyriwr 1 yn hyn Nid yw achos yn pwyntydd. 433 00:17:52,330 --> 00:17:54,380 Mae'n dim ond eich struct gwirioneddol. 434 00:17:54,380 --> 00:17:55,400 >> MYFYRIWR: OK. 435 00:17:55,400 --> 00:17:57,645 >> ALLISON: Er bod yr un yma yn pwyntydd i struct. 436 00:17:57,645 --> 00:17:58,910 437 00:17:58,910 --> 00:18:02,060 >> MYFYRIWR: Iawn, ond a yw'n fath o yn y pen draw yn gweithio yr un fath [Anghlywadwy]. 438 00:18:02,060 --> 00:18:03,310 >> ALLISON: Mae'n gweithio yr un fath yn effeithiol. 439 00:18:03,310 --> 00:18:04,560 Mae eich cystrawen yn unig yn wahanol. 440 00:18:04,560 --> 00:18:05,185 MYFYRIWR: OK. 441 00:18:05,185 --> 00:18:07,600 >> ALLISON: Yeah, maent yn effeithiol yr un fath. 442 00:18:07,600 --> 00:18:11,321 'I' jyst yn dibynnu ar gyd-destun, efallai y byddwch am un dros y llall. 443 00:18:11,321 --> 00:18:11,820 Ie? 444 00:18:11,820 --> 00:18:13,956 >> MYFYRIWR: Pan fyddwch yn ei wneud cyfeiriadau at y 1-- 445 00:18:13,956 --> 00:18:14,580 ALLISON: Mm-EM? 446 00:18:14,580 --> 00:18:16,880 MYFYRIWR: Pam ydych chi'n cael y cromfachau? 447 00:18:16,880 --> 00:18:19,575 ALLISON: Gan fod myfyrwyr 1 yw'r pwyntydd. 448 00:18:19,575 --> 00:18:22,200 Felly, mae angen i chi wneud yn siŵr eich bod yn jyst dereferencing y pwyntydd. 449 00:18:22,200 --> 00:18:23,380 >> MYFYRIWR: OK. 450 00:18:23,380 --> 00:18:26,700 >> ALLISON: Felly, yn yr achos yma, y cromfachau o'i gwmpas 451 00:18:26,700 --> 00:18:29,875 yn golygu eich bod yn dereferencing fyfyriwr 1. 452 00:18:29,875 --> 00:18:35,390 Felly, rydych chi'n mynd i lle mae myfyrwyr 1 pwynt, sef eich struct. 453 00:18:35,390 --> 00:18:38,010 Felly, nawr gallwch feddwl am y peth fel y struct, 454 00:18:38,010 --> 00:18:39,785 fel y gallwn ddefnyddio ein dot gweithrediad arferol. 455 00:18:39,785 --> 00:18:42,752 456 00:18:42,752 --> 00:18:43,585 Unrhyw gwestiynau eraill? 457 00:18:43,585 --> 00:18:45,840 458 00:18:45,840 --> 00:18:48,120 Cool, awesome. 459 00:18:48,120 --> 00:18:51,359 >> Felly peth olaf, yr wyf yn meddwl yw fy sleid olaf, woo! 460 00:18:51,359 --> 00:18:52,775 OK, felly fel y bo'r angen pwynt imprecision. 461 00:18:52,775 --> 00:18:54,090 462 00:18:54,090 --> 00:18:56,820 Buom yn siarad yn fyr am hyn yn ystod y ddarlith. 463 00:18:56,820 --> 00:19:00,030 Yn y bôn, yr ydym wedi anfeidrol llawer o rifau real. 464 00:19:00,030 --> 00:19:02,237 Ac os bydd unrhyw un ohonoch guys caru mathemateg, mae 465 00:19:02,237 --> 00:19:03,570 pob math o bethau oeri gyda ni. 466 00:19:03,570 --> 00:19:05,010 467 00:19:05,010 --> 00:19:07,190 >> Ond mae yna ganmil llawer o rifau real. 468 00:19:07,190 --> 00:19:09,850 Ond maen nhw ond yn gyfyngedig mae llawer o ddarnau sydd gennym. 469 00:19:09,850 --> 00:19:13,240 Felly, byddwch bob amser yn mynd i cael imprecision, i gyd. 470 00:19:13,240 --> 00:19:16,269 A dyna bod yn unig fath o fel rhywbeth y dylech ei wybod. 471 00:19:16,269 --> 00:19:19,060 Gallai hynny fel y byddwn yn gofyn i chi pam mae imprecision pwynt arnawf yn bodoli? 472 00:19:19,060 --> 00:19:20,004 473 00:19:20,004 --> 00:19:21,420 Felly, dim ond rhywbeth y dylech ei wybod. 474 00:19:21,420 --> 00:19:23,770 A chyda hynny, dwi'n troi 'i ar at Pointers. 475 00:19:23,770 --> 00:19:27,720 476 00:19:27,720 --> 00:19:28,520 >> BINKY: Helo, guys. 477 00:19:28,520 --> 00:19:29,616 Binky Fy enw i. 478 00:19:29,616 --> 00:19:30,990 Rydw i'n mynd i siarad am awgrymiadau. 479 00:19:30,990 --> 00:19:33,247 480 00:19:33,247 --> 00:19:35,830 Yeah, felly awgrymiadau mewn gwirionedd fy hoff ran yn y cwrs hwn. 481 00:19:35,830 --> 00:19:39,740 Felly, dim ond er mwyn ei gwneud yn glir beth Allison yn siarad am fan hyn, felly y rheswm 482 00:19:39,740 --> 00:19:43,810 why-- yr unig wahaniaeth yma, y gwahaniaeth mawr oedd y ffordd 483 00:19:43,810 --> 00:19:44,760 rydym yn datgan pethau. 484 00:19:44,760 --> 00:19:47,560 Felly seren cymwys yw hyn yn pwyntydd i fyfyriwr. 485 00:19:47,560 --> 00:19:52,960 Tra y sleid o'r blaen, myfyriwr yn struct gwirioneddol, fel myfyriwr gwirioneddol, 486 00:19:52,960 --> 00:19:54,400 sy'n cynnwys unrhyw un o'r pethau hynny. 487 00:19:54,400 --> 00:19:57,050 >> A'r rheswm pam yr ydym yn eisiau i-- ie, Davin? 488 00:19:57,050 --> 00:19:58,630 >> DAVIN: Beth mae'r saeth yn ei olygu? 489 00:19:58,630 --> 00:20:04,240 >> BINKY: Y dull saeth yn union yr un fath â'r hyn. 490 00:20:04,240 --> 00:20:06,150 Felly, nad ydych yn wir angen y saeth. 491 00:20:06,150 --> 00:20:11,060 Fel, os ydych yn y rhaglen yn unig yn C, gallwch ddefnyddio hwn. 492 00:20:11,060 --> 00:20:12,850 Mae'n ddrwg gennym, yr wyf yn gwneud nad beth yw hynny. 493 00:20:12,850 --> 00:20:14,920 Gallwch jyst arfer cystrawen hwn. 494 00:20:14,920 --> 00:20:17,430 >> Ond mae rhai pobl, pan eu bod yn dylunio C, 495 00:20:17,430 --> 00:20:19,870 maent yn cyfrifedig bod pobl Defnyddir y gystrawen cymaint, 496 00:20:19,870 --> 00:20:23,970 y byddant yn hoffi dim ond yn dod i fyny gyda strwythur cystrawen ar ei gyfer. 497 00:20:23,970 --> 00:20:26,820 Ac mae hyn wedi digwydd yn ar ffurf saeth hon. 498 00:20:26,820 --> 00:20:29,210 Ac mae'n neis iawn, gan fod mae'n symbol rhywbeth 499 00:20:29,210 --> 00:20:33,670 fel rydym yn dilyn mewn gwirionedd saeth yma, pwyntydd yma, 500 00:20:33,670 --> 00:20:35,300 tuag at ychydig o le yn y cof. 501 00:20:35,300 --> 00:20:40,410 A phan fyddwn yn cyrraedd yno, rydym am edrych at enw'r y myfyriwr hwnnw, 502 00:20:40,410 --> 00:20:42,150 os yw hynny'n gwneud synnwyr. 503 00:20:42,150 --> 00:20:43,000 OK? 504 00:20:43,000 --> 00:20:44,290 >> Felly mae hyn yn union yr un fath. 505 00:20:44,290 --> 00:20:46,310 Mae hyn yn union yr un peth â hyn. 506 00:20:46,310 --> 00:20:48,130 Maent yn cael eu llunio yn union yr un fath, OK? 507 00:20:48,130 --> 00:20:50,100 508 00:20:50,100 --> 00:20:55,580 A'r rheswm yma pam ein malloc rhywbeth, oherwydd yn yr achos hwn, 509 00:20:55,580 --> 00:20:59,120 mae ein newidyn mewn gwirionedd dim ond newidyn pwyntydd. 510 00:20:59,120 --> 00:21:02,900 Felly, rydym dim ond ychydig o le yn cof sydd wedi dal pwyntydd. 511 00:21:02,900 --> 00:21:06,570 Dydyn ni ddim yn cael unrhyw le sy'n dal y struct gwirioneddol. 512 00:21:06,570 --> 00:21:08,660 >> Felly, mae'n rhaid i hyn gael ei wneud mewn dau gam. 513 00:21:08,660 --> 00:21:11,545 Mae'n rhaid i ni greu'r cof i roi'r struct yn. 514 00:21:11,545 --> 00:21:14,445 Ac mae'n rhaid i ni greu'r cof i roi'r pwyntydd yn. 515 00:21:14,445 --> 00:21:16,570 Felly, maent yn y bôn dau gwahanol newidynnau, yma. 516 00:21:16,570 --> 00:21:19,730 Mae un ohonynt yn y myfyriwr math, ac eithrio ei fod nid yw'n wir yn cael enw. 517 00:21:19,730 --> 00:21:21,900 Ac mae'r un arall yn o seren fath myfyrwyr. 518 00:21:21,900 --> 00:21:24,900 Ac yna i fyfyrwyr 1 o bwyntiau yna, os yw hynny'n gwneud synnwyr. 519 00:21:24,900 --> 00:21:25,871 520 00:21:25,871 --> 00:21:26,370 OK? 521 00:21:26,370 --> 00:21:28,160 522 00:21:28,160 --> 00:21:31,860 >> Felly, y rheswm pam yr ydym yn defnyddio pwyntyddion yw fod popeth 523 00:21:31,860 --> 00:21:35,510 mewn cyfrifiadur, pob newidyn mewn cyfrifiadur Mae dau beth. 524 00:21:35,510 --> 00:21:36,580 Mae ganddo ei werth. 525 00:21:36,580 --> 00:21:38,420 Ac mae wedi ei gyfeiriad. 526 00:21:38,420 --> 00:21:41,390 Ac yn ffordd dda o conceptualize hyn yw mae ' 527 00:21:41,390 --> 00:21:44,230 llawer o broblemau pan fyddwch ceisiwch ddefnyddio swyddogaethau. 528 00:21:44,230 --> 00:21:47,200 Ac rydym yn mynd i geisio edrych i mewn i un o'r rheini. 529 00:21:47,200 --> 00:21:50,370 Sef, mae'n mynd i meddwl o gof fel blychau. 530 00:21:50,370 --> 00:21:52,810 >> Yr ydych bob amser yn meddwl o newidynnau pan fyddwch yn dweud na hafal i 5. 531 00:21:52,810 --> 00:21:54,430 Rydych chi'n meddwl o roi 5 mewn blwch. 532 00:21:54,430 --> 00:21:55,520 533 00:21:55,520 --> 00:22:00,030 Felly beth os ydych am i basio bod int i mewn i swyddogaeth? 534 00:22:00,030 --> 00:22:03,230 'Ch jyst pass-- nad wyf yn ei wneud know-- x i mewn i swyddogaeth. 535 00:22:03,230 --> 00:22:06,090 Ond beth sy'n digwydd yn Fel arfer, fel bodau dynol, yr ydych 536 00:22:06,090 --> 00:22:09,050 Byddai yn meddwl rhywbeth fel fy mod gan fynd heibio i'r blwch i berson. 537 00:22:09,050 --> 00:22:12,070 Ac nid mae'n ei wneud mewn gwirionedd digwydd mewn cyfrifiaduron. 538 00:22:12,070 --> 00:22:17,770 Beth sy'n digwydd yw eich bod copïo'r gwerth o'r blwch i flwch y person. 539 00:22:17,770 --> 00:22:22,440 >> Felly, yr hyn rwy'n ceisio ei ddweud yw os gennych function-- sorry-- yma, 540 00:22:22,440 --> 00:22:27,700 os oes gennym swyddogaeth tebyg i bump i fyny yno, os ydych yn ceisio pasio newidyn, 541 00:22:27,700 --> 00:22:29,450 dim ond mae'n mynd i gopïo. 542 00:22:29,450 --> 00:22:35,771 Os yw nx ymgychwyn hafal 3, mae'n mynd i copi gwerth hyn i fyny at y newidyn a 543 00:22:35,771 --> 00:22:36,270 i fyny yno. 544 00:22:36,270 --> 00:22:37,005 545 00:22:37,005 --> 00:22:39,630 OK, ac mae hyn yn fath o y rheswm pam ein bod eisiau defnyddio awgrymiadau. 546 00:22:39,630 --> 00:22:42,550 Oherwydd yn hytrach na gan roi dim ond y gwerth, 547 00:22:42,550 --> 00:22:44,850 hytrach na dim ond mynd heibio yn unig y gwerth i'r swyddogaeth, 548 00:22:44,850 --> 00:22:46,530 rydym am i basio drwy gyfeirio. 549 00:22:46,530 --> 00:22:50,630 Yr hyn rydym yn galw pasio drwy gyfeirio yn garedig o roi y blwch i'r swyddogaeth, 550 00:22:50,630 --> 00:22:53,890 fel y gall y swyddogaeth hefyd newid y gwerthoedd yn y blwch. 551 00:22:53,890 --> 00:22:57,280 >> OK, felly dim ond rhai pwyntydd sylfaenol stwff yw creu awgrymiadau, 552 00:22:57,280 --> 00:23:00,300 'ch jyst yn datgan ei fod yn fath, a chi roi seren dde ar ôl iddo. 553 00:23:00,300 --> 00:23:02,307 A'r math yn unig hyn yr ydych yn pwyntio at. 554 00:23:02,307 --> 00:23:04,390 Felly os yw'n 'an seren int, eich bod yn pwyntio mewn int. 555 00:23:04,390 --> 00:23:05,940 Os yw'n seren torgoch, eich bod yn pwyntio ar siart. 556 00:23:05,940 --> 00:23:07,790 Ac os ei fod yn seren myfyrwyr, eich bod yn pwyntio at fyfyriwr. 557 00:23:07,790 --> 00:23:08,770 OK? 558 00:23:08,770 --> 00:23:10,510 >> Ac maen nhw i gyd 4 bytes o hyd. 559 00:23:10,510 --> 00:23:13,010 Gan fod newidyn hwn Nid yw'n gwneud mewn gwirionedd 560 00:23:13,010 --> 00:23:15,380 Mae angen i ddal torgoch, yn int, neu'n fyfyriwr. 561 00:23:15,380 --> 00:23:16,890 Dim ond angen iddo gynnal gyfeiriad. 562 00:23:16,890 --> 00:23:21,390 Dyna pam maen nhw i gyd 4 bytes hir mewn peiriant 32-bit normal. 563 00:23:21,390 --> 00:23:21,890 OK? 564 00:23:21,890 --> 00:23:25,600 Felly dyma, x yn newidyn sy'n pwyntiau i int. y pwyntiau i torgoch. pwyntiau z 565 00:23:25,600 --> 00:23:26,580 i fflôt. 566 00:23:26,580 --> 00:23:27,480 Unrhyw gwestiynau fan hyn? 567 00:23:27,480 --> 00:23:29,841 568 00:23:29,841 --> 00:23:30,340 Cool. 569 00:23:30,340 --> 00:23:32,550 Ac mae dau gwahanol symbolau sydd ganddynt 570 00:23:32,550 --> 00:23:34,341 i gadw mewn cof wrth dod i'r pwyntydd. 571 00:23:34,341 --> 00:23:36,540 Felly cyfeirio a dereferencing yw'r rhai mawr. 572 00:23:36,540 --> 00:23:38,100 573 00:23:38,100 --> 00:23:41,602 Felly y ampersand y enw newidyn yn rhoi i chi y? 574 00:23:41,602 --> 00:23:42,310 MYFYRIWR: Cyfeiriad. 575 00:23:42,310 --> 00:23:43,380 BINKY: Cyfeiriad. 576 00:23:43,380 --> 00:23:47,330 Felly, os ydych yn datgan int a yn hafal i 5, yna ampersand 577 00:23:47,330 --> 00:23:49,214 o yn mynd i roi cyfeiriad i chi. 578 00:23:49,214 --> 00:23:51,130 A allwch chi roi cynnig mewn gwirionedd i argraffu hynny a gweld 579 00:23:51,130 --> 00:23:54,640 pa gyfeiriad mewn cof eich newidyn wedi. 580 00:23:54,640 --> 00:23:57,380 Ac yna dereferencing-- fel eu bod yn cyfeirnodi, 581 00:23:57,380 --> 00:24:00,380 cael y dereferencing address-- yw'r union gyferbyn. 582 00:24:00,380 --> 00:24:04,120 OK, yn union fel amserau yw'r gyferbyn o is-adran, 583 00:24:04,120 --> 00:24:06,060 seren yn y gwrthwyneb o ampersand. 584 00:24:06,060 --> 00:24:09,710 Felly dereferencing yn golygu mynd yno. 585 00:24:09,710 --> 00:24:14,280 Felly, os byddwch yn rhoi i mi star-- peidiwch â know-- 50, dyna 586 00:24:14,280 --> 00:24:20,320 mynd i geisio mynd at y cyfeiriad o rhif 50 tu mewn i'ch cyfrifiadur. 587 00:24:20,320 --> 00:24:22,840 OK, a pham yr ydym yn gweld eu bod yn croes? 588 00:24:22,840 --> 00:24:27,320 Oherwydd bod yr hyn sy'n digwydd os ydych yn ei wneud rhywbeth fel seren ampersand a? 589 00:24:27,320 --> 00:24:28,470 590 00:24:28,470 --> 00:24:33,460 Wel, ampersand a rhoi cyfeiriad i chi o newidyn, cyfeiriad a. 591 00:24:33,460 --> 00:24:35,830 Ond mae seren yn golygu mynd yno. 592 00:24:35,830 --> 00:24:38,930 >> Felly, beth sy'n digwydd os ydych yn mynd at y cyfeiriad o? 593 00:24:38,930 --> 00:24:40,400 Yr ydych newydd gyrraedd, dde? 594 00:24:40,400 --> 00:24:41,410 595 00:24:41,410 --> 00:24:43,600 Felly, yn mynd i gyfeiriad a yw yr un peth â a. 596 00:24:43,600 --> 00:24:47,580 Dyna pam eu bod fel arfer yn cyfeirio at y same-- hon 597 00:24:47,580 --> 00:24:50,480 ac mae hyn yn cael eu cyfeirio at gweithredwyr fel gyferbyn. 598 00:24:50,480 --> 00:24:50,980 OK? 599 00:24:50,980 --> 00:24:52,780 600 00:24:52,780 --> 00:24:53,790 Mor oer. 601 00:24:53,790 --> 00:24:57,240 >> O dan y cwfl, er enghraifft, os ydym yn datgan int x yn hafal i 5, 602 00:24:57,240 --> 00:24:58,040 mae gennym newidyn. 603 00:24:58,040 --> 00:25:00,790 A chofiwch fy mod wedi dweud pob variable-- ac mae hyn yn beth da 604 00:25:00,790 --> 00:25:03,820 i gadw mewn mind-- mae wedi dwy pethau gwahanol sy'n gysylltiedig â. 605 00:25:03,820 --> 00:25:06,460 Mae ganddo afael a gwerth. 606 00:25:06,460 --> 00:25:07,140 OK? 607 00:25:07,140 --> 00:25:09,180 >> Felly mae'r gwerth yn yr achos hwn yw 5. 608 00:25:09,180 --> 00:25:12,140 Ac yw-- y cyfeiriad gadewch i ni ddweud, rwy'n gwneud rhywbeth up-- 'i' 0x04. 609 00:25:12,140 --> 00:25:13,180 610 00:25:13,180 --> 00:25:17,200 A'r unig reswm pam yr ydym fel arfer yn cynrychioli cyfeiriadau yn hecsadegol 611 00:25:17,200 --> 00:25:19,770 yn un, oherwydd y mae fel yn dda. 612 00:25:19,770 --> 00:25:21,600 Mae'n mynd yn dda gyda deuaidd. 613 00:25:21,600 --> 00:25:23,500 Mae'n hawdd i droi yn ôl ac ymlaen deuaidd. 614 00:25:23,500 --> 00:25:26,890 Ac nid yw'n mynd yn rhy fawr os gennych nifer fawr iawn. 615 00:25:26,890 --> 00:25:29,990 Felly, rydym yn hoffi defnyddio hecsadegol mewn cyfeiriadau argraffu. 616 00:25:29,990 --> 00:25:31,890 Ond allwn i gynrychioli hyn fel cyfanrif. 617 00:25:31,890 --> 00:25:32,750 Mae'n iawn. 618 00:25:32,750 --> 00:25:35,450 >> Ac felly mae ganddo gyfeiriad 4 a gwerth o 5. 619 00:25:35,450 --> 00:25:38,080 Ac yna y dywedais pwyntydd seren int. 620 00:25:38,080 --> 00:25:40,070 Felly, mae hyn yn fath, rhybudd gwahanol. 621 00:25:40,070 --> 00:25:43,220 Pwyntydd seren int hafal y cyfeiriad o x. 622 00:25:43,220 --> 00:25:46,425 Felly beth sy'n mynd i fod yn werth PTR? 623 00:25:46,425 --> 00:25:47,710 624 00:25:47,710 --> 00:25:51,600 Mae'n mynd i fod yn gyfeiriad o x, i lawr yma. 625 00:25:51,600 --> 00:25:54,190 Iawn, felly mae'r gwerth yn mynd i yr un fath ag y cyfeiriad. 626 00:25:54,190 --> 00:25:56,130 Dyna yr aseiniad yn gweithredu rwy'n ei wneud. 627 00:25:56,130 --> 00:25:59,380 Ac yna ptr yn mynd i gael ei gyfeiriad ei hun, sydd yn troi allan, 628 00:25:59,380 --> 00:26:02,050 yn yr achos hwn, mae'r 8, OK? 629 00:26:02,050 --> 00:26:03,850 630 00:26:03,850 --> 00:26:05,900 >> Ac yna yr wyf yn creu copi cyfanrif newydd. 631 00:26:05,900 --> 00:26:08,790 Ac yr wyf yn dweud copi int hafal mynd yno. 632 00:26:08,790 --> 00:26:11,140 Felly ewch i ba ptr yn pwyntio i. 633 00:26:11,140 --> 00:26:13,940 Wel, pa ptr hwn? 634 00:26:13,940 --> 00:26:14,740 Mae gan PTR 0x04. 635 00:26:14,740 --> 00:26:16,060 636 00:26:16,060 --> 00:26:18,400 Beth fydd yn digwydd os byddaf yn ceisio mynd yno? 637 00:26:18,400 --> 00:26:23,650 Byddaf yn dod o hyd y dyn sydd wedi cyfeiriad x a phwy sydd gyfeiriad 4. 638 00:26:23,650 --> 00:26:25,970 Ac sydd wedi mynd i'r afael pedwar yw x. 639 00:26:25,970 --> 00:26:26,950 A yw hynny'n gwneud synnwyr? 640 00:26:26,950 --> 00:26:28,295 641 00:26:28,295 --> 00:26:28,795 Ie? 642 00:26:28,795 --> 00:26:32,060 >> MYFYRIWR: Yn yr achos hwn, yn pwyntydd mewn pentwr? 643 00:26:32,060 --> 00:26:36,024 >> BINKY: Yn yr achos hwn, it's-- Cwestiwn da. 644 00:26:36,024 --> 00:26:38,690 Doeddwn i ddim wir yn meddwl am hyn wrth iddynt wneud cyfeiriadau hyn. 645 00:26:38,690 --> 00:26:42,570 Ond os yw hyn yn, fel, i gyd mae'r rhain yn newidynnau lleol, 646 00:26:42,570 --> 00:26:46,372 Yna, x yn mynd i fyw in-- bopeth yn mynd i fyw yn y pentwr. 647 00:26:46,372 --> 00:26:48,330 Felly mae popeth yn mynd i fod yn pwyntio i'r golwg. 648 00:26:48,330 --> 00:26:49,360 649 00:26:49,360 --> 00:26:52,700 Byddwch ond yn cael at y domen pan byddwch yn dechrau defnyddio malloc, dde? 650 00:26:52,700 --> 00:26:59,430 >> Felly, os ydych yn cofio stac yw bob tro byddwch yn ffonio swyddogaeth yn eich rhaglen, 651 00:26:59,430 --> 00:27:02,800 fel, prif er enghraifft, neu unrhyw swyddogaeth arall, fel printf. 652 00:27:02,800 --> 00:27:06,334 Mae pob un o'r newidynnau lleol yn mynd i gael eu rhoi mewn ffrâm pentwr. 653 00:27:06,334 --> 00:27:08,500 Ac maent yn mynd i gael fel pentyrru i fyny yn y pentwr. 654 00:27:08,500 --> 00:27:09,930 Dyna beth a elwir pentwr. 655 00:27:09,930 --> 00:27:12,200 A holl newidynnau lleol hynny yn mynd i fod yno. 656 00:27:12,200 --> 00:27:14,940 Ac mae'r heap-- ac rydym yn mynd i siarad mwy am hyn later-- 657 00:27:14,940 --> 00:27:19,050 mae'r domen yn lle pob un ddyrannwyd bywydau cof ddynamig. 658 00:27:19,050 --> 00:27:20,270 Cool? 659 00:27:20,270 --> 00:27:21,680 >> Rydym yn mynd i'r sleid hwn. 660 00:27:21,680 --> 00:27:22,800 Ie? 661 00:27:22,800 --> 00:27:25,490 >> MYFYRIWR: Ni Pam fod int copi dychwelyd 0x04? 662 00:27:25,490 --> 00:27:27,870 663 00:27:27,870 --> 00:27:30,066 >> BINKY: Ni Pam fod int copi dychwelyd 0x04? 664 00:27:30,066 --> 00:27:32,450 >> MYFYRIWR: Pam nad yw bod [Anghlywadwy]? 665 00:27:32,450 --> 00:27:35,530 >> BINKY: Oherwydd yr hyn yw gwerth y ptr? 666 00:27:35,530 --> 00:27:37,394 667 00:27:37,394 --> 00:27:38,370 >> MYFYRIWR: 0x04. 668 00:27:38,370 --> 00:27:38,960 >> BINKY: 0x04. 669 00:27:38,960 --> 00:27:40,910 Beth sy'n digwydd os byddwch yn mynd i 0x04? 670 00:27:40,910 --> 00:27:41,620 Beth fyddwch chi'n ei gael? 671 00:27:41,620 --> 00:27:42,371 >> MYFYRIWR: O, OK. 672 00:27:42,371 --> 00:27:42,995 BINKY: Byddwch yn gweld? 673 00:27:42,995 --> 00:27:43,536 MYFYRIWR: Ydw. 674 00:27:43,536 --> 00:27:44,890 BINKY: Felly, byddwch yn cael 5. 675 00:27:44,890 --> 00:27:49,170 Felly mae copi yn mynd i gael 5, os yw hynny'n gwneud synnwyr. 676 00:27:49,170 --> 00:27:49,809 Ie? 677 00:27:49,809 --> 00:27:52,803 >> MYFYRIWR: A allem wedi gotten 5 yn y blwch gwerth [Anghlywadwy] 678 00:27:52,803 --> 00:27:55,300 os ydym yn rhoi int copïo [Anghlywadwy]. 679 00:27:55,300 --> 00:27:56,710 >> BINKY: Int-- byddem, yeah. 680 00:27:56,710 --> 00:27:59,080 Byddai hynny wedi gwneud 'n bert lawer yr un peth. 681 00:27:59,080 --> 00:28:02,080 Ond y ffordd hon, gallwn drosglwyddo mynd i'r afael â swyddogaethau. 682 00:28:02,080 --> 00:28:05,050 A dyna yw'r peth cŵl rydym yn mynd i wneud ar hyn o bryd. 683 00:28:05,050 --> 00:28:06,770 684 00:28:06,770 --> 00:28:13,090 >> Felly y math hwn o ymarfer corff bob amser yn dod i fyny on-- fel arfer yn iawn yn dod i fyny ar y cwisiau. 685 00:28:13,090 --> 00:28:15,870 Felly mae'n wirioneddol dda i geisio yn gwneud y math yna o beth eich hun. 686 00:28:15,870 --> 00:28:21,210 Felly ceisiwch gadw golwg ar yr hyn y cyfeiriad yw ac eisiau gwerthoedd y newidynnau 687 00:28:21,210 --> 00:28:22,620 ar bob pwynt. 688 00:28:22,620 --> 00:28:24,370 Felly mae hyn yn union yr hyn rydym yn mynd i'w wneud. 689 00:28:24,370 --> 00:28:26,988 Yma, mae gennym grisiau, un, dau, tri, pedwar, pump. 690 00:28:26,988 --> 00:28:30,530 Un, dau, tri, pedwar, pump. 691 00:28:30,530 --> 00:28:33,330 Ac rydym yn mynd i gadw golwg o werthoedd o x ac a. 692 00:28:33,330 --> 00:28:34,650 693 00:28:34,650 --> 00:28:40,530 >> Felly, beth mae hyn yn ei wneud, os yw hyn yn cod bygi, yr ydym yn ceisio ei wneud i bump. 694 00:28:40,530 --> 00:28:43,610 Felly, rydym yn ceisio cael mewn amrywiol ac yn newid ei werth i 5. 695 00:28:43,610 --> 00:28:44,630 696 00:28:44,630 --> 00:28:49,900 A chofiwch fy cyfatebiaeth o gael blwch ac yn trosglwyddo i'r blwch i rywun? 697 00:28:49,900 --> 00:28:51,515 Felly prif Mae y blwch hwn a elwir yn x. 698 00:28:51,515 --> 00:28:52,570 699 00:28:52,570 --> 00:28:54,170 Ac mae'n cynnwys y gwerth 3. 700 00:28:54,170 --> 00:28:55,230 701 00:28:55,230 --> 00:28:57,455 A dwi'n ceisio ei law y blwch hwn i at bump. 702 00:28:57,455 --> 00:28:58,560 703 00:28:58,560 --> 00:29:01,510 >> Ac rwyf am bump i newid gwerth y blwch hwn i 5. 704 00:29:01,510 --> 00:29:03,080 705 00:29:03,080 --> 00:29:05,120 Ac yna Fi jyst argraffu werth x. 706 00:29:05,120 --> 00:29:06,475 707 00:29:06,475 --> 00:29:08,850 Mae hyn yn yr hyn y mae fy function-- mae hyn yn beth rwy'n ceisio ei wneud. 708 00:29:08,850 --> 00:29:12,450 Im 'jyst yn ceisio ei ddiweddaru werth x i 5. 709 00:29:12,450 --> 00:29:13,512 710 00:29:13,512 --> 00:29:14,970 A yw'n glir yr hyn y mae'r swyddogaeth yn ei wneud? 711 00:29:14,970 --> 00:29:16,210 712 00:29:16,210 --> 00:29:21,440 >> Iawn, felly beth yn mynd i fod y werthoedd o x a hawl yma, 713 00:29:21,440 --> 00:29:27,734 y llinell gyntaf, i'r dde cyn y cyntaf line-- Byddwn say-- o'r rhaglen? 714 00:29:27,734 --> 00:29:28,940 >> MYFYRIWR: Mae'n debyg garbage. 715 00:29:28,940 --> 00:29:30,023 >> BINKY: Dim ond stwff garbage. 716 00:29:30,023 --> 00:29:32,590 Felly, Fi jyst rhoi N / A. Felly dydyn ni ddim yn gwybod. 717 00:29:32,590 --> 00:29:37,400 Fel, nid yw hyd yn oed yn bodoli eto, oherwydd nid ydym wedi galw i bump. 718 00:29:37,400 --> 00:29:38,980 Nid Int a yn cael ei ddatgan. 719 00:29:38,980 --> 00:29:40,030 720 00:29:40,030 --> 00:29:42,920 Ac x yn mynd i fodoli yma, ond nid ydym wedi gwirionedd 721 00:29:42,920 --> 00:29:45,370 neilltuo unrhyw werth iddo, felly OK? 722 00:29:45,370 --> 00:29:46,570 723 00:29:46,570 --> 00:29:52,340 >> Ac yna, beth yn mynd i fod y gwerthoedd x ac mae mewn rhif dau? 724 00:29:52,340 --> 00:29:54,530 725 00:29:54,530 --> 00:29:55,410 >> MYFYRIWR: [Anghlywadwy]. 726 00:29:55,410 --> 00:29:57,540 >> BINKY: Felly x yn mynd i fod yn 3. 727 00:29:57,540 --> 00:29:59,650 Mae hynny'n hawdd, gan fod rydym yn aseinio 3 iddo. 728 00:29:59,650 --> 00:30:03,500 Ac mae yn dal yn bodoli oherwydd bod yn unig yn byw mewn i bump. 729 00:30:03,500 --> 00:30:05,800 Felly, dw i'n mynd i gael 3 a dim byd. 730 00:30:05,800 --> 00:30:08,590 neu fel garbage, beth bynnag, Nid yw diffinio'n gwirionedd. 731 00:30:08,590 --> 00:30:11,640 732 00:30:11,640 --> 00:30:13,140 Ac yn awr, dyma'r llinell pwysig. 733 00:30:13,140 --> 00:30:14,931 Yma, rydym yn mynd i mewn gwirionedd yn galw i bump. 734 00:30:14,931 --> 00:30:17,140 735 00:30:17,140 --> 00:30:18,680 A chofiwch hyn a ddywedais. 736 00:30:18,680 --> 00:30:20,240 Rydym byth yn pasio yn y blwch. 737 00:30:20,240 --> 00:30:23,110 Rydym jyst adysgrifia werth y blwch i'r blwch arall. 738 00:30:23,110 --> 00:30:27,000 Dyna'r cyfan cyfrifiaduron yn, copïo pethau o un lle i'r llall. 739 00:30:27,000 --> 00:30:33,550 >> Felly, i bump, yr hyn y mae'n ei wneud mewn gwirionedd a yw'n copïau werth x i a. 740 00:30:33,550 --> 00:30:35,130 Felly beth sy'n mynd i fod yma? 741 00:30:35,130 --> 00:30:36,210 Mae gwerthoedd x ac a. 742 00:30:36,210 --> 00:30:38,670 743 00:30:38,670 --> 00:30:43,360 3 a 3, byddwn yn jyst adysgrifia mae'n drosodd o x i a. 744 00:30:43,360 --> 00:30:44,710 745 00:30:44,710 --> 00:30:45,320 Cool. 746 00:30:45,320 --> 00:30:46,140 >> Nawr rydym ni yma. 747 00:30:46,140 --> 00:30:47,610 748 00:30:47,610 --> 00:30:49,430 Ac yn awr rydym yn mynd i ddiweddaru hafal i 5. 749 00:30:49,430 --> 00:30:50,900 750 00:30:50,900 --> 00:30:53,070 Beth sy'n mynd i ddigwydd yn unol pedwar? 751 00:30:53,070 --> 00:30:55,120 752 00:30:55,120 --> 00:30:56,010 >> MYFYRIWR: [Anghlywadwy]. 753 00:30:56,010 --> 00:30:59,685 >> BINKY: a ​​yn cael ei diweddaru, ond nid yw x oedd yn cael ei diweddaru. 754 00:30:59,685 --> 00:31:02,050 755 00:31:02,050 --> 00:31:05,250 Oherwydd bod x yn dal i fyw yn y prif, mae'n hollol wahanol bloc o cof. 756 00:31:05,250 --> 00:31:06,970 Mae'n newidyn gwahanol. 757 00:31:06,970 --> 00:31:07,900 a yw newidyn arall. 758 00:31:07,900 --> 00:31:10,000 Maent yn digwydd i gael y un gwerth am fy mod 759 00:31:10,000 --> 00:31:13,980 copïo dros werth x i a. 760 00:31:13,980 --> 00:31:20,070 Ond yn awr pan wyf yn ei wneud yn hafal i 5, mae'n nid yw'n wir yn effeithio x mewn unrhyw ffordd. 761 00:31:20,070 --> 00:31:21,450 Mae hyn yn y rhan fwy anodd. 762 00:31:21,450 --> 00:31:23,380 A yw'n gwneud synnwyr i bawb? 763 00:31:23,380 --> 00:31:24,093 Ie? 764 00:31:24,093 --> 00:31:25,717 MYFYRIWR: Un cwestiwn mwy, mae gennych 3. 765 00:31:25,717 --> 00:31:27,741 Pam fod already-- oh, na, 'i' 3. 766 00:31:27,741 --> 00:31:28,490 Mae'n ddrwg gennym, heb sôn. 767 00:31:28,490 --> 00:31:29,310 Rwyf yn darllen 5. 768 00:31:29,310 --> 00:31:30,415 >> BINKY: Yeah, 3, 3. 769 00:31:30,415 --> 00:31:31,540 >> MYFYRIWR: [Anghlywadwy], yeah. 770 00:31:31,540 --> 00:31:35,290 BINKY: Ac yna rydym yn aseinio 5 i mae, ond nid yw'n wir yn newid x. 771 00:31:35,290 --> 00:31:36,369 Da? 772 00:31:36,369 --> 00:31:36,910 MYFYRIWR: Ydw. 773 00:31:36,910 --> 00:31:37,410 BINKY: Ie? 774 00:31:37,410 --> 00:31:42,330 Allwch chi egluro eto sut a yn cael copïo [Anghlywadwy]? 775 00:31:42,330 --> 00:31:48,480 >> BINKY: OK, felly pan fyddwch yn galw i bump o x, felly y llinell hon o god yma. 776 00:31:48,480 --> 00:31:50,100 777 00:31:50,100 --> 00:31:52,340 i bump o x, beth yw x? 778 00:31:52,340 --> 00:31:55,160 779 00:31:55,160 --> 00:31:58,340 x yn unig 3 ar hyn o bryd, dde? 780 00:31:58,340 --> 00:32:03,320 Felly, fe allech chi jyst yn meddwl o roi a 3 mewn yma ac yn anghofio am x. 781 00:32:03,320 --> 00:32:04,410 Dim ond yn rhoi 3 yma. 782 00:32:04,410 --> 00:32:10,880 Fel, rydyn ni'n mynd i gopïo dros y gwerth o x i'r int a dyna i fyny yno. 783 00:32:10,880 --> 00:32:12,310 784 00:32:12,310 --> 00:32:13,630 OK? 785 00:32:13,630 --> 00:32:14,780 >> Felly mae'r gwerth x yw 3. 786 00:32:14,780 --> 00:32:17,680 Rydym yn mynd i gopïo 3 drosodd i a. 787 00:32:17,680 --> 00:32:20,040 Ac mae hyn i gyd bloc arall o cof, y newidyn arall 788 00:32:20,040 --> 00:32:22,640 a elwir yn cael 3, yn ogystal. 789 00:32:22,640 --> 00:32:23,580 A yw hynny'n gwneud synnwyr? 790 00:32:23,580 --> 00:32:24,780 791 00:32:24,780 --> 00:32:25,794 Ie? 792 00:32:25,794 --> 00:32:31,008 >> MYFYRIWR: Os ydych yn rhoi i bump fel rhaid iddo fel cyfanrif x yn hytrach na, 793 00:32:31,008 --> 00:32:32,910 a fyddai'n atgyweiria popeth? 794 00:32:32,910 --> 00:32:36,290 >> BINKY: Os yw'n 'an integer-- dim, Ni fyddai'n atgyweiria popeth. 795 00:32:36,290 --> 00:32:37,590 Felly dyna gwestiwn da iawn. 796 00:32:37,590 --> 00:32:40,480 Nid oes llawer o bwys beth byddwch yn ffonio newidynnau hynny. 797 00:32:40,480 --> 00:32:44,510 Unwaith eto, bydd yn fater o gwmpas, oherwydd nad ydynt yn yr un x. 798 00:32:44,510 --> 00:32:46,526 Maen nhw'n gwbl mannau gwahanol yn y cof. 799 00:32:46,526 --> 00:32:47,400 MYFYRIWR: [Anghlywadwy]. 800 00:32:47,400 --> 00:32:49,020 BINKY: Felly, nid yw'n gwneud 'n sylweddol ots beth yr ydych yn eu galw. 801 00:32:49,020 --> 00:32:50,480 Nid yw hynny'n datrys pethau, OK? 802 00:32:50,480 --> 00:32:53,390 803 00:32:53,390 --> 00:32:54,430 Mwy o gwestiynau? 804 00:32:54,430 --> 00:32:55,762 Ie? 805 00:32:55,762 --> 00:32:58,498 >> MYFYRIWR: Sut mae'n ôl i rhif pump [Anghlywadwy]? 806 00:32:58,498 --> 00:32:59,661 807 00:32:59,661 --> 00:33:01,160 BINKY: OK, nid ydym wedi gwneud hynny eto. 808 00:33:01,160 --> 00:33:03,432 Gadewch i ni fynd i rif pump, yna. 809 00:33:03,432 --> 00:33:04,650 >> MYFYRIWR: [Anghlywadwy]? 810 00:33:04,650 --> 00:33:05,565 >> BINKY: Beth? 811 00:33:05,565 --> 00:33:08,179 >> MYFYRIWR: Oes gennych chi ddychwelyd o gwbl? 812 00:33:08,179 --> 00:33:09,970 BINKY: Nid oes gennym dychwelyd, nid o brif. 813 00:33:09,970 --> 00:33:12,940 Ond prif yn dychwelyd 0 yn awtomatig os na fyddwch yn dychwelyd unrhyw beth. 814 00:33:12,940 --> 00:33:14,400 815 00:33:14,400 --> 00:33:15,188 Ie? 816 00:33:15,188 --> 00:33:22,658 >> MYFYRIWR: Allech chi wneud main-- neu y gallech eu gwneud i bump ffurflen a? 817 00:33:22,658 --> 00:33:24,170 818 00:33:24,170 --> 00:33:27,990 >> BINKY: Gallem gael i bump dychwelyd, ie. 819 00:33:27,990 --> 00:33:32,527 Ond yna byddai'n rhaid i ni neilltuo x yn hafal i werth dychwelyd i bump, 820 00:33:32,527 --> 00:33:34,360 a fyddai'n fod yn ychydig yn raglen wahanol. 821 00:33:34,360 --> 00:33:35,440 Y byddai'n gweithio. 822 00:33:35,440 --> 00:33:38,730 Ond yr hyn yr ydym am ei wneud yw hyn sydd Gelwir newid rhywbeth yn ei le. 823 00:33:38,730 --> 00:33:41,690 Felly, rydym am i mewn gwirionedd newid hynny blwch ac â phoeni 824 00:33:41,690 --> 00:33:44,390 am orfod dychwelyd gwerthoedd neu unrhyw beth. 825 00:33:44,390 --> 00:33:44,890 OK? 826 00:33:44,890 --> 00:33:46,490 827 00:33:46,490 --> 00:33:50,150 >> Mae hyn yn union fel y swyddogaeth cyfnewid Dangosodd David mewn darlith, ac eithrio fy mod 828 00:33:50,150 --> 00:33:51,740 ond yn delio ag un newidyn. 829 00:33:51,740 --> 00:33:55,960 A defnyddiodd dau, felly int a a b a Yna, amrywiol a whatnot dros dro. 830 00:33:55,960 --> 00:33:57,020 OK? 831 00:33:57,020 --> 00:33:58,070 Felly beth yw'r llinell olaf? 832 00:33:58,070 --> 00:34:04,400 Ar ôl i bump yn dychwelyd, 'i' yn syml y mae yn mynd i fynd i ffwrdd. 833 00:34:04,400 --> 00:34:06,120 834 00:34:06,120 --> 00:34:10,179 Ni fydd gennym anymore, a dim ond x dal i fyw ar. 835 00:34:10,179 --> 00:34:12,130 >> A dyfalu beth? x nid oedd yn newid ei werth, 836 00:34:12,130 --> 00:34:15,520 wedi'r cyfan, oherwydd ein bod yn Dim ond newid y gwerth a. 837 00:34:15,520 --> 00:34:17,370 Dyna pam mae x yn 3 drwy gydol. 838 00:34:17,370 --> 00:34:17,870 OK? 839 00:34:17,870 --> 00:34:20,195 840 00:34:20,195 --> 00:34:21,130 Da. 841 00:34:21,130 --> 00:34:23,560 Felly, nid yw'r rhaglen hon yn cyflawni'r hyn yr ydym ei eisiau. 842 00:34:23,560 --> 00:34:24,760 Nawr, gadewch i drwsio. 843 00:34:24,760 --> 00:34:27,440 >> Ac mae'r rhaglen atgyweiria yn defnyddio awgrymiadau. 844 00:34:27,440 --> 00:34:32,300 Yr hyn rydym yn ei wneud yw gennym dri llinellau sy'n wahanol. 845 00:34:32,300 --> 00:34:34,020 Mae'r rhai cyntaf yw nad ydym yn pasio x. 846 00:34:34,020 --> 00:34:35,535 Rydym yn pasio y cyfeiriad o x. 847 00:34:35,535 --> 00:34:37,330 848 00:34:37,330 --> 00:34:40,876 Felly, yn lle hynny copïo drosodd gwerth y bocs, 849 00:34:40,876 --> 00:34:42,500 Rydw i'n dal i fynd i gopïo dros rywbeth. 850 00:34:42,500 --> 00:34:45,380 Ond dw i'n copïo drosodd cyfeiriad y bocs. 851 00:34:45,380 --> 00:34:48,780 >> Felly, os wyf yn llwyddo yn y cyfeiriad y blwch i at bump, yna i bump 852 00:34:48,780 --> 00:34:51,560 yn gallu dod o hyd i hynny yn cof ac yn newid ei werth. 853 00:34:51,560 --> 00:34:53,980 854 00:34:53,980 --> 00:34:59,580 >> Felly, ac yna i fyny yno, mae gen i Nid yw bod yn int anymore. 855 00:34:59,580 --> 00:35:00,882 mae yn seren int. 856 00:35:00,882 --> 00:35:02,090 Mae'n pwyntydd i'r cyfanrif. 857 00:35:02,090 --> 00:35:03,790 858 00:35:03,790 --> 00:35:07,310 Ac yna, oherwydd fy mod i'n mynd heibio i'r rhoi sylw yma, ac yna yr hyn yr wyf yn ei wneud 859 00:35:07,310 --> 00:35:10,530 nid yw'n hafal 5, oherwydd a yn cynnal gyfeiriad. 860 00:35:10,530 --> 00:35:16,710 Felly, yr hyn yr wyf am ei wneud yw mynd yno ac diweddaru'r cynnwys y cyfeiriad hwn 861 00:35:16,710 --> 00:35:18,305 gyda 5. 862 00:35:18,305 --> 00:35:21,130 >> OK, felly gadewch i ni fynd drwy'r pob un o linellau o un i un. 863 00:35:21,130 --> 00:35:22,410 864 00:35:22,410 --> 00:35:26,024 Felly, pan fyddaf yn dechrau fan hyn, yr wyf yn yn dal i gael N / A, N / A, N / A 865 00:35:26,024 --> 00:35:28,440 ar gyfer popeth yn y cyntaf lein, oherwydd nid wyf wedi wir yn 866 00:35:28,440 --> 00:35:29,390 datgan pethau eto. 867 00:35:29,390 --> 00:35:30,980 868 00:35:30,980 --> 00:35:35,110 Ac yna llinell dau, mae gennyf x yn hafal i 3. 869 00:35:35,110 --> 00:35:38,020 Nid yw seren int a ddim yn bodoli, un peth ag o'r blaen. 870 00:35:38,020 --> 00:35:39,160 871 00:35:39,160 --> 00:35:40,640 >> Nawr mae'n mynd yn ddiddorol. 872 00:35:40,640 --> 00:35:42,300 Felly, dw i'n mynd i basio. 873 00:35:42,300 --> 00:35:45,720 A gadewch i ni dybio bod y cyfeiriad o x yw 12 yn hecsadegol. 874 00:35:45,720 --> 00:35:46,880 875 00:35:46,880 --> 00:35:48,420 Gadewch i jyst cymryd yn ganiataol hyn. 876 00:35:48,420 --> 00:35:49,221 Yr wyf yn gwneud i fyny. 877 00:35:49,221 --> 00:35:51,680 878 00:35:51,680 --> 00:35:53,500 Felly, beth ydw i'n pasio yma yw i bump. 879 00:35:53,500 --> 00:35:54,460 Im 'yn pasio 12. 880 00:35:54,460 --> 00:35:56,390 881 00:35:56,390 --> 00:35:58,610 >> Felly, pa werth sydd gan gael? 882 00:35:58,610 --> 00:36:04,785 883 00:36:04,785 --> 00:36:06,210 >> MYFYRIWR: [Anghlywadwy]. 884 00:36:06,210 --> 00:36:06,950 >> BINKY: Mae'n ddrwg gennyf? 885 00:36:06,950 --> 00:36:08,145 >> MYFYRIWR: [Anghlywadwy]. 886 00:36:08,145 --> 00:36:10,520 BINKY: Yeah, fel, er mwyn gadewch i ni cymryd yn ganiataol ein bod yma, yn awr. 887 00:36:10,520 --> 00:36:11,540 888 00:36:11,540 --> 00:36:12,040 Rwy'n gofyn. 889 00:36:12,040 --> 00:36:12,915 >> MYFYRIWR: [Anghlywadwy]. 890 00:36:12,915 --> 00:36:13,590 891 00:36:13,590 --> 00:36:14,890 >> BINKY: Mae wedi cael ei gychwyn. 892 00:36:14,890 --> 00:36:15,860 >> MYFYRIWR: [Anghlywadwy]. 893 00:36:15,860 --> 00:36:17,985 BINKY: Oherwydd ein bod pasio rhywbeth i'r swyddogaeth. 894 00:36:17,985 --> 00:36:19,431 895 00:36:19,431 --> 00:36:19,930 Ie? 896 00:36:19,930 --> 00:36:20,899 >> MYFYRIWR: Cyfeiriad x. 897 00:36:20,899 --> 00:36:22,690 BINKY: Mae'n mynd i gael y cyfeiriad o x. 898 00:36:22,690 --> 00:36:25,800 A chyfeiriad x yn 12, yn dda. 899 00:36:25,800 --> 00:36:30,990 Felly mae x yn mynd i fod yn 3, gan fod nid ydym wedi newid mewn gwirionedd x eto. 900 00:36:30,990 --> 00:36:36,700 Ac yna mae yn mynd i fod 0x12, felly y cyfeiriad y x, oherwydd dyna 901 00:36:36,700 --> 00:36:38,840 hyn yr ydym yn ei drosglwyddo i at bump. 902 00:36:38,840 --> 00:36:40,940 >> Ac yna beth sy'n digwydd os ydym yn ceisio mynd yno? 903 00:36:40,940 --> 00:36:42,145 Beth ydym yn mynd i ddod o hyd? 904 00:36:42,145 --> 00:36:47,120 Felly, os ydych yn ceisio argraffu seren a, rydym yn mynd i ddilyn y cyfeiriad hwn 905 00:36:47,120 --> 00:36:48,620 a chael y gwerth y tu mewn. 906 00:36:48,620 --> 00:36:50,470 A'r gwerth yn unig yr un gwerth a x 907 00:36:50,470 --> 00:36:53,980 Mae oherwydd dyna yw'r gyfeiriad o x, a fydd yn 3. 908 00:36:53,980 --> 00:36:55,440 909 00:36:55,440 --> 00:36:56,930 A ydym yn dda? 910 00:36:56,930 --> 00:36:59,990 >> OK, ac yna erbyn hyn, rydym mewn gwirionedd yn mynd yno. 911 00:36:59,990 --> 00:37:05,510 Ac rydym yn diweddaru beth bynnag yn y cyfeiriad hwn 12. 912 00:37:05,510 --> 00:37:07,390 Rydym yn ei gwneud yn 5. 913 00:37:07,390 --> 00:37:10,560 Felly nawr ddau x ac seren a 5. 914 00:37:10,560 --> 00:37:13,170 915 00:37:13,170 --> 00:37:13,680 >> Pam hynny? 916 00:37:13,680 --> 00:37:17,070 Oherwydd bod y cyfeiriad o x yw 12. 917 00:37:17,070 --> 00:37:20,920 Ac mae hefyd 12 fel ei werth. 918 00:37:20,920 --> 00:37:23,780 Felly, os ydym yn dilyn 12, rydym yn jyst yn mynd i ddod o hyd x. 919 00:37:23,780 --> 00:37:27,400 Felly, beth bynnag a wnawn gyda a seren yn mynd i ddigwydd 920 00:37:27,400 --> 00:37:30,790 i x, oherwydd bod cynnwys y cyfeiriad o x. 921 00:37:30,790 --> 00:37:31,918 922 00:37:31,918 --> 00:37:32,418 OK? 923 00:37:32,418 --> 00:37:34,090 924 00:37:34,090 --> 00:37:37,750 >> Ac mae hyn yn debyg i'r craidd y atgyweiria. 925 00:37:37,750 --> 00:37:41,500 Felly, yn awr rydym yn gallu, o i bump, mewn gwirionedd 926 00:37:41,500 --> 00:37:43,840 cof mynediad a oedd yn byw yn y prif. 927 00:37:43,840 --> 00:37:47,980 Felly, nid yw cof hwn yn byw mewn i pump, fel o'r blaen, y cyfeiriad hwn 12. 928 00:37:47,980 --> 00:37:50,980 A bu modd i fynd yno ac yn newid ei werth i 5. 929 00:37:50,980 --> 00:37:53,990 >> Ac yna pan fyddwn yn dychwelyd, rydym yn anghofio am a. 930 00:37:53,990 --> 00:37:55,720 Rydym yn anghofio am y seren a. 931 00:37:55,720 --> 00:37:57,020 Ac x yn dal pump. 932 00:37:57,020 --> 00:37:58,327 933 00:37:58,327 --> 00:38:00,160 Felly, os ydych yn dymuno gweithredu swyddogaeth cyfnewid, 934 00:38:00,160 --> 00:38:05,010 Byddai 'ch jyst yn gwneud yr un peth yn union, ac eithrio angen i chi int sêr yma, 935 00:38:05,010 --> 00:38:06,140 ac yn y blaen ac yn y blaen. 936 00:38:06,140 --> 00:38:06,976 OK? 937 00:38:06,976 --> 00:38:07,475 A ydym yn dda? 938 00:38:07,475 --> 00:38:09,860 939 00:38:09,860 --> 00:38:10,610 Cool. 940 00:38:10,610 --> 00:38:12,410 >> Felly pwyntydd rhifyddeg. 941 00:38:12,410 --> 00:38:13,960 Mae hwn yn bwnc ychydig yn anodd. 942 00:38:13,960 --> 00:38:16,554 Felly, mae'n ymddangos bod awgrymiadau yn unig gyfanrifau. 943 00:38:16,554 --> 00:38:17,970 Gallwch chi feddwl amdanynt fel gyfanrifau. 944 00:38:17,970 --> 00:38:21,080 Oherwydd mewn cof, mae gennych hoffi cyfeiriad sero, un, dau, tri cof, 945 00:38:21,080 --> 00:38:21,900 pedwar, pump. 946 00:38:21,900 --> 00:38:23,900 Felly, gallwn swm cyfeiriadau cof. 947 00:38:23,900 --> 00:38:27,230 >> A dyna fel arfer yn yr hyn yr ydych yn ei wneud pan fydd ydych chi mewn ac amrywiaeth, er enghraifft. 948 00:38:27,230 --> 00:38:30,540 Amrywiaeth yn union fel yn cydgyffwrdd bloc o cof, o lawer o chars, 949 00:38:30,540 --> 00:38:31,840 er enghraifft, llawer o ints. 950 00:38:31,840 --> 00:38:34,420 Felly os ydych am fynd i'r ail int neu i'r drydedd int, 951 00:38:34,420 --> 00:38:37,830 gallwch am grynhoi rhywbeth i'r cyntaf cyfeiriad, a ydych yn mynd i gyrraedd yno. 952 00:38:37,830 --> 00:38:39,620 Felly mae hyn yn ddefnyddiol iawn ar gyfer hynny. 953 00:38:39,620 --> 00:38:41,850 >> A'r peth i gadw mewn cof, fodd bynnag, yw 954 00:38:41,850 --> 00:38:45,140 na 'i' jyst yn hoffi rhifyddeg arferol yn yr ystyr 955 00:38:45,140 --> 00:38:50,304 os ydych yn delio â, dyweder, seren int, ac yr ydych yn ychwanegu 1 ato, 956 00:38:50,304 --> 00:38:52,220 yna nid ydych yn mynd i ychwanegu 1 at y cyfeiriad, 957 00:38:52,220 --> 00:38:53,950 ydych yn mynd i ychwanegu 4 at y cyfeiriad. 958 00:38:53,950 --> 00:38:55,030 959 00:38:55,030 --> 00:38:56,670 Am fod int yw 4 bytes. 960 00:38:56,670 --> 00:38:57,720 961 00:38:57,720 --> 00:38:59,540 >> Felly mae hyn yn union fel cerdded ar arae. 962 00:38:59,540 --> 00:39:05,260 Os oes gennym amrywiaeth o lawer o ints a Yna, rydym yn ceisio mynd i'r ail un, 963 00:39:05,260 --> 00:39:08,790 'i' y bôn yn unig grynhoi y cyfeiriad yr un cyntaf ac 1. 964 00:39:08,790 --> 00:39:10,040 965 00:39:10,040 --> 00:39:13,425 Ond ni fydd hynny'n be-- dim ond gadewch i ni ddweud bod y cyfeiriad yr un cyntaf yw 4. 966 00:39:13,425 --> 00:39:14,560 967 00:39:14,560 --> 00:39:16,250 Yma, yn yr achos hwn. 968 00:39:16,250 --> 00:39:19,780 969 00:39:19,780 --> 00:39:22,850 Ac os ydym yn swm, felly mae hyn yn yw'r hyn sy'n digwydd. 970 00:39:22,850 --> 00:39:23,530 Mae gennym int. 971 00:39:23,530 --> 00:39:25,640 Int x yn hafal i 5. 972 00:39:25,640 --> 00:39:26,950 X mae iddo werth 5. 973 00:39:26,950 --> 00:39:31,240 Ac rydym yn ymgychwyn y pwyntydd yma, int y seren int y hafal i gyfeiriad o x. 974 00:39:31,240 --> 00:39:33,660 >> Gadewch i ni dybio y cyfeiriad o x yw 4. 975 00:39:33,660 --> 00:39:36,960 Beth sy'n mynd i ddigwydd yn awr os wyf swm ychwanegu 1 i y? 976 00:39:36,960 --> 00:39:39,110 977 00:39:39,110 --> 00:39:44,790 Mae'n mynd i mewn gwirionedd swm 4 yn hytrach na dim ond 1. 978 00:39:44,790 --> 00:39:50,920 Felly yr wyf yn ychwanegu 1, ond mae'n mewn gwirionedd Ychwanegodd 4, gan fod cyfrifiadur smart. 979 00:39:50,920 --> 00:39:55,275 Felly, mae'n mynd i ychwanegu mewn gwirionedd gan i amseroedd maint y math o y pwyntydd. 980 00:39:55,275 --> 00:39:56,340 981 00:39:56,340 --> 00:39:56,840 OK? 982 00:39:56,840 --> 00:39:58,030 983 00:39:58,030 --> 00:40:02,440 >> Felly, pe bai'n torgoch, er enghraifft, pe bai hwn yn y seren char, 984 00:40:02,440 --> 00:40:07,141 ac os ydym yn ychwanegu 1, yna byddai hyn yn fod yn 5, gan fod torgoch yw 1 beit hir. 985 00:40:07,141 --> 00:40:07,640 Da? 986 00:40:07,640 --> 00:40:10,560 987 00:40:10,560 --> 00:40:13,190 >> Ac yn olaf, rydym yn cael i pwyntyddion a araeau. 988 00:40:13,190 --> 00:40:16,451 Mae'n ymddangos bod bob tro eich bod yn delio gydag amrywiaeth, 989 00:40:16,451 --> 00:40:18,075 eich bod mewn gwirionedd yn delio â pwyntydd. 990 00:40:18,075 --> 00:40:19,720 991 00:40:19,720 --> 00:40:24,777 Y rheswm cysyniadol neis iawn ar gyfer hyn yw bod araeau yn fawr iawn. 992 00:40:24,777 --> 00:40:27,360 Felly cofiwch y dywedais fod bob tro y byddwch yn pasio pethau o gwmpas, 993 00:40:27,360 --> 00:40:29,097 ydych yn copďo popeth. 994 00:40:29,097 --> 00:40:31,180 Felly os oes gennych amrywiaeth mae hynny'n iawn, iawn mawr, 995 00:40:31,180 --> 00:40:32,990 nad ydych yn wir eisiau copïo popeth bob tro 996 00:40:32,990 --> 00:40:35,710 byddwch yn pasio o gwmpas i un arall swyddogaeth, oherwydd dyna yn unig 997 00:40:35,710 --> 00:40:37,190 symiau enfawr o waith. 998 00:40:37,190 --> 00:40:39,710 Felly, yr hyn yr ydych yn ei wneud yn y gorffennol yn unig cyfeiriad y beit cyntaf. 999 00:40:39,710 --> 00:40:40,969 1000 00:40:40,969 --> 00:40:44,010 Ac yna bydd y swyddogaeth yn cael mynediad i'r holl elfennau yn y casgliad. 1001 00:40:44,010 --> 00:40:48,670 Felly, rydych basio y casgliad gan ei gyfeiriad, felly mae'r cyfeiriad y beit cyntaf. 1002 00:40:48,670 --> 00:40:53,010 >> Felly os ydym yn datgan int array 3, yma, rydym yn gwybod 1003 00:40:53,010 --> 00:40:57,470 sut i gael gafael ar yr elfen gyntaf gan ddefnyddio'r nodiant braced. 1004 00:40:57,470 --> 00:41:02,410 Os ydych yn cofio'r braced nodiant, braced array 0 yn dychwelyd 1. 1005 00:41:02,410 --> 00:41:06,330 Wel, byddai hyn yn union yr un fath ag yn unig yn mynd yno ac yn rhoi 1. 1006 00:41:06,330 --> 00:41:07,370 1007 00:41:07,370 --> 00:41:09,110 OK, yn union yr un peth. 1008 00:41:09,110 --> 00:41:13,010 Felly y nodiant braced yn fan hyn Bydd yr un fath ag y llinell hon. 1009 00:41:13,010 --> 00:41:18,600 >> A dyfalu beth mae'r nodiant braced am amrywiaeth braced 1 fydd yn? 1010 00:41:18,600 --> 00:41:20,440 Bydd yn unig fod yr un peth â hyn. 1011 00:41:20,440 --> 00:41:22,500 Felly ychwanegu un at amrywiaeth. 1012 00:41:22,500 --> 00:41:24,370 Symud un hyd mewn cof. 1013 00:41:24,370 --> 00:41:26,310 Ewch yno, ac yn rhoi 2. 1014 00:41:26,310 --> 00:41:28,050 1015 00:41:28,050 --> 00:41:28,579 OK? 1016 00:41:28,579 --> 00:41:29,870 Ac mae hyn yn llinell yn yr un peth. 1017 00:41:29,870 --> 00:41:34,860 Rydym yn awyddus i fynd i'r trydydd bocs, felly array a 2. 1018 00:41:34,860 --> 00:41:37,465 Ewch yno, ac yn rhoi 3. 1019 00:41:37,465 --> 00:41:39,340 Felly mewn cof, yr hyn sy'n mynd i ddigwydd yw ein bod yn 1020 00:41:39,340 --> 00:41:44,400 mynd i gael 1, 2, a 3 fel y tair elfen amrywiaeth hwn. 1021 00:41:44,400 --> 00:41:46,970 >> Gallem fod wedi gwneud hyn drwy ddefnyddio ein nodiant braced cyfarwydd. 1022 00:41:46,970 --> 00:41:49,410 Fi jyst am i chi guys i wybod eu bod yn yr un peth. 1023 00:41:49,410 --> 00:41:50,530 1024 00:41:50,530 --> 00:41:53,010 OK, cwestiynau am hyn? 1025 00:41:53,010 --> 00:41:56,115 1026 00:41:56,115 --> 00:41:56,615 Nice. 1027 00:41:56,615 --> 00:41:57,990 1028 00:41:57,990 --> 00:41:59,880 Nawr, dw i'n mynd i law 'i ar at Hannah, 1029 00:41:59,880 --> 00:42:00,330 >> HANNAH: Yay, Yee-haw. 1030 00:42:00,330 --> 00:42:02,246 >> BINKY: Siarad am cof ac erthygl stwff. 1031 00:42:02,246 --> 00:42:06,554 [Cymeradwyaeth] 1032 00:42:06,554 --> 00:42:10,150 >> HANNAH: Hi, oer, felly rydym yn mynd i siarad ychydig yn fwy 1033 00:42:10,150 --> 00:42:13,090 am cof, yr ydym yn unig sylw gan ddefnyddio pwyntyddion. 1034 00:42:13,090 --> 00:42:16,060 Felly, mae dwy brif ran o cof ein bod yn ymwneud â. 1035 00:42:16,060 --> 00:42:18,830 Mae gennym y simnai, sy'n tyfu i fyny yn y gwaelod, a'r domen, a oedd yn 1036 00:42:18,830 --> 00:42:20,600 mynd i lawr o'r top. 1037 00:42:20,600 --> 00:42:24,690 Ac mae'r pentwr yn mynd i ddal pob un o'n enghraifft newidynnau. 1038 00:42:24,690 --> 00:42:28,860 Felly, pob un yn galw i swyddogaeth yn cael ei ffrâm bach ei hun ar y pentwr. 1039 00:42:28,860 --> 00:42:32,160 Felly, fel y crybwyllwyd yn gynharach Gabe, os ydym ffoniwch y swyddogaeth dro ar ôl tro, 1040 00:42:32,160 --> 00:42:34,180 rydym yn mynd i bentyrru pethau fyny ar y pentwr. 1041 00:42:34,180 --> 00:42:35,220 1042 00:42:35,220 --> 00:42:38,570 >> Ac yn yr un modd, y domen, sy'n dechrau ar y brig 1043 00:42:38,570 --> 00:42:42,660 yn mynd i ddal yr holl o'r cof ein bod yn ddynamig dyrannu. 1044 00:42:42,660 --> 00:42:45,110 Ac felly wrth i ni ddynamig dyrannu cof, 1045 00:42:45,110 --> 00:42:47,580 Bydd hyn yn dod i lawr tuag at y gwaelod. 1046 00:42:47,580 --> 00:42:51,340 Cwpl o bethau i fod yn ymwybodol o ba bryd rydym yn defnyddio'r stac a'r domen, 1047 00:42:51,340 --> 00:42:55,200 gyda'r stac, os oes gennym ormod many-- gadewch i say-- galwadau recursive, 1048 00:42:55,200 --> 00:42:58,392 ac rydym yn galw swyddogaeth eto, ac unwaith eto, ac unwaith eto, ac unwaith eto, 1049 00:42:58,392 --> 00:43:00,350 ac mae'n pentyrru i fyny, pentyrru i fyny, pentyrru i fyny. 1050 00:43:00,350 --> 00:43:01,570 Ac mae'n mynd i ddamwain i mewn i'r domen. 1051 00:43:01,570 --> 00:43:03,040 Rydym yn mynd i redeg allan o gof. 1052 00:43:03,040 --> 00:43:05,100 Sy'n mynd i achosi problem ar gyfer y cyfrifiadur. 1053 00:43:05,100 --> 00:43:06,770 Ac mae hynny'n cael ei alw y gorlif pentwr. 1054 00:43:06,770 --> 00:43:09,728 Felly dyna bendant yn rhywbeth yr ydych yn Dylai fod yn ymwybodol o, a cheisio osgoi. 1055 00:43:09,728 --> 00:43:10,228 1056 00:43:10,228 --> 00:43:14,050 Ac mae'r domen, rhaid i ni gofio i beidio â gollwng cof ddamweiniol. 1057 00:43:14,050 --> 00:43:17,950 Unrhyw bryd y byddwch yn defnyddio malloc, peidiwch â anghofio i ryddhau y cof. 1058 00:43:17,950 --> 00:43:20,040 Fel arall, mae'n annhymerus jyst fod ar y domen a wastraffwyd, 1059 00:43:20,040 --> 00:43:23,230 ac ni fydd y cyfrifiadur yn gwybod bod ei bod yn rhydd i ddefnyddio hwnnw cof. 1060 00:43:23,230 --> 00:43:25,810 Felly, y rhai yn gwpl o bethau i fod yn ofalus iawn gyda phryd 1061 00:43:25,810 --> 00:43:28,580 rydych yn delio â y pentwr a'r domen. 1062 00:43:28,580 --> 00:43:30,412 Unrhyw gwestiynau gyda hyn? 1063 00:43:30,412 --> 00:43:31,304 Awesome. 1064 00:43:31,304 --> 00:43:31,900 >> OK, oer. 1065 00:43:31,900 --> 00:43:32,940 1066 00:43:32,940 --> 00:43:36,810 Felly y math hwn o yr un syniad fel gorlif stac, lle 1067 00:43:36,810 --> 00:43:39,850 rydym yn mynd y tu hwnt i'r ffiniau'r hyn cof 1068 00:43:39,850 --> 00:43:41,960 yw ein bod yn fod i fod yn gallu defnyddio. 1069 00:43:41,960 --> 00:43:45,077 Felly, yn cymryd, er enghraifft, byffer, neu os ydych yn Gallai dim ond meddwl am y peth fel arae. 1070 00:43:45,077 --> 00:43:47,660 A dywedasom, OK, rydym yn mynd i greu'r casgliad bach neis. 1071 00:43:47,660 --> 00:43:49,140 Mae'n mynd i fod yn llinyn. 1072 00:43:49,140 --> 00:43:50,630 Neu mae'n mynd i storio cymeriadau. 1073 00:43:50,630 --> 00:43:51,720 A 'i' jyst yn mynd i ddweud helo. 1074 00:43:51,720 --> 00:43:52,678 Ac mae'n amhenodol. 1075 00:43:52,678 --> 00:43:53,990 Dyna ni. 1076 00:43:53,990 --> 00:43:58,240 >> Ond os wyf yn rhywun drwg ac yn awyddus i gwneud rhywbeth drwg gyda'r amrywiaeth hwn, beth 1077 00:43:58,240 --> 00:44:02,310 Gallwn i wneud yw ceisio ysgrifennu heibio diwedd y llinyn. 1078 00:44:02,310 --> 00:44:04,490 Ac fel y gwelwch, os Yr wyf yn ysgrifennu yn ddigon pell, 1079 00:44:04,490 --> 00:44:06,980 Rwy'n gallu effeithio mewn gwirionedd y cyfeiriad dychwelyd. 1080 00:44:06,980 --> 00:44:09,530 Ac os wyf yn dechrau effeithio ar y cyfeiriad dychwelyd, 1081 00:44:09,530 --> 00:44:11,730 Rwyf yn effeithio ar sut mae'r rhaglen mewn gwirionedd yn rhedeg. 1082 00:44:11,730 --> 00:44:15,900 Ac yn hytrach na dychwelyd, rydych gwybod, llinyn hapus fel helo, yr wyf yn 1083 00:44:15,900 --> 00:44:19,460 Gallai gwneud rhywbeth drwg, fel mynd at rhywle arall yn eich cyfrifiadur, yn dal i 1084 00:44:19,460 --> 00:44:22,146 cof, ei newid, beth bynnag rwyf am ei wneud. 1085 00:44:22,146 --> 00:44:25,020 Felly dyna beth y byddai hyn yn edrych fel yw os Fi jyst fath o llenwi i fyny 1086 00:44:25,020 --> 00:44:27,400 gyda gwerth garbage ar hap, yn yr achos hwn, dim ond. 1087 00:44:27,400 --> 00:44:30,490 Ac yna pan Fi 'n weithredol gyrraedd y cyfeiriad cof, 1088 00:44:30,490 --> 00:44:33,740 I Dechreuodd ei lenwi gyda rhywbeth bod yn gwneud yr hyn yr oeddwn am iddo ei wneud. 1089 00:44:33,740 --> 00:44:34,952 1090 00:44:34,952 --> 00:44:36,410 Unrhyw gwestiynau gyda gorlif byffer? 1091 00:44:36,410 --> 00:44:38,450 1092 00:44:38,450 --> 00:44:40,730 Awesome, dde hedfan trwy'r pethau hyn. 1093 00:44:40,730 --> 00:44:43,530 >> Iawn, felly rydym yn siarad llawer o am y pwyntydd gyda Gabe. 1094 00:44:43,530 --> 00:44:45,790 Sut ydym mewn gwirionedd yn cael pwyntydd? 1095 00:44:45,790 --> 00:44:48,070 Sut ydym yn cael cyfeiriad yn y cof? 1096 00:44:48,070 --> 00:44:51,040 Wel, gallwn ddefnyddio glws hwn malloc alwad swyddogaeth, sef 1097 00:44:51,040 --> 00:44:53,370 yn mynd i gael ychydig o ddarn o gof, 1098 00:44:53,370 --> 00:44:55,480 yn benodol yn y domen, fel y trafodwyd, 1099 00:44:55,480 --> 00:44:59,780 ac mae'n mynd i roi yn ôl i chi pwyntydd at y cyfeiriad hwnnw mewn cof. 1100 00:44:59,780 --> 00:45:01,950 A'r ddadl yr ydym rhaid i roi i malloc 1101 00:45:01,950 --> 00:45:04,280 yw faint o le mewn cof yr ydym ei eisiau. 1102 00:45:04,280 --> 00:45:06,100 >> Fel y gallwch weld faint yn beit. 1103 00:45:06,100 --> 00:45:08,670 Gadewch i ni ddweud, er enghraifft, neu mewn gwirionedd, yn yr enghraifft hon, 1104 00:45:08,670 --> 00:45:12,040 ydym yn dyrannu digon lle ar gyfer 10 o gyfanrifau. 1105 00:45:12,040 --> 00:45:15,640 Felly, yn ôl pob tebyg yr hyn rydym yn mynd i eisiau i roi yma yw amrywiaeth o 10 o gyfanrifau. 1106 00:45:15,640 --> 00:45:19,641 Felly rydym yn rhoi maint y ints, a oedd rydym ddysgwyd oedd faint o bytes? 1107 00:45:19,641 --> 00:45:20,140 MYFYRIWR: 4. 1108 00:45:20,140 --> 00:45:22,920 HANNAH: 4, hardd, ac yr ydym yn am 10 o'r rheiny mewn rhes, 1109 00:45:22,920 --> 00:45:28,050 fel y bydd gennym ddigon o le i storio pob 10 gyfanrifau, yn yr achos hwn. 1110 00:45:28,050 --> 00:45:31,290 Rhywbeth super bwysig, unrhyw tro y byddwch yn galw malloc, 1111 00:45:31,290 --> 00:45:32,880 mae'n rhaid i chi i wirio am null. 1112 00:45:32,880 --> 00:45:37,310 Os nad ydych yn gwirio am null, yn dda, malloc os bydd yn rhedeg allan o le 1113 00:45:37,310 --> 00:45:40,400 a all mwyach roi i chi unrhyw mwy o gof, bydd yn dychwelyd null. 1114 00:45:40,400 --> 00:45:42,060 1115 00:45:42,060 --> 00:45:45,630 Felly os nad ydych yn gwirio, Gall malloc yn dychwelyd null. 1116 00:45:45,630 --> 00:45:51,265 Ac yna, os ydym yn ceisio dereference pwyntydd null, 1117 00:45:51,265 --> 00:45:54,960 rydym yn mynd i gael nam segmentu, y byddwn yn siarad am ar hyn o bryd. 1118 00:45:54,960 --> 00:45:56,150 1119 00:45:56,150 --> 00:45:56,650 Awesome. 1120 00:45:56,650 --> 00:45:58,300 >> OK, cwestiynau gyda malloc? 1121 00:45:58,300 --> 00:46:00,044 1122 00:46:00,044 --> 00:46:00,544 Ie? 1123 00:46:00,544 --> 00:46:05,460 >> MYFYRIWR: A yw gwirio nwl Nid yw [Anghlywadwy] yn gwneud hynny ar y cwis? 1124 00:46:05,460 --> 00:46:08,100 >> HANNAH: Cadarn, y cwestiwn oedd mae'n ei matter-- ar y cwis, 1125 00:46:08,100 --> 00:46:10,420 byddwch yn cael pwyntiau i ffwrdd os nad ydych yn edrych am null? 1126 00:46:10,420 --> 00:46:12,794 Ydw, byddwch yn cael pwyntiau off os nad ydych yn gwirio am null. 1127 00:46:12,794 --> 00:46:16,030 Unrhyw tro y byddwch yn galw malloc, y ddau ar y cwis a'ch psets ac mewn bywyd go iawn, 1128 00:46:16,030 --> 00:46:17,155 mae'n rhaid i chi i wirio am null. 1129 00:46:17,155 --> 00:46:18,330 Cwestiwn da. 1130 00:46:18,330 --> 00:46:19,689 >> Gabe: Beth os nad wyf yn rhad ac am ddim? 1131 00:46:19,689 --> 00:46:21,730 HANNAH: Gabe eisiau gwybod beth os nad ydym yn ei wneud am ddim. 1132 00:46:21,730 --> 00:46:25,030 Yna bydd gennym gollwng cof yn ein tomen. 1133 00:46:25,030 --> 00:46:26,140 Unrhyw gwestiynau eraill? 1134 00:46:26,140 --> 00:46:27,550 Ie? 1135 00:46:27,550 --> 00:46:30,120 >> MYFYRIWR: All you-- mynd dros gorlif byffer real cyflym eto? 1136 00:46:30,120 --> 00:46:30,530 >> HANNAH: Cadarn. 1137 00:46:30,530 --> 00:46:33,071 Y cwestiwn oedd gallwn fynd drosodd gorlif byffer wirioneddol gyflym. 1138 00:46:33,071 --> 00:46:35,050 Gadewch i ni fynd yn ôl at sleidiau hynny. 1139 00:46:35,050 --> 00:46:37,430 Felly byffer, gallwch jyst meddwl amdano fel amrywiaeth, dde? 1140 00:46:37,430 --> 00:46:39,360 Mae gennych ychydig o le yn y cof. 1141 00:46:39,360 --> 00:46:43,580 A phan fyddwn yn gyntaf yn creu ein array, gwyddom araeau wedi sefydlog maint, 1142 00:46:43,580 --> 00:46:45,470 neu ein byffer Mae maint sefydlog. 1143 00:46:45,470 --> 00:46:51,360 >> Felly, gadewch i ni ddweud yn yr achos hwn, rydym wedi dim ond digon o le i ysgrifennu y llinyn helo. 1144 00:46:51,360 --> 00:46:57,340 Os ydym yn mynd heibio y rhwymo, os ydym yn mynd heibio yr hyn y mae ein amrywiaeth y dywedwyd y gallai ddal, 1145 00:46:57,340 --> 00:46:59,780 gallem mewn gwirionedd yn dechrau ysgrifennu i mewn i gof 1146 00:46:59,780 --> 00:47:01,780 nad yw'r cyfrifiadur yn ei wneud am i ni ysgrifennu i mewn. 1147 00:47:01,780 --> 00:47:02,810 1148 00:47:02,810 --> 00:47:05,580 Ac yn benodol, os byddwn yn taro rhywbeth fel y ffurflen 1149 00:47:05,580 --> 00:47:08,700 mynd i'r afael o'r swyddogaeth, sef, fel unrhyw ddarn arall o gof, 1150 00:47:08,700 --> 00:47:11,420 yn unig yw rhywle yn eich cyfrifiadur, gallwch mewn gwirionedd 1151 00:47:11,420 --> 00:47:14,080 newid hynny ac yn dechrau i wneud pethau drwg. 1152 00:47:14,080 --> 00:47:15,272 Ateb eich cwestiwn? 1153 00:47:15,272 --> 00:47:16,230 Awesome, unrhyw beth arall? 1154 00:47:16,230 --> 00:47:17,466 Ie? 1155 00:47:17,466 --> 00:47:21,948 >> MYFYRIWR: Felly pentwr [Anghlywadwy], rydych dywedodd mynd o'r gwaelod yn mynd i fyny. 1156 00:47:21,948 --> 00:47:25,434 O fewn ystod stac, yn gwneud mae'r cof yn mynd o, fel, 1157 00:47:25,434 --> 00:47:27,230 brig i lawr sy'n ymwneud â phob egwyl? 1158 00:47:27,230 --> 00:47:28,646 1159 00:47:28,646 --> 00:47:32,100 >> HANNAH: Sut mae you-- ildio i Rob ar yr un yma. 1160 00:47:32,100 --> 00:47:35,370 1161 00:47:35,370 --> 00:47:38,213 >> ROB: Bydd yn tyfu yn yr un cyfarwyddyd wrth i'r pentwr dyfu. 1162 00:47:38,213 --> 00:47:38,712 HANNAH: OK. 1163 00:47:38,712 --> 00:47:40,967 ROB: Felly, yr wyf yn drysu. 1164 00:47:40,967 --> 00:47:42,331 Mae hyn yn mynd i fod yn tynnu. 1165 00:47:42,331 --> 00:47:42,831 HANNAH: OK. 1166 00:47:42,831 --> 00:47:44,000 ROB: Mae hyn yn gywir. 1167 00:47:44,000 --> 00:47:49,420 Felly os yw'r pentwr yn tyfu i fyny, ac yna generally-- ei 1168 00:47:49,420 --> 00:47:52,380 nid oes raid iddo fod fel hyn. ond gallwch ddatgan int x. 1169 00:47:52,380 --> 00:47:54,120 Yna byddwch yn datgan int y. 1170 00:47:54,120 --> 00:47:57,300 Yna, ar y cyfan, bydd int x yn is ar y pentwr nag int y. 1171 00:47:57,300 --> 00:47:59,300 Ond dim ond yn ffaith. 1172 00:47:59,300 --> 00:48:02,410 Dyw hynny ddim yn hoffi rhywbeth hadau pwysig. 1173 00:48:02,410 --> 00:48:06,800 >> ROB: Felly, y cwestiwn unwaith eto yn unig oedd beth sy'n digwydd i bob ffrâm yn adeiladu i fyny. 1174 00:48:06,800 --> 00:48:08,960 Felly mae pob swyddogaeth yn cael ychydig o ddarn o'r pentwr. 1175 00:48:08,960 --> 00:48:13,030 Ac wrth i chi fynd i fyny, o fewn hynny Ychydig darn, o fewn y ffrâm, 1176 00:48:13,030 --> 00:48:16,710 byddwn yn dweud bod newidynnau o fewn y ffrâm hefyd yn symud i fyny. 1177 00:48:16,710 --> 00:48:17,473 Cwestiwn? 1178 00:48:17,473 --> 00:48:18,688 >> ROB: Dim ond i fod ar y meic. 1179 00:48:18,688 --> 00:48:19,396 HANNAH: Oh, yeah. 1180 00:48:19,396 --> 00:48:20,440 ROB: 'n annhymerus' yn siarad i mewn i chi. 1181 00:48:20,440 --> 00:48:21,410 HANNAH: O, ie, OK. 1182 00:48:21,410 --> 00:48:24,150 ROB: Yr eithriad yw ar gyfer araeau a structs, 1183 00:48:24,150 --> 00:48:27,470 lle mae araeau, mae is mynegai yn yr amrywiaeth, 1184 00:48:27,470 --> 00:48:29,930 ac mewn structs yn uwch cae yn y structs 1185 00:48:29,930 --> 00:48:35,040 yn sicr o fod mewn cyfeiriadau is na gwerth ddiweddarach yn y rhesi. 1186 00:48:35,040 --> 00:48:36,720 Felly, y rhai yn cael eu gwarantu. 1187 00:48:36,720 --> 00:48:40,310 Ond unrhyw newidynnau penodol o fewn, fel int x ac int y mewn swyddogaeth, 1188 00:48:40,310 --> 00:48:43,030 does dim perthynas angenrheidiol rhwng eu cyfeiriadau. 1189 00:48:43,030 --> 00:48:44,882 1190 00:48:44,882 --> 00:48:46,340 HANNAH: Cwestiwn arall dros yma? 1191 00:48:46,340 --> 00:48:51,620 MYFYRIWR: Felly, yn byffer llif, ond yn gorlifo byffer 1192 00:48:51,620 --> 00:48:54,980 dim ond ddigwyddodd pan fyddwch wedi, fel, neilltuo 1193 00:48:54,980 --> 00:49:01,056 swm o amrywiaeth hynny wedyn yn fwy? 1194 00:49:01,056 --> 00:49:03,230 Fel, gallwch chi? 1195 00:49:03,230 --> 00:49:05,435 Felly, os ydych yn gofyn am rhywbeth o'r user-- 1196 00:49:05,435 --> 00:49:06,018 >> HANNAH: Mm-EM. 1197 00:49:06,018 --> 00:49:08,600 MYFYRIWR: Can maent rymus rhoi rhywbeth yn ôl i chi 1198 00:49:08,600 --> 00:49:11,777 mae hynny'n fwy na beth bynnag ydych wedi ei ddyrannu ar eu cyfer? 1199 00:49:11,777 --> 00:49:13,610 HANNAH: Cadarn, felly mae'r Roedd y cwestiwn yn y bôn, 1200 00:49:13,610 --> 00:49:16,217 gall y defnyddiwr roi i chi mwy nag y byddwch yn gofyn amdano? 1201 00:49:16,217 --> 00:49:16,800 MYFYRIWR: Yeah. 1202 00:49:16,800 --> 00:49:18,480 HANNAH: Wel, gallech atal y defnyddiwr rhag gwneud hynny. 1203 00:49:18,480 --> 00:49:21,350 Fe allech chi ddweud yn benodol peidiwch â rhoi mwy i mi nag x rhif gan bytes 1204 00:49:21,350 --> 00:49:24,330 Rwyf yn unig wedi rhoi lle i x rhif chi o bytes, x nifer o gymeriadau. 1205 00:49:24,330 --> 00:49:25,700 Felly, mae hynny'n rhywbeth yr ydych am ei atal. 1206 00:49:25,700 --> 00:49:26,199 Ie? 1207 00:49:26,199 --> 00:49:30,270 Beth yw'r gwahaniaeth rhwng stacio gorlifo ac yn gorlifo byffer? 1208 00:49:30,270 --> 00:49:32,140 >> HANNAH: Iawn, felly mae'r pentwr overflow-- oh, beth 1209 00:49:32,140 --> 00:49:34,790 yw'r gwahaniaeth rhwng stac gorlif a gorlif byffer? 1210 00:49:34,790 --> 00:49:37,581 Felly, rydym yn awyddus i feddwl am gorlif pentwr yn digwydd pan fyddwn ni'n mewn gwirionedd 1211 00:49:37,581 --> 00:49:39,530 pentyrru galwadau swyddogaeth hyn. 1212 00:49:39,530 --> 00:49:42,991 Gadewch i ni ddweud eich bod yn cael swyddogaeth recursive, oherwydd ein bod yn gwybod bod bob tro y byddwch yn 1213 00:49:42,991 --> 00:49:45,240 yn galw swyddogaeth, mae'n mynd ei ffrâm ei hun ar y pentwr. 1214 00:49:45,240 --> 00:49:47,950 >> Felly, rydym yn dal dŵr yn rhy uchel, ac Yna, rydym yn dechrau i orlifo. 1215 00:49:47,950 --> 00:49:50,530 Ac rydym yn defnyddio gormod o gof, A nid ydym yn wedi gadael unrhyw le. 1216 00:49:50,530 --> 00:49:51,590 Rydym yn cael y gwall. 1217 00:49:51,590 --> 00:49:53,930 >> Byffer gorlif o fewn rhaglen. 1218 00:49:53,930 --> 00:49:57,180 Rydym am Efallai na fydd o reidrwydd rhedeg allan o gof yn yr un ffordd 1219 00:49:57,180 --> 00:50:00,080 y gallem os ydym yn pentyrru i fyny cymaint o alwadau swyddogaeth, 1220 00:50:00,080 --> 00:50:04,540 ond byddwn yn ysgrifennu heibio'r cof ein bod yn gwybod y gallwn ni eu defnyddio. 1221 00:50:04,540 --> 00:50:06,170 Ac mae hynny'n ein galluogi i wneud pethau drwg. 1222 00:50:06,170 --> 00:50:08,060 1223 00:50:08,060 --> 00:50:08,560 Yeah? 1224 00:50:08,560 --> 00:50:10,950 >> ROB: Ie, efallai y byddwch am i ddim ond ailadrodd hyn, 1225 00:50:10,950 --> 00:50:12,699 ond gallwch hefyd feddwl o gorlif pentwr 1226 00:50:12,699 --> 00:50:15,374 fel debyg i fath penodol o gorlif byffer. 1227 00:50:15,374 --> 00:50:17,665 Neu os ydych yn meddwl am eich stac fel clustog mawr iawn. 1228 00:50:17,665 --> 00:50:20,724 Yna pan fyddwch yn gorlifo chi'n dal dŵr, mae'n fath o fel gorlif byffer. 1229 00:50:20,724 --> 00:50:23,390 Ond gorlif pentwr yn unig yw Defnyddir term penodol pan fydd y pentwr 1230 00:50:23,390 --> 00:50:24,310 ei hun yn gorlifo. 1231 00:50:24,310 --> 00:50:27,500 >> HANNAH: Iawn, felly i ailadrodd am y fideo, 1232 00:50:27,500 --> 00:50:31,756 mae'n gallwch chi feddwl am gorlif stac fel math penodol o gorlif byffer. 1233 00:50:31,756 --> 00:50:33,040 Cool? 1234 00:50:33,040 --> 00:50:34,562 Unrhyw mwy o gwestiynau cyn i ni fynd ymlaen? 1235 00:50:34,562 --> 00:50:35,380 1236 00:50:35,380 --> 00:50:35,880 Awesome. 1237 00:50:35,880 --> 00:50:37,130 1238 00:50:37,130 --> 00:50:39,727 >> OK, oer, felly gadewch i ni siarad am mae rhai negeseuon gwall cyffredin. 1239 00:50:39,727 --> 00:50:42,060 Mae hyn yn rhywbeth sydd wedi dangos i fyny ar cwisiau lluosog, 1240 00:50:42,060 --> 00:50:44,740 fel rhywbeth sy'n werth cymryd ail olwg ar. 1241 00:50:44,740 --> 00:50:46,860 Rwy'n siŵr eich bod wedi dod ar eu traws o leiaf rhai o'r rhain 1242 00:50:46,860 --> 00:50:48,690 fel eich bod yn gwneud eich problem yn gosod. 1243 00:50:48,690 --> 00:50:50,980 Felly gwnewch yn siŵr y gallwch siarad amdanynt ar y cwis. 1244 00:50:50,980 --> 00:50:52,990 >> Felly, mae'r un cyntaf yn nam segmentu. 1245 00:50:52,990 --> 00:50:55,250 A dyna unrhyw bryd yr ydym yn ceisiwch gael mynediad cof 1246 00:50:55,250 --> 00:50:57,130 nad ydym yn cael mynediad. 1247 00:50:57,130 --> 00:51:00,280 Felly migh eich bod wedi gweld hyn, er enghraifft, yn y breakout. 1248 00:51:00,280 --> 00:51:03,390 Os canfod gwrthdrawiad dychwelyd null, ac yna rydych 1249 00:51:03,390 --> 00:51:05,500 ceisio gwneud rhywbeth gyda gwerth null, 1250 00:51:05,500 --> 00:51:08,147 Byddai y cyfrifiadur yn rhoi nam segmentu chi. 1251 00:51:08,147 --> 00:51:10,730 Felly un, yn beth pwysig i wneud er mwyn ceisio osgoi hyn 1252 00:51:10,730 --> 00:51:12,000 yw bob amser yn gwirio am null. 1253 00:51:12,000 --> 00:51:13,300 1254 00:51:13,300 --> 00:51:16,180 >> Efallai y byddwch hefyd wedi gweld datganiad ymhlyg o swyddogaeth. 1255 00:51:16,180 --> 00:51:18,370 Felly, mae hyn yn beth sy'n digwydd pan ddangosodd Allison chi 1256 00:51:18,370 --> 00:51:20,150 sut rydym yn gwneud prototeip, dde? 1257 00:51:20,150 --> 00:51:23,440 Felly, gadewch i ni ddweud mae gennym rai swyddogaeth yr ydym yn diffinio. 1258 00:51:23,440 --> 00:51:24,440 Lets 'ddeud ciwb. 1259 00:51:24,440 --> 00:51:27,120 Ac sy'n mynd ar y gwaelod o'n swyddogaeth, o dan brif. 1260 00:51:27,120 --> 00:51:35,205 >> Os ydym yn anghofio i ddweud wrth y cyfrifiadur am ciwb, pan brif ceisio alw ciwb, 1261 00:51:35,205 --> 00:51:36,830 Bydd y cyfrifiadur yn cael, fel, oh fy diar. 1262 00:51:36,830 --> 00:51:38,300 Does gen i ddim syniad beth mae hynny'n ei olygu. 1263 00:51:38,300 --> 00:51:39,760 Nid wyf yn gwybod beth i'w wneud, yma. 1264 00:51:39,760 --> 00:51:41,594 Felly mae'r prototeip yn dweud peidiwch â phoeni. 1265 00:51:41,594 --> 00:51:42,510 Rydw i'n mynd i ddweud wrthych. 1266 00:51:42,510 --> 00:51:43,132 >> Bydd yn dod. 1267 00:51:43,132 --> 00:51:43,840 Peidiwch â gweiddi arna i. 1268 00:51:43,840 --> 00:51:46,697 Peidiwch â rhoi i mi yn ymhlyg datganiad o swyddogaeth. 1269 00:51:46,697 --> 00:51:49,280 Felly, os ydych yn cael y gwall hwn, un beth rydych chi'n mynd i eisiau ei wneud 1270 00:51:49,280 --> 00:51:50,821 yw sicrhau bod gennych eich prototeip. 1271 00:51:50,821 --> 00:51:52,320 1272 00:51:52,320 --> 00:51:53,230 OK? 1273 00:51:53,230 --> 00:51:55,680 >> Ac yn olaf ond nid yn lleiaf, dynodwr heb ei ddatgan 1274 00:51:55,680 --> 00:52:00,570 yn ei hanfod pan fyddwch yn ceisio defnyddio newidyn nad ydych wedi datgan. 1275 00:52:00,570 --> 00:52:03,449 Felly yn sydyn i chi ddechrau gan ddweud fel n plws a mwy. 1276 00:52:03,449 --> 00:52:04,740 A'r cyfrifiadur yn dweud beth sy'n n? 1277 00:52:04,740 --> 00:52:06,660 Dydych chi byth yn dweud wrthyf n yn beth. 1278 00:52:06,660 --> 00:52:10,930 >> Felly mae un peth yn rhaid i chi wneud yn siŵr eich bod gwnaeth yn dweud wrth y cyfrifiadur pa n yw. 1279 00:52:10,930 --> 00:52:13,320 Felly, er enghraifft, gallai fod n yn gyfanrif. 1280 00:52:13,320 --> 00:52:14,999 Ac yna byddwch yn osgoi y gwall hwn. 1281 00:52:14,999 --> 00:52:16,290 Unrhyw gwestiynau am wallau cyffredin? 1282 00:52:16,290 --> 00:52:17,260 Ie? 1283 00:52:17,260 --> 00:52:19,344 >> MYFYRIWR: Ar gyfer y ddealledig datganiad o swyddogaeth, 1284 00:52:19,344 --> 00:52:22,343 gallai hefyd fod yn eich bod yn hepgor un o'r llyfrgelloedd yr ydych bod i fod 1285 00:52:22,343 --> 00:52:24,400 i gynnwys, yn hytrach na'r prototeip? 1286 00:52:24,400 --> 00:52:26,359 >> HANNAH: Iawn, felly mae'r cwestiwn oedd, allech chi 1287 00:52:26,359 --> 00:52:28,650 hefyd yn cael y gwall hwn os ydych yn anghofio cynnwys llyfrgell. 1288 00:52:28,650 --> 00:52:29,085 >> MYFYRIWR: Ydw. 1289 00:52:29,085 --> 00:52:30,876 >> HANNAH: Yn hollol, oherwydd yn yr un ffordd 1290 00:52:30,876 --> 00:52:33,540 ein bod am roi ein prototeipiau cyn y prif swyddogaeth, 1291 00:52:33,540 --> 00:52:37,717 os oes gennym lyfrgell, y rhai yn mynd i yn y bôn yn cynnwys y prototeipiau, 1292 00:52:37,717 --> 00:52:39,425 yn cynnwys y diffiniadau o'r swyddogaethau. 1293 00:52:39,425 --> 00:52:40,585 Cwestiwn mawr. 1294 00:52:40,585 --> 00:52:43,230 >> MYFYRIWR: Ar gyfer segmentu fai, a fyddai hefyd yn 1295 00:52:43,230 --> 00:52:47,350 yn digwydd os ydym, fel, ceisiodd i gael mynediad i newidyn, 1296 00:52:47,350 --> 00:52:51,947 fel, mewn gwahanol [Anghlywadwy] nag iddo gael ei ddatgan yn? 1297 00:52:51,947 --> 00:52:54,030 HANNAH: Cadarn, felly byddem cael nam segmentu 1298 00:52:54,030 --> 00:52:56,270 os ydym yn ceisio cael mynediad i amrywiol allan o gwmpas? 1299 00:52:56,270 --> 00:52:57,104 A oedd y cwestiwn? 1300 00:52:57,104 --> 00:52:57,645 MYFYRIWR: Ydw. 1301 00:52:57,645 --> 00:52:58,430 HANNAH: Beautiful. 1302 00:52:58,430 --> 00:53:01,840 Felly, yn ôl pob tebyg, rydych yn mynd i gael Gwall dynodwr heb ei ddatgan yn lle hynny. 1303 00:53:01,840 --> 00:53:04,006 Felly, 'i' jyst yn mynd i ddweud Nid wyf yn gwybod beth yw hynny. 1304 00:53:04,006 --> 00:53:04,920 1305 00:53:04,920 --> 00:53:05,920 Cool, unrhyw beth arall? 1306 00:53:05,920 --> 00:53:07,744 1307 00:53:07,744 --> 00:53:08,980 Yeah, OK, hardd. 1308 00:53:08,980 --> 00:53:10,330 1309 00:53:10,330 --> 00:53:12,400 >> Pob righty, felly recursion. 1310 00:53:12,400 --> 00:53:15,160 Felly yr wyf yn crybwyll cwpl o weithiau y gallem gael gorlif pentwr 1311 00:53:15,160 --> 00:53:17,919 oherwydd ein bod yn ffonio ein swyddogaeth recursive gymaint o weithiau. 1312 00:53:17,919 --> 00:53:20,210 Rydym yn cael yr holl stac hyn fframiau, blah, blah, blah. 1313 00:53:20,210 --> 00:53:22,420 Yr hyn hyd yn oed yn swyddogaeth ailadroddus? 1314 00:53:22,420 --> 00:53:25,680 Wel, mae swyddogaeth recursive yn unrhyw swyddogaeth sy'n galw ei hun. 1315 00:53:25,680 --> 00:53:26,820 1316 00:53:26,820 --> 00:53:30,160 >> Rhai pethau i fod yn ymwybodol ohonynt wrth i chi yn gweithredu swyddogaeth recursive, 1317 00:53:30,160 --> 00:53:31,940 peidiwch ag anghofio cynnwys achos sylfaenol. 1318 00:53:31,940 --> 00:53:34,010 Mae achos sylfaenol yw'r pwynt lle rydym yn y pen. 1319 00:53:34,010 --> 00:53:38,740 Felly, er enghraifft, os ydym yn codio, , Yn dweud, Fibonacci recursively, 1320 00:53:38,740 --> 00:53:43,210 rydym am wneud yn siŵr bod pan fyddwn yn mynd at y 0 neu'r rhif Fibonacci cyntaf, 1321 00:53:43,210 --> 00:53:46,220 y rhai ddau rif yn cael yr achosion hyn, oherwydd nid yw pobl yn ddibynnol 1322 00:53:46,220 --> 00:53:47,700 ar bethau a ddaeth o'r blaen. 1323 00:53:47,700 --> 00:53:48,990 Mae'r rhai yn cael eu gwerthoedd eu hunain. 1324 00:53:48,990 --> 00:53:51,270 1325 00:53:51,270 --> 00:53:55,320 >> Mae rhai manteision i recursion, sef cwestiwn rydym wedi gweld ar y cwisiau yn y gorffennol. 1326 00:53:55,320 --> 00:53:57,930 Maent yn gallu arwain at fwy o cryno cod, cain. 1327 00:53:57,930 --> 00:54:00,510 Ac mae llawer o swyddogaethau, a llawer o wahanol algorithmau, 1328 00:54:00,510 --> 00:54:02,350 mewn gwirionedd yn addas ar recursion. 1329 00:54:02,350 --> 00:54:05,510 Efallai eu diffiniad yn recursive mewn ac o ei hun. 1330 00:54:05,510 --> 00:54:06,980 Felly Fibonacci yn un. 1331 00:54:06,980 --> 00:54:07,860 Ffactoraidd yn un. 1332 00:54:07,860 --> 00:54:10,480 Cyfuno fath yw one-- gyd pethau y gallwch edrych ar. 1333 00:54:10,480 --> 00:54:12,650 1334 00:54:12,650 --> 00:54:13,460 OK, unrhyw gwestiynau? 1335 00:54:13,460 --> 00:54:13,960 Ie? 1336 00:54:13,960 --> 00:54:15,644 1337 00:54:15,644 --> 00:54:19,612 >> MYFYRIWR: A yw achos cornel debyg i achos sylfaenol? 1338 00:54:19,612 --> 00:54:22,590 Neu a yw hynny ar gyfer rhai eraill fath o [Anghlywadwy]? 1339 00:54:22,590 --> 00:54:25,170 >> HANNAH: Cadarn, felly mae achos gornel yn any-- felly 1340 00:54:25,170 --> 00:54:27,580 yn achos cornel yr un fath ag achos sylfaenol? 1341 00:54:27,580 --> 00:54:32,825 Mae achos cornel yw unrhyw beth sydd yn eich Gallai cod yn ymddwyn ychydig yn wahanol. 1342 00:54:32,825 --> 00:54:34,450 1343 00:54:34,450 --> 00:54:38,610 Achos sylfaenol yn fath o gysylltiedig, yn eu bod yn hoffi achosion penodol 1344 00:54:38,610 --> 00:54:40,240 eich bod am edrych arno. 1345 00:54:40,240 --> 00:54:43,240 Ond mae'r syniad o achos sylfaenol yw bod ydych am i'ch swyddogaeth recursive 1346 00:54:43,240 --> 00:54:44,870 i roi'r gorau ar ryw adeg. 1347 00:54:44,870 --> 00:54:46,490 Ni ellir ei gadw galw ei hun am byth. 1348 00:54:46,490 --> 00:54:47,781 Mae angen iddo stopio ar ryw adeg. 1349 00:54:47,781 --> 00:54:49,340 1350 00:54:49,340 --> 00:54:53,460 >> ROB: Ie, yn aml, eich achosion sylfaenol Gallai fod yn enghreifftiau o ganolfannau cornel. 1351 00:54:53,460 --> 00:54:55,876 >> HANNAH: Iawn, oer, unrhyw beth? 1352 00:54:55,876 --> 00:54:58,732 >> MYFYRIWR: Allech chi esbonio seilio'r ychydig yn fwy? 1353 00:54:58,732 --> 00:55:01,600 Nid wyf yn deall yn hollol [Anghlywadwy] achosion sylfaenol. 1354 00:55:01,600 --> 00:55:02,676 >> HANNAH: O'r achosion sylfaenol? 1355 00:55:02,676 --> 00:55:03,140 >> MYFYRIWR: achosion Base, yeah. 1356 00:55:03,140 --> 00:55:03,770 >> HANNAH: O ie, yn sicr. 1357 00:55:03,770 --> 00:55:04,270 Gadewch i ni weld. 1358 00:55:04,270 --> 00:55:05,480 A ydym wedi sialc dros yma? 1359 00:55:05,480 --> 00:55:06,690 1360 00:55:06,690 --> 00:55:07,320 Ie, rydym yn ei wneud. 1361 00:55:07,320 --> 00:55:09,530 OK, felly 'n sylweddol yn gyflym,' n annhymerus ' ceisiwch ysgrifennu'n ddigon mawr 1362 00:55:09,530 --> 00:55:11,320 fel y gallwch weld ar y sgrin. 1363 00:55:11,320 --> 00:55:13,490 Gadewch i ni siarad am, mewn gwirionedd yn gyflym, Fibonacci. 1364 00:55:13,490 --> 00:55:15,550 Felly, byddaf yn rhoi dilyniant Fibonacci chi. 1365 00:55:15,550 --> 00:55:17,090 Gallwch edrych ar y diffiniad. 1366 00:55:17,090 --> 00:55:26,050 >> Yn y bôn, mae pob rhif yn y dilyniant yw cyfanswm y ddau rif blaenorol. 1367 00:55:26,050 --> 00:55:29,720 Iawn, felly mae'r modd yr wyf jyst Disgrifiodd Fibonacci, 1368 00:55:29,720 --> 00:55:31,530 gallech glywed y recursion, dde? 1369 00:55:31,530 --> 00:55:35,280 Pan ddywedais mae pob rhif yn y Swm y ddau rif blaenorol, 1370 00:55:35,280 --> 00:55:36,420 gallem ddweud OK. 1371 00:55:36,420 --> 00:55:38,570 Wel, mae'r Fibonacci nfed number-- felly gadewch i ni 1372 00:55:38,570 --> 00:55:42,260 dweud gennym swyddogaeth hon Gelwir FIB fib-- o n 1373 00:55:42,260 --> 00:55:48,260 yn mynd i fod yn hafal i FIB o n minws 1 plus-- ddrwg gennym, 1374 00:55:48,260 --> 00:55:51,240 byddwn yn mynd ymlaen i'r llinell nesaf dros FIB Yma-- o n minws 2. 1375 00:55:51,240 --> 00:55:52,790 1376 00:55:52,790 --> 00:55:56,790 >> Iawn, felly mae hyn yn gweithio iawn os ydych yn gan edrych ar, er enghraifft, y sero, un, 1377 00:55:56,790 --> 00:55:59,410 dau, tri, pedwar, pumed rhif Fibonacci, 1378 00:55:59,410 --> 00:56:03,561 lle y gallwch ddweud bod 5 yn hafal i 2 a 3. 1379 00:56:03,561 --> 00:56:05,060 Ond beth os ydych chi ar y dechrau? 1380 00:56:05,060 --> 00:56:07,184 Beth os ydych ond yn taro y ddau werth gyntaf? 1381 00:56:07,184 --> 00:56:08,470 1382 00:56:08,470 --> 00:56:11,330 >> I gael hyn 1, ni allwch dweud ychwanegwch y ddau blaenorol, 1383 00:56:11,330 --> 00:56:13,930 oherwydd nad sero ac-- nad wyf yn gwybod. 1384 00:56:13,930 --> 00:56:15,390 Felly, ar ryw adeg, mae angen i ni roi'r gorau. 1385 00:56:15,390 --> 00:56:21,250 Ar ryw bwynt, mae angen i ni ddweud bod y rhain dau yn unig yn cael eu diffiniadau eu hunain. 1386 00:56:21,250 --> 00:56:23,890 Y rhif 0 Fibonacci yw 0. 1387 00:56:23,890 --> 00:56:26,115 Ac mae'r rhif Fibonacci cyntaf yw 1. 1388 00:56:26,115 --> 00:56:34,120 >> Felly, y ffordd efallai y byddwn cod hyn, yr wyf yn Byddai dweud os n yn llai na dau, 1389 00:56:34,120 --> 00:56:35,130 yna dim ond yn dychwelyd n. 1390 00:56:35,130 --> 00:56:36,494 A byddai hynny'n fy achos sail. 1391 00:56:36,494 --> 00:56:38,660 Dyna sut yr wyf yn gwybod i roi'r gorau gyda swyddogaeth ailadroddus. 1392 00:56:38,660 --> 00:56:40,640 1393 00:56:40,640 --> 00:56:41,410 A yw hynny'n glir? 1394 00:56:41,410 --> 00:56:41,940 Awesome. 1395 00:56:41,940 --> 00:56:43,260 Unrhyw beth arall ar recursion? 1396 00:56:43,260 --> 00:56:44,890 1397 00:56:44,890 --> 00:56:45,930 Beautiful. 1398 00:56:45,930 --> 00:56:48,750 >> Gadewch i ni yn gyflym siarad am chwilio ac amseroedd rhedeg didoli. 1399 00:56:48,750 --> 00:56:52,660 Ac yna mi a roddaf Davin rhyw amser i siarad am codio enghreifftiau. 1400 00:56:52,660 --> 00:56:56,490 Felly dyma yw'r prif chwilio a fath y dylech wybod am. 1401 00:56:56,490 --> 00:56:59,500 Guarantee-- Ni allaf warantu, gan nad wyf wedi gweld y quiz-- 1402 00:56:59,500 --> 00:57:01,940 ond mae hyn yn dod i fyny cwis ar ôl cwis ar ôl rhoi'r gorau iddi. 1403 00:57:01,940 --> 00:57:04,050 Felly, yn bendant yn defnyddio'r siart hwn. 1404 00:57:04,050 --> 00:57:05,682 Fel, yn cymryd siart hwn. 1405 00:57:05,682 --> 00:57:06,890 Rhowch ef ar eich taflen twyllo. 1406 00:57:06,890 --> 00:57:07,931 Byddwch yn berson hapus. 1407 00:57:07,931 --> 00:57:09,010 1408 00:57:09,010 --> 00:57:12,590 >> Mae hyn yn dweud wrthym yr amseroedd rhedeg pob o'r rhain algorithmau didoli a chwilio. 1409 00:57:12,590 --> 00:57:14,020 1410 00:57:14,020 --> 00:57:18,850 Felly chwiliad llinol, gallwch weld ei redeg amser, ac yn un peth gyda chwiliad deuaidd. 1411 00:57:18,850 --> 00:57:21,490 Ewch dros yr hyn algorithmau hyn yn ei wneud, y syniad cyffredinol. 1412 00:57:21,490 --> 00:57:24,220 Edrychwch ar rai pseudocode, os nad yw cod ei hun. 1413 00:57:24,220 --> 00:57:25,610 1414 00:57:25,610 --> 00:57:30,380 >> Byddwch yn gweld bod swigen fath â uchaf rhwymo yn yr achos gwaethaf o n sgwâr. 1415 00:57:30,380 --> 00:57:31,490 1416 00:57:31,490 --> 00:57:34,680 Felly os yw ein amrywiaeth yn hollol yn ôl cyn i ni yn awyddus i ddatrys y broblem, 1417 00:57:34,680 --> 00:57:37,090 byddem yn dweud mai dyna mynd i gymryd camau n sgwâr. 1418 00:57:37,090 --> 00:57:38,160 1419 00:57:38,160 --> 00:57:41,730 Ond yn yr achos gorau, felly mae'r Isaf rhwymo ar gyfer yr achos gorau 1420 00:57:41,730 --> 00:57:44,300 yn mynd i fod os yw'n eisoes didoli berffaith. 1421 00:57:44,300 --> 00:57:46,671 Yna gyd mae'n rhaid i ni ei wneud yw gwiriwch fod yn cael ei datrys. 1422 00:57:46,671 --> 00:57:47,921 A oes cwestiwn dros yma? 1423 00:57:47,921 --> 00:57:49,805 >> MYFYRIWR: Pryd y byddai ydych am ddefnyddio fath? 1424 00:57:49,805 --> 00:57:50,747 Y math. 1425 00:57:50,747 --> 00:57:52,160 Im 'jyst yn chwilfrydig. 1426 00:57:52,160 --> 00:57:53,510 >> HANNAH: Pryd y byddech am ddefnyddio math dethol? 1427 00:57:53,510 --> 00:57:54,010 Mae hyn yn un? 1428 00:57:54,010 --> 00:57:55,705 Yr un sydd wedi sgwâr n yn y ddau achos? 1429 00:57:55,705 --> 00:57:56,860 >> MYFYRIWR: [Anghlywadwy]. 1430 00:57:56,860 --> 00:57:58,151 >> HANNAH: Felly mae'n wahanol iawn. 1431 00:57:58,151 --> 00:58:00,760 Os oes gennych benodol gofynion ar gyfer eich rhaglen, 1432 00:58:00,760 --> 00:58:04,887 hoffi pethau fel os ydym newydd ei ddweud gweithredu sorry-- search-- 1433 00:58:04,887 --> 00:58:06,720 gweithredu fath, wnewch chi helpu yn ôl pob tebyg am fynd 1434 00:58:06,720 --> 00:58:09,950 am un o'r rhai sy'n Mae gan achos gorau o n, 1435 00:58:09,950 --> 00:58:12,410 neu rwymo yn is yn yr achos gorau o n. 1436 00:58:12,410 --> 00:58:14,790 Ond gallai fod rhai pethau fel, dyweder, 1437 00:58:14,790 --> 00:58:16,767 cyfnewidiadau yn wirioneddol ddrud am ryw reswm. 1438 00:58:16,767 --> 00:58:18,850 Yna byddai ydych am ei wneud didoli swigen, oherwydd eich bod 1439 00:58:18,850 --> 00:58:20,641 rhaid iddynt wneud cymaint o cyfnewidiadau, pethau fel 'na. 1440 00:58:20,641 --> 00:58:21,710 1441 00:58:21,710 --> 00:58:23,098 Unrhyw ie other--? 1442 00:58:23,098 --> 00:58:25,488 >> MYFYRIWR: A fyddai'n [Anghlywadwy] i ddweud bod [Anghlywadwy]? 1443 00:58:25,488 --> 00:58:30,077 1444 00:58:30,077 --> 00:58:31,910 HANNAH: Dyna un peth Byddai hynny yn dweud wrthych 1445 00:58:31,910 --> 00:58:33,670 os ydych yn edrych ar y gweithredu. 1446 00:58:33,670 --> 00:58:35,850 Y ffordd yr wyf byddai mewn gwirionedd meddwl am pam ei bod n 1447 00:58:35,850 --> 00:58:40,840 sgwario yw bod yn rhaid i redeg drwy ein amrywiaeth o hyd n, 1448 00:58:40,840 --> 00:58:42,765 pob un yn gwneud yn y rhan fwyaf o, n cyfnewidiadau amser. 1449 00:58:42,765 --> 00:58:43,980 1450 00:58:43,980 --> 00:58:46,220 Ac mae'n rhaid i ni wneud y broses n amserau hyn. 1451 00:58:46,220 --> 00:58:51,130 >> Felly, pan fydd yn rhaid i chi eu gwneud yn y rhan fwyaf o, n cyfnewidiadau ac am n rhedeg drwy'r casgliad, 1452 00:58:51,130 --> 00:58:52,380 mae mynd i gael eu sgwario'n n. 1453 00:58:52,380 --> 00:58:55,480 Ond ie, bydd hyn yn cael ei datgelu trwy ddwbl hon ar gyfer dolen, 1454 00:58:55,480 --> 00:58:59,428 gan fod y cwestiwn yn asked-- neu nythu ar gyfer dolen, dylwn ddweud. 1455 00:58:59,428 --> 00:59:00,890 OK? 1456 00:59:00,890 --> 00:59:03,375 >> Ac yna uno didoli, sy'n yw'r math cyflymaf ydym yn awr, 1457 00:59:03,375 --> 00:59:07,560 neu ein bod ni wedi cynnwys yn CS50, gwybod bod y prif algorithm yw 1458 00:59:07,560 --> 00:59:10,150 syniad hwn o dorri i mewn i darnau datrys hynny ac yna 1459 00:59:10,150 --> 00:59:11,980 cyfuno ynghyd darnau didoli hyn. 1460 00:59:11,980 --> 00:59:14,170 A bydd yn cael ni log n log n. 1461 00:59:14,170 --> 00:59:17,110 Unrhyw gwestiynau am chwiliadau a math cyn i mi basio ymlaen? 1462 00:59:17,110 --> 00:59:19,840 1463 00:59:19,840 --> 00:59:21,040 Gadewch i ni weld. 1464 00:59:21,040 --> 00:59:21,800 >> Oh, rhestrau cysylltiedig. 1465 00:59:21,800 --> 00:59:23,210 Mae'n ddrwg gennym, mae gennyf un pwnc mwy. 1466 00:59:23,210 --> 00:59:25,000 OK, anhygoel, rhestrau cysylltiedig. 1467 00:59:25,000 --> 00:59:27,900 Problem gyda'r arrays, mae ganddynt faint sefydlog. 1468 00:59:27,900 --> 00:59:30,634 Felly os nad ydych yn gwybod pa mor fawr eich cyfraniad yn mynd i fod, 1469 00:59:30,634 --> 00:59:32,050 nad ydych am i greu arae. 1470 00:59:32,050 --> 00:59:34,080 Oherwydd os ydym yn creu amrywiaeth sy'n rhy fach, 1471 00:59:34,080 --> 00:59:35,930 efallai y byddwn yn rhedeg i mewn gorlif byffer. 1472 00:59:35,930 --> 00:59:38,890 >> Felly, yn lle hynny, gallem wneud rhywbeth gyda rhestrau cysylltiedig, a oedd 1473 00:59:38,890 --> 00:59:44,280 yn caniatáu i ni gael ddynamig strwythur data o faint 1474 00:59:44,280 --> 00:59:48,970 fydd yn ein galluogi i storio a faint yn fwy hyblyg o ddata. 1475 00:59:48,970 --> 00:59:54,030 Felly, o fewn pob nod yn ein rhestr cysylltiedig, mae gennym ddau ddarn. 1476 00:59:54,030 --> 00:59:56,820 Mae gennym y gwerth gwirioneddol y mae'n storio. 1477 00:59:56,820 --> 00:59:59,530 Felly dyna dim ond y peth y byddech gweld yn yr amrywiaeth, er enghraifft. 1478 00:59:59,530 --> 01:00:04,600 Ac yna rydym hefyd yn cadw golwg ar a pwyntydd at y peth nesaf yn y cof. 1479 01:00:04,600 --> 01:00:06,430 >> Yn wahanol i araeau, a oedd yr ydym yn gwybod i gyd yn mynd 1480 01:00:06,430 --> 01:00:10,890 i be-- elfennau amrywiaeth i gyd yn un ar ôl y llall yn memory-- cysylltiedig 1481 01:00:10,890 --> 01:00:13,300 Gallai rhestrau fod yn unrhyw le yn y cof. 1482 01:00:13,300 --> 01:00:14,590 Maen nhw'n lleoliadau mympwyol. 1483 01:00:14,590 --> 01:00:16,410 Felly, pe baem yn mewn gwirionedd yn mynd yn dod o hyd iddynt, rydym yn 1484 01:00:16,410 --> 01:00:19,770 Mae angen i gadw golwg ar y beth nesaf yn ein rhestr. 1485 01:00:19,770 --> 01:00:22,840 >> Ac yna, er mwyn gwybod lle y rhestr yn ei gyfanrwydd yw, 1486 01:00:22,840 --> 01:00:26,276 i gyd mae'n rhaid i ni gadw golwg ar yr Elfen gyntaf un yn ein rhestr cysylltiedig. 1487 01:00:26,276 --> 01:00:27,900 A byddwn yn caniatáu i ni i ddilyn drwodd. 1488 01:00:27,900 --> 01:00:31,020 1489 01:00:31,020 --> 01:00:33,070 >> Felly dyma sut y gallech ddiffinio ddelw. 1490 01:00:33,070 --> 01:00:36,160 Mae hwn yn gyfle gwych i fanteisio ar structs. 1491 01:00:36,160 --> 01:00:39,660 Oherwydd bod gennych syniad hwn, yn dda, am nod a roddir, mae gennyf ddau ddarn. 1492 01:00:39,660 --> 01:00:41,770 Mae'n rhaid i mi werth ei hun. 1493 01:00:41,770 --> 01:00:45,610 Ac yna mae gen i pwyntydd i'r elfen nesaf yn y rhestr cysylltiedig. 1494 01:00:45,610 --> 01:00:49,150 Felly, byddwch yn gweld, mae gennym yn gyfanrif n, sydd yn mynd i fod y gwerth gwirioneddol, 1495 01:00:49,150 --> 01:00:53,150 ac yna pwyntydd i a nod, o'r enw nesaf. 1496 01:00:53,150 --> 01:00:56,431 Felly, mae hynny'n mynd i fod y nesaf elfen yn ein rhestr cysylltiedig. 1497 01:00:56,431 --> 01:00:56,972 MYFYRIWR: Ie? 1498 01:00:56,972 --> 01:01:01,920 Oes rhaid i chi nodi bod y seren yn debyg i struct? 1499 01:01:01,920 --> 01:01:05,620 >> HANNAH: Ie, felly gan fod hyn Mae bron fel rhyw fath o, 1500 01:01:05,620 --> 01:01:07,980 mae'n ymddangos fel recursive diffiniad yn yr ystyr ein 1501 01:01:07,980 --> 01:01:12,080 angen gwybod beth yw nod yw y tu mewn i ddod o hyd i nod. 1502 01:01:12,080 --> 01:01:14,450 Gan nad yw mewn gwirionedd gwybod beth yw nod yn gwbl 1503 01:01:14,450 --> 01:01:17,283 nes i ni gyrraedd at ddiwedd this-- ac ar ôl hyn y gallwn ni jyst alw yn 1504 01:01:17,283 --> 01:01:21,935 a node-- tu mewn diffiniad hwn, mae angen i ni alw ei fod yn nod struct. 1505 01:01:21,935 --> 01:01:22,560 Cwestiwn mawr. 1506 01:01:22,560 --> 01:01:23,580 1507 01:01:23,580 --> 01:01:25,214 Unrhyw beth arall? 1508 01:01:25,214 --> 01:01:26,198 Ie? 1509 01:01:26,198 --> 01:01:29,150 >> MYFYRIWR: Pam rydyn ni'n i'w ddweud nod ddwywaith? 1510 01:01:29,150 --> 01:01:33,578 Oherwydd pan oeddem yn [Anghlywadwy] rydym yn unig roedd yn rhaid i wneud hynny yn hanner colon, 1511 01:01:33,578 --> 01:01:37,352 ond erbyn hyn mae'n rhaid i ni ganfod bod struct nod? [Anghlywadwy]. 1512 01:01:37,352 --> 01:01:39,060 HANNAH: Felly, yr wyf yn credu yn yr enghraifft olaf, 1513 01:01:39,060 --> 01:01:42,110 roeddem yn unig yn creu unrhyw adeg rydych yn awyddus i ddefnyddio myfyriwr ar ôl hynny, i chi 1514 01:01:42,110 --> 01:01:46,430 roedd yn rhaid i ddefnyddio struct node-- Rydw i'n fyfyriwr sorry-- struct. 1515 01:01:46,430 --> 01:01:51,575 Roedd hyn yn caniatáu i ni, ar ôl y ffaith, dim ond defnydd nôd yn ychwanegu math newydd, yn y bôn. 1516 01:01:51,575 --> 01:01:53,324 1517 01:01:53,324 --> 01:01:53,990 Mae hynny'n gwneud synnwyr? 1518 01:01:53,990 --> 01:01:54,984 1519 01:01:54,984 --> 01:01:57,150 Felly, byddai'n rhaid i ni fynd yn ôl a edrych ar y cod blaen. 1520 01:01:57,150 --> 01:01:59,025 Ond byddwn yn tybio bod doedden ni ddim yn defnyddio typedef. 1521 01:01:59,025 --> 01:02:02,050 Ac gwnaethom ofyn y cwestiwn, pam mae angen i ni ddefnyddio typedef? 1522 01:02:02,050 --> 01:02:05,540 Typedef ein galluogi i osgoi'r struct gair yn y dechrau. 1523 01:02:05,540 --> 01:02:06,221 Ie? 1524 01:02:06,221 --> 01:02:08,095 MYFYRIWR: Pa fath o Byddai cwestiynau dod i fyny 1525 01:02:08,095 --> 01:02:10,400 o ran o ran nodau a rhestrau cysylltiedig? 1526 01:02:10,400 --> 01:02:15,110 >> HANNAH: Felly, un peth yw y gallem ddweud sut efallai y byddwch yn chwilio drwy restr cysylltiedig? 1527 01:02:15,110 --> 01:02:16,930 OK, am ei fod yn ychydig yn fwy cymhleth 1528 01:02:16,930 --> 01:02:18,520 nag os ydym yn chwilio trwy arae. 1529 01:02:18,520 --> 01:02:21,472 Gallwn dim ond yn edrych ar elfen sero, un elfen, elfen dau, blah, blah, 1530 01:02:21,472 --> 01:02:21,972 blah. 1531 01:02:21,972 --> 01:02:22,629 1532 01:02:22,629 --> 01:02:24,420 Os ydym am i chwilio trwy restr cysylltiedig, 1533 01:02:24,420 --> 01:02:27,229 byddem gwirionedd yn rhaid i ddilyn Ychydig ddrysfa hon o awgrymiadau. 1534 01:02:27,229 --> 01:02:29,270 Felly gadewch i ni mewn gwirionedd yn mynd drwy hyn yn gyflym iawn. 1535 01:02:29,270 --> 01:02:30,460 1536 01:02:30,460 --> 01:02:32,860 Yr hyn y gallem ei wneud yn archebu i-- gadewch i ni ddweud ein bod 1537 01:02:32,860 --> 01:02:35,430 eisiau i ddim ond ailadrodd drwy ein rhestr gysylltiedig yn gyfan gwbl. 1538 01:02:35,430 --> 01:02:37,450 Byddem yn dechrau yn y pen. 1539 01:02:37,450 --> 01:02:39,890 Ac yna, er mwyn symud i'r elfen nesaf, 1540 01:02:39,890 --> 01:02:43,680 hytrach na dim ond cynyddu o un fel y gallem yn mynd drwy amrywiaeth, 1541 01:02:43,680 --> 01:02:45,720 rydym yn wir yn mynd i dilynwch y pwyntydd nesaf, 1542 01:02:45,720 --> 01:02:48,360 fel y gallwn ddod o hyd i ble yn cof yr elfen nesaf. 1543 01:02:48,360 --> 01:02:49,357 1544 01:02:49,357 --> 01:02:51,690 Felly, yr wyf yn gwybod nad yw'n ddigon i cymryd hyn i gyd mewn ar hyn o bryd, 1545 01:02:51,690 --> 01:02:52,650 ond byddwch yn cael sleidiau hyn. 1546 01:02:52,650 --> 01:02:54,730 Felly, gallwch chi fynd drwy'r mae hyn ychydig yn arafach. 1547 01:02:54,730 --> 01:02:56,890 Ond yn ei hanfod, yr hyn yr ydym ei eisiau ei wneud yw dilyn awgrymiadau hyn 1548 01:02:56,890 --> 01:02:58,550 trwy gydol y rhestr cysylltiedig. 1549 01:02:58,550 --> 01:03:00,258 Felly, mae hwn yn gwestiwn efallai y gofynnir i chi. 1550 01:03:00,258 --> 01:03:01,920 1551 01:03:01,920 --> 01:03:03,980 >> Rhywbeth i hysbysiad gyda mewnosod, gadewch i ni ddweud 1552 01:03:03,980 --> 01:03:07,925 roeddem yn awyddus i roi elfen newydd ar flaen ein rhestr cysylltiedig. 1553 01:03:07,925 --> 01:03:10,800 Mae'n rhaid i ni fod yn ofalus iawn am y drefn yr ydym 1554 01:03:10,800 --> 01:03:12,760 symudir yr awgrymiadau. 1555 01:03:12,760 --> 01:03:15,230 Oherwydd gadewch i ni ddweud wyf newydd ei ddweud OK. 1556 01:03:15,230 --> 01:03:18,930 Gwneud pwynt pen i'r elfen newydd. 1557 01:03:18,930 --> 01:03:23,550 Dim ond yn ei gwneud yn bwynt i 1 Yna, rydym wedi yn y bôn colli gweddill ein rhestr, 1558 01:03:23,550 --> 01:03:25,860 gan nad wyf yn cofio lle 2 o fywydau. 1559 01:03:25,860 --> 01:03:27,730 >> Felly, mae'n rhaid i ni ei wneud mewn trefn benodol iawn. 1560 01:03:27,730 --> 01:03:31,500 Yn gyntaf, rydym yn gwneud y newydd Elfen bwynt i'r pen. 1561 01:03:31,500 --> 01:03:33,970 Ac yna rydym yn gwneud y pen cyfeirio at yr elfen newydd. 1562 01:03:33,970 --> 01:03:38,455 Felly, gadewch i ni weld beth sy'n edrych fel gyda arrows-- yn union fel hynny. 1563 01:03:38,455 --> 01:03:42,080 Felly, yn gyntaf i chi gael y newydd Elfen pwynt i'r hen ben. 1564 01:03:42,080 --> 01:03:45,990 Ac yn awr, mae gennym y pen cyfeirio at yr elfen gyntaf newydd. 1565 01:03:45,990 --> 01:03:47,187 Unrhyw gwestiynau gyda hyn? 1566 01:03:47,187 --> 01:03:49,870 1567 01:03:49,870 --> 01:03:54,350 >> OK dyma ychydig cod eto, rhywbeth i edrych ar ychydig yn ddiweddarach. 1568 01:03:54,350 --> 01:03:58,630 Ac yn awr mi droi drosodd i Davin ar gyfer GDB a ychydig o ymarfer 1569 01:03:58,630 --> 01:03:59,480 codio ar bapur. 1570 01:03:59,480 --> 01:04:00,597 1571 01:04:00,597 --> 01:04:01,096 Beautiful. 1572 01:04:01,096 --> 01:04:01,810 >> ROB: A Rob. 1573 01:04:01,810 --> 01:04:02,360 >> HANNAH: O, Davin a Rob. 1574 01:04:02,360 --> 01:04:03,055 Mae'n ddrwg gen i. 1575 01:04:03,055 --> 01:04:03,596 >> MYFYRIWR: Woo! 1576 01:04:03,596 --> 01:04:08,140 1577 01:04:08,140 --> 01:04:09,110 >> ROB: Diolch. 1578 01:04:09,110 --> 01:04:11,209 >> DAVIN: Ydych chi eisiau dweud popeth yn gyflym go iawn? 1579 01:04:11,209 --> 01:04:11,875 ROB: Yeah, yeah. 1580 01:04:11,875 --> 01:04:12,845 DAVIN: Ar ôl i fy mod i fyny. 1581 01:04:12,845 --> 01:04:16,240 1582 01:04:16,240 --> 01:04:19,520 OK, tra bod Rob yn rhoi'r meicroffon ar, felly beth GDB? 1583 01:04:19,520 --> 01:04:23,945 Dylai pawb wedi gweld GDB mewn dosbarth a hefyd mewn oriau swyddfa. 1584 01:04:23,945 --> 01:04:25,070 A dylech fod yn ei ddefnyddio. 1585 01:04:25,070 --> 01:04:25,750 Felly beth yw GDB? 1586 01:04:25,750 --> 01:04:28,030 1587 01:04:28,030 --> 01:04:28,850 Unrhyw un? 1588 01:04:28,850 --> 01:04:29,540 >> MYFYRIWR: Mae'n debugger. 1589 01:04:29,540 --> 01:04:30,250 >> DAVIN: Mae'n debugger. 1590 01:04:30,250 --> 01:04:31,624 A beth mae'n ei caniatáu i chi ei wneud? 1591 01:04:31,624 --> 01:04:33,064 Fel, pam yr ydych yn hoffi GDB? 1592 01:04:33,064 --> 01:04:34,480 MYFYRIWR: Er mwyn arafu'r rhaglen. 1593 01:04:34,480 --> 01:04:36,740 DAVIN: Iawn, felly gallwch gerdded drwyddo yn hoffi cyflymder dynol. 1594 01:04:36,740 --> 01:04:38,490 Ac felly beth yw rhai gorchmynion gallwch chi ei wneud? 1595 01:04:38,490 --> 01:04:40,407 Wel, toriad yn ôl pob tebyg eich hoff gorchymyn. 1596 01:04:40,407 --> 01:04:43,240 Oherwydd sy'n eich galluogi i dorri'r rhaglen ac mewn gwirionedd yn cerdded drwyddo 1597 01:04:43,240 --> 01:04:44,280 fesul llinell. 1598 01:04:44,280 --> 01:04:46,500 >> Run yn caniatáu i chi redeg. 1599 01:04:46,500 --> 01:04:48,210 Nesaf, fel camu drwodd. 1600 01:04:48,210 --> 01:04:49,820 Beth yw'r rhwng nesaf a'r cam? 1601 01:04:49,820 --> 01:04:52,190 1602 01:04:52,190 --> 01:04:53,190 Arhoswch, yn dweud bod allan yn uchel. 1603 01:04:53,190 --> 01:04:54,060 Yr oedd yn gywir. 1604 01:04:54,060 --> 01:04:55,280 >> MYFYRIWR: [Anghlywadwy]. 1605 01:04:55,280 --> 01:04:56,190 >> DAVIN: Ie, awesome. 1606 01:04:56,190 --> 01:04:59,210 Felly fel, cam nesaf ac, os you're-- gadewch i ni ddweud bod gennych chi swyddogaeth 1607 01:04:59,210 --> 01:04:59,950 diffinio. 1608 01:04:59,950 --> 01:05:03,350 Lets 'ddeud rhai yn eich prif swyddogaeth, a ydych ond yn taro nesaf, nesaf, 1609 01:05:03,350 --> 01:05:03,850 nesaf. 1610 01:05:03,850 --> 01:05:05,910 Rydych yn wir yn mynd i gweithredu y swyddogaeth honno, 1611 01:05:05,910 --> 01:05:07,285 ond eich bod yn mynd i neidio drosto. 1612 01:05:07,285 --> 01:05:09,711 Os ydych yn taro cam, neu s neu beth bynnag, rydych yn 1613 01:05:09,711 --> 01:05:11,460 mynd i neidio mewn gwirionedd i mewn i'r swyddogaeth, 1614 01:05:11,460 --> 01:05:14,110 ac yna gallwch daro nesaf i weld y gwahanol alwadau 1615 01:05:14,110 --> 01:05:16,170 tu mewn y swyddogaeth benodol. 1616 01:05:16,170 --> 01:05:16,670 Yeah? 1617 01:05:16,670 --> 01:05:18,670 >> MYFYRIWR: A oes ffordd i neidio, fel, yn ôl allan? 1618 01:05:18,670 --> 01:05:20,750 DAVIN: Gorffen, yeah, orffen gyda chi neidio allan. 1619 01:05:20,750 --> 01:05:22,570 Felly, mae'n mynd i orffen y swyddogaeth, ac yna rydych chi'n 1620 01:05:22,570 --> 01:05:24,153 mynd i fod yn ôl yn bennaf, er enghraifft. 1621 01:05:24,153 --> 01:05:25,250 1622 01:05:25,250 --> 01:05:27,370 Bydd Print hargraffu un tro. 1623 01:05:27,370 --> 01:05:29,381 Rhywbeth yr wyf bob amser yn defnyddio ei arddangos. 1624 01:05:29,381 --> 01:05:31,880 Bydd Arddangos hargraffu yn gyson trwy gydol y chyfanrwydd 1625 01:05:31,880 --> 01:05:32,470 eich rhaglen. 1626 01:05:32,470 --> 01:05:33,810 >> Er enghraifft, os ydych chi'n mewn i ddolen, ac rydych 1627 01:05:33,810 --> 01:05:37,018 am weld sut mae rhywbeth wedi newid, ac nad ydych am i, fel, yn gyson 1628 01:05:37,018 --> 01:05:38,940 fod yn ei wneud fel print, print, print, arddangos 1629 01:05:38,940 --> 01:05:43,230 Bydd arddangos y newidyn yn barhaus, bob tro y byddwch yn taro Nesaf. 1630 01:05:43,230 --> 01:05:44,310 Ac yn parhau. 1631 01:05:44,310 --> 01:05:45,905 Felly GBD, dyna GDB. 1632 01:05:45,905 --> 01:05:47,160 1633 01:05:47,160 --> 01:05:49,180 >> MYFYRIWR: Beth yw'r un lle rydych [Anghlywadwy]? 1634 01:05:49,180 --> 01:05:50,150 1635 01:05:50,150 --> 01:05:50,900 DAVIN: Beth ydyw? 1636 01:05:50,900 --> 01:05:52,310 1637 01:05:52,310 --> 01:05:54,390 >> MYFYRIWR: Beth the-- y newidynnau lleol. 1638 01:05:54,390 --> 01:05:55,364 1639 01:05:55,364 --> 01:05:57,780 ROB: Mae rhywbeth mewn gwirionedd fel pobl leol neu rywbeth. 1640 01:05:57,780 --> 01:05:58,140 Rwy'n can't-- 1641 01:05:58,140 --> 01:05:59,930 >> DAVIN: Gallai fod yn rhywbeth fel 'na, yeah. 1642 01:05:59,930 --> 01:06:00,830 >> HANNAH: Yn y bobl leol? 1643 01:06:00,830 --> 01:06:01,510 >> DAVIN: Dyna ni. 1644 01:06:01,510 --> 01:06:02,134 Dyna yr un. 1645 01:06:02,134 --> 01:06:03,040 ROB: Beautiful. 1646 01:06:03,040 --> 01:06:04,030 >> DAVIN: Yeah. 1647 01:06:04,030 --> 01:06:06,010 >> MYFYRIWR: Beth mae yn parhau yn ei wneud? 1648 01:06:06,010 --> 01:06:08,010 >> DAVIN: Mae'n continues-- felly mae'n jyst mynd i barhau eich rhaglenni. 1649 01:06:08,010 --> 01:06:09,843 Felly, os byddwch yn torri ac yn taro parhau, mae'n mynd 1650 01:06:09,843 --> 01:06:13,119 i ddim ond yn rhedeg y rhaglen honno tan mae'n taro bod egwyl eto. 1651 01:06:13,119 --> 01:06:14,910 Felly er enghraifft, os ydych yn torrodd mewn swyddogaeth, 1652 01:06:14,910 --> 01:06:16,720 a ydych yn mynd i ddim yn hoffi am dolen neu rywbeth fel 'na, 1653 01:06:16,720 --> 01:06:19,869 a byddwch yn taro yn parhau, mae'n mynd i parhau ac yn mynd yn ôl at hwnnw egwyl. 1654 01:06:19,869 --> 01:06:22,660 Neu does dim egwyl, mae'n mynd i parhau ac yn gorffen y rhaglen. 1655 01:06:22,660 --> 01:06:25,000 >> ROB: Felly, yn union fel arosfannau rhedeg yn y torbwynt cyntaf 1656 01:06:25,000 --> 01:06:27,010 byddwch yn taro, os ydych wedyn daro yn parhau, bydd yn cadw 1657 01:06:27,010 --> 01:06:28,070 mynd nes ei fod yn y torbwynt nesaf. 1658 01:06:28,070 --> 01:06:30,111 Ac yna yn parhau yn mynd at y torbwynt nesaf. 1659 01:06:30,111 --> 01:06:31,264 1660 01:06:31,264 --> 01:06:32,680 DAVIN: Unrhyw gwestiynau eraill ar GDB? 1661 01:06:32,680 --> 01:06:33,577 1662 01:06:33,577 --> 01:06:35,410 Felly, yr wyf yn meddwl yn y gorffennol, rydym wedi gofyn i chi beth 1663 01:06:35,410 --> 01:06:37,690 GDB yn ac yn rhoi Enghraifft o rai pethau i chi 1664 01:06:37,690 --> 01:06:40,770 Gall wneud gyda GDB, felly syml go iawn, ond yeah. 1665 01:06:40,770 --> 01:06:42,280 Dyna ni. 1666 01:06:42,280 --> 01:06:43,250 A nodau? 1667 01:06:43,250 --> 01:06:49,571 >> ROB: Ie, felly ba gyfeiriad oedd hi? 1668 01:06:49,571 --> 01:06:50,851 1669 01:06:50,851 --> 01:06:51,726 MYFYRIWR: Dyna oedd ei. 1670 01:06:51,726 --> 01:06:52,160 DAVIN: Arhoswch. 1671 01:06:52,160 --> 01:06:52,270 ROB: Mae hyn yn guy? 1672 01:06:52,270 --> 01:06:52,936 DAVIN: Mae hynny'n un. 1673 01:06:52,936 --> 01:06:54,660 ROB: Mae hyn yn guy, oh, doeddwn i ddim yn sylweddoli. 1674 01:06:54,660 --> 01:06:56,940 Felly, nid oeddem yn glir ar yr hyn the-- nad wyf yn ei wneud 1675 01:06:56,940 --> 01:06:58,680 gwybod pwy was-- ond y cwestiwn. 1676 01:06:58,680 --> 01:07:01,180 Nid ydym yn gwybod yn union beth rydych yn gofyn am y peth, felly dim ond 1677 01:07:01,180 --> 01:07:04,800 i egluro rhywbeth. 1678 01:07:04,800 --> 01:07:07,750 Felly, yn gyntaf, fel y dywedais o'r blaen, typedef eich bod bob amser yn defnyddio dim ond 1679 01:07:07,750 --> 01:07:09,305 creu llysenw am fath. 1680 01:07:09,305 --> 01:07:13,420 Felly dde yma, y ​​llysenw rydym yn creu ar gyfer y math hwn nod struct. 1681 01:07:13,420 --> 01:07:18,070 >> Felly, yn gyntaf, gan anwybyddu nod hwn yn y typedef, felly mae hyn struct cyrliog nod 1682 01:07:18,070 --> 01:07:21,060 Brace i lawr i cyrliog nesaf Brace yw'r math nôd struct. 1683 01:07:21,060 --> 01:07:23,470 Ac mae angen i nod hwnnw i fyny yno, oherwydd ein 1684 01:07:23,470 --> 01:07:25,190 Mae angen i gyfeirnodi nod yn y fan hyn. 1685 01:07:25,190 --> 01:07:29,380 Felly, gyda'r math hwn o struct recursive, angen i chi roi hyn struct enw, 1686 01:07:29,380 --> 01:07:31,340 neu arall nad gallech dweud nod struct yn fan hyn. 1687 01:07:31,340 --> 01:07:33,340 Lle o'r blaen gyda myfyrwyr pan oeddem yn teipio, rwy'n credu, 1688 01:07:33,340 --> 01:07:35,423 Nid oedd yn rhaid i ni ddweud fyny myfyrwyr yno, oherwydd ein 1689 01:07:35,423 --> 01:07:40,370 Nid oedd rhaid i ddweud struct myfyrwyr y tu mewn i'r struct ei hun. 1690 01:07:40,370 --> 01:07:43,730 Felly mae'n y dychweliadol sy'n yn ein gorfodi i ddweud nod yno. 1691 01:07:43,730 --> 01:07:46,610 >> Mae hyn yn unig yw nod yr enw rydym yn gan roi nod ar gyfer yr typedef. 1692 01:07:46,610 --> 01:07:48,520 Fel nad yw nod yw yr un fath â'r hyn nod. 1693 01:07:48,520 --> 01:07:51,567 Ond mae hyn nod struct yw'r un fath â'r hyn nod struct. 1694 01:07:51,567 --> 01:07:54,150 DAVIN: Felly, pryd bynnag y byddwch yn galw, fel, nod yn eich prif swyddogaeth, 1695 01:07:54,150 --> 01:07:55,350 Nid ydych yn mynd i rhaid i ddweud nod struct. 1696 01:07:55,350 --> 01:07:58,360 Alli jyst ddweud nod, gan fod nod yw different-- yn y bôn 1697 01:07:58,360 --> 01:07:59,440 yr ydych yn ei ddweud, OK. 1698 01:07:59,440 --> 01:08:01,490 Yn hytrach na gorfod galw nod struct yn fy cod, 1699 01:08:01,490 --> 01:08:04,050 Fi jyst eisiau ei ail-enwi ei fel nod i'w wneud yn haws. 1700 01:08:04,050 --> 01:08:06,800 >> ROB: Os ydych yn bob amser defnyddio typedef, yna mae hyn 1701 01:08:06,800 --> 01:08:11,240 yw'r unig le yr ydych yn mynd i gael i ddatgan newidyn gyda nod struct 1702 01:08:11,240 --> 01:08:11,740 seren, yeah. 1703 01:08:11,740 --> 01:08:14,650 1704 01:08:14,650 --> 01:08:20,801 >> DAVIN: Iawn, felly mae'r rhan olaf yn anodd i addysgu because-- 1705 01:08:20,801 --> 01:08:22,185 1706 01:08:22,185 --> 01:08:22,685 ROB: Beth? 1707 01:08:22,685 --> 01:08:24,098 1708 01:08:24,098 --> 01:08:25,649 >> DAVIN: Oherwydd ei fod yn codio ar bapur. 1709 01:08:25,649 --> 01:08:28,689 Felly, bob blwyddyn rydym wedi cod ar gwestiynau bapur. 1710 01:08:28,689 --> 01:08:32,510 Felly, yr wyf yn meddwl y llynedd, 12 allan o 80 pwynt oedd cod ar bapur. 1711 01:08:32,510 --> 01:08:36,720 Flwyddyn cyn hynny, 10 allan o 80, flwyddyn cyn hynny, 20 allan o 100, 1712 01:08:36,720 --> 01:08:37,939 felly mae cryn nifer o'r rhain. 1713 01:08:37,939 --> 01:08:40,970 Felly, rydych yn mynd i gael i allu i cod fyny swyddogaethau hyn â llaw. 1714 01:08:40,970 --> 01:08:45,340 >> Felly yr wyf yn cyfrifedig efallai y byddwn yn mynd drwy cwpl ohonyn nhw a gweld sut y mae pobl yn ei wneud, 1715 01:08:45,340 --> 01:08:47,340 math o gerdded drwy iddynt yn araf gyda phobl. 1716 01:08:47,340 --> 01:08:48,790 1717 01:08:48,790 --> 01:08:52,420 Felly ar y cyfan, strlen a atoi wedi bod yn boblogaidd iawn. 1718 01:08:52,420 --> 01:08:55,670 Y llynedd, yr wyf yn meddwl oedd gennym GetPositiveInt a RandomInt. 1719 01:08:55,670 --> 01:08:58,591 Ond pow, felly pŵer, hefyd yn un cadarnhaol hefyd. 1720 01:08:58,591 --> 01:09:00,965 Gadewch i jyst yn mynd trwy efallai un neu ddau o'r rhain gyda'i gilydd. 1721 01:09:00,965 --> 01:09:02,510 1722 01:09:02,510 --> 01:09:03,729 Beth mae pobl am ei weld? 1723 01:09:03,729 --> 01:09:05,037 1724 01:09:05,037 --> 01:09:05,767 >> MYFYRIWR: Atoi. 1725 01:09:05,767 --> 01:09:06,350 MYFYRIWR: Yeah. 1726 01:09:06,350 --> 01:09:06,859 DAVIN: Atoi? 1727 01:09:06,859 --> 01:09:07,800 MYFYRIWR: [Anghlywadwy]. 1728 01:09:07,800 --> 01:09:09,682 DAVIN: OK, dw i'n mynd i wneud hynny ar y bwrdd. 1729 01:09:09,682 --> 01:09:11,765 A oes gennych chi ddewis os wyf yn gwneud hynny yma neu yno? 1730 01:09:11,765 --> 01:09:13,580 1731 01:09:13,580 --> 01:09:14,550 Yno, Gabe dywed yno. 1732 01:09:14,550 --> 01:09:16,729 1733 01:09:16,729 --> 01:09:19,580 >> ROB: A dyma meddyliau cyffredinol ar y cwestiynau codio. 1734 01:09:19,580 --> 01:09:21,705 Ceisiwch ysgrifennu rhywbeth. 1735 01:09:21,705 --> 01:09:22,580 Peidiwch â'i adael yn wag. 1736 01:09:22,580 --> 01:09:23,080 >> DAVIN: Ydw. 1737 01:09:23,080 --> 01:09:25,520 ROB: Os gallwch gael y dychwelyd math cywir, 1738 01:09:25,520 --> 01:09:27,090 neu efallai efallai y byddwn yn ei roi i chi, ond os gallwch, fel, 1739 01:09:27,090 --> 01:09:30,256 ysgrifennu'r llofnod swyddogaeth gyffredinol, Os gallwch gael y achosion sylfaenol cywir, 1740 01:09:30,256 --> 01:09:32,244 neu achosion cornel, neu cofio siec am null, 1741 01:09:32,244 --> 01:09:34,160 cyn belled ag y byddwch yn cael rhywfaint o pethau, yna efallai yr ydym yn 1742 01:09:34,160 --> 01:09:35,880 Gall roi cwpl i chi pwyntiau am y broblem. 1743 01:09:35,880 --> 01:09:36,810 Peidiwch nid dim ond ei adael yn wag. 1744 01:09:36,810 --> 01:09:38,560 >> DAVIN: Ie, ac os ydych yn yn unig yn gyfan gwbl 1745 01:09:38,560 --> 01:09:40,580 stumped ar sut i mewn gwirionedd yn troi i mewn i cod. 1746 01:09:40,580 --> 01:09:43,140 Os byddwch yn ysgrifennu pseudocode, mae hynny'n eithaf da hefyd. 1747 01:09:43,140 --> 01:09:46,390 Felly mae'n debyg, mae'n gwestiwn chwe phwynt, a byddwch yn ysgrifennu y pseudocode cywir, 1748 01:09:46,390 --> 01:09:47,858 byddwch yn cael o leiaf ddau bwynt. 1749 01:09:47,858 --> 01:09:49,149 Felly peidiwch â dim ond eu gadael yn wag. 1750 01:09:49,149 --> 01:09:50,279 Ceisiwch roi rhywbeth. 1751 01:09:50,279 --> 01:09:51,770 >> ROB: Mae angen iddo fod yn pseudocode gywir, er. 1752 01:09:51,770 --> 01:09:52,270 >> DAVIN: Ydw. 1753 01:09:52,270 --> 01:09:55,381 ROB: Felly, rydym yn gyffredinol yn llai drugarog gyda chwilod yn pseudocode. 1754 01:09:55,381 --> 01:09:57,130 DAVIN: OK, felly i chi guys eisiau gweld atoi. 1755 01:09:57,130 --> 01:09:58,480 1756 01:09:58,480 --> 01:10:02,820 OK, felly dim ond really-- felly beth yr ydych am ei wneud 1757 01:10:02,820 --> 01:10:04,969 yw eich bod yn mynd i fod o ystyried rhyw fath o rif. 1758 01:10:04,969 --> 01:10:07,010 Ond nid yw nifer hwn yn mynd i fod yn int, dde? 1759 01:10:07,010 --> 01:10:08,574 Sut beth yw mynd i fod? 1760 01:10:08,574 --> 01:10:09,480 >> MYFYRIWR: [Anghlywadwy]. 1761 01:10:09,480 --> 01:10:11,146 >> DAVIN: Mae'n mynd i fod yn llinyn, dde? 1762 01:10:11,146 --> 01:10:13,160 Felly, os ydych yn cael a string-- gadewch i say-- 1763 01:10:13,160 --> 01:10:15,228 >> ROB: A ddylwn i dynnu i fyny golygydd? 1764 01:10:15,228 --> 01:10:16,200 Gallaf dynnu up-- 1765 01:10:16,200 --> 01:10:16,800 >> DAVIN: O, ydych am ei wneud iddo on-- 1766 01:10:16,800 --> 01:10:17,420 >> ROB: A fyddai'n well gennych y bwrdd? 1767 01:10:17,420 --> 01:10:18,800 >> DAVIN: Beth ydych chi eisiau ei wneud? 1768 01:10:18,800 --> 01:10:19,900 Yr wyf yn golygu, ydych chi eisiau ei wneud â llaw? 1769 01:10:19,900 --> 01:10:21,460 Neu ydych chi eisiau ei wneud iddo gan gyfrifiadur? 1770 01:10:21,460 --> 01:10:22,180 >> ROB: Ei wneud â llaw. 1771 01:10:22,180 --> 01:10:22,805 >> DAVIN: [Chwerthin] 1772 01:10:22,805 --> 01:10:23,950 ROB: Ei wneud â llaw. 1773 01:10:23,950 --> 01:10:25,469 >> DAVIN: Iawn, felly mae'n mynd i fod yn atoi. 1774 01:10:25,469 --> 01:10:27,760 Felly beth iddo-- Hynny yw, rydym yn annhymerus yn ôl pob tebyg yn rhoi hyn i chi. 1775 01:10:27,760 --> 01:10:29,106 Ond beth sy'n ei mynd i ddychwelyd? 1776 01:10:29,106 --> 01:10:29,452 >> MYFYRIWR: Int. 1777 01:10:29,452 --> 01:10:31,076 >> DAVIN: Mae'n mynd i ddychwelyd int, dde? 1778 01:10:31,076 --> 01:10:33,772 So-- Dydw i ddim eisiau ei wneud yno. 1779 01:10:33,772 --> 01:10:34,510 Fe wna i fan hyn. 1780 01:10:34,510 --> 01:10:36,596 >> ROB: Gallwch dynnu i lawr ac yna gwthio i fyny arno. 1781 01:10:36,596 --> 01:10:38,500 1782 01:10:38,500 --> 01:10:40,385 >> DAVIN: yeah. 1783 01:10:40,385 --> 01:10:43,880 [Chwerthin] newid Game. 1784 01:10:43,880 --> 01:10:50,950 Iawn, felly mae'n mynd i fod yn atoi int, a beth rwyt ti'n mynd i'w gymryd? 1785 01:10:50,950 --> 01:10:52,180 1786 01:10:52,180 --> 01:10:57,780 Mae seren torgoch, felly dim ond llinyn, seren s, fel 'na. 1787 01:10:57,780 --> 01:10:59,240 >> ROB: seren Nice, 'n glws. 1788 01:10:59,240 --> 01:11:02,582 1789 01:11:02,582 --> 01:11:04,040 DAVIN: Efallai na fydd hyn fod yno, OK. 1790 01:11:04,040 --> 01:11:04,540 ROB: Yeah. 1791 01:11:04,540 --> 01:11:06,670 DAVIN: Iawn, felly y cyntaf beth rydych am ei do-- I 1792 01:11:06,670 --> 01:11:08,490 ddim yn gwybod os oes unrhyw un yn edrych yn y solutions-- practis 1793 01:11:08,490 --> 01:11:10,150 ond yr hyn yr ydych chi'n mynd i am ei wneud yw eich bod yn 1794 01:11:10,150 --> 01:11:11,570 mynd i am gael dolen, am eich bod yn 1795 01:11:11,570 --> 01:11:14,100 mynd i eisiau mewn gwirionedd gamu drwy'r llinyn hwn. 1796 01:11:14,100 --> 01:11:18,880 Felly helpful-- felly gadewch i ni ddweud rydym yn mynd i mewn i'r ddolen, 1797 01:11:18,880 --> 01:11:22,270 ac rydym yn mynd i gamu drwy pob elfen o'r llinyn. 1798 01:11:22,270 --> 01:11:23,470 Pa mor hir yw hynny? 1799 01:11:23,470 --> 01:11:26,464 Sawl gwaith ydym ni'n mynd i ailadrodd yn hynny am ddolen? 1800 01:11:26,464 --> 01:11:27,130 MYFYRIWR: Sterln? 1801 01:11:27,130 --> 01:11:27,963 DAVIN: Sterln, yeah. 1802 01:11:27,963 --> 01:11:29,350 1803 01:11:29,350 --> 01:11:41,294 Felly, gadewch i ni ddweud hyd int hafal sterln s. 1804 01:11:41,294 --> 01:11:44,240 1805 01:11:44,240 --> 01:11:48,740 A dim ond yn chwilfrydig, pam ei fod bob amser yn garedig o well i wneud y tu allan yma o ddolenni? 1806 01:11:48,740 --> 01:11:52,277 Fel, pam ei fod yn well i alw swyddogaeth hon y tu allan i dolen? 1807 01:11:52,277 --> 01:11:53,360 Dim ond bwyll cyflym gwirio? 1808 01:11:53,360 --> 01:11:55,810 1809 01:11:55,810 --> 01:11:56,311 Yeah? 1810 01:11:56,311 --> 01:11:58,268 MYFYRIWR: Felly, nid ydych yn ei wneud rhaid inni barhau i wirio iddo. 1811 01:11:58,268 --> 01:11:59,400 Gallwch dim ond [Anghlywadwy]. 1812 01:11:59,400 --> 01:12:01,560 >> DAVIN: Yn union, felly yeah, yn union yr hyn a ddywedodd. 1813 01:12:01,560 --> 01:12:03,101 Felly, nid ydym yn rhaid i ni gadw wirio iddo. 1814 01:12:03,101 --> 01:12:05,690 Felly, er enghraifft, os ydw i'n galw swyddogaeth hon y tu mewn i dolen, 1815 01:12:05,690 --> 01:12:08,050 Wedyn dw i'n mynd i gadw galw swyddogaeth hon amseroedd lluosog. 1816 01:12:08,050 --> 01:12:10,080 Ac mae hynny'n mynd i ostwng effeithlonrwydd eich rhaglen. 1817 01:12:10,080 --> 01:12:12,370 Felly mae'n ddefnyddiol bob amser i ddatgan ei fod y tu allan. 1818 01:12:12,370 --> 01:12:14,370 >> ROB: Mae hynny wedi dweud hynny, ar unrhyw un o'r problemau hyn, 1819 01:12:14,370 --> 01:12:17,940 'n bert lawer cyn belled ag y byddwch yn cael datrysiad sy'n gweithio, byddwch yn cael credyd llawn. 1820 01:12:17,940 --> 01:12:20,820 Felly peidiwch â phoeni os yw eich cynllun yn gwbl erchyll. 1821 01:12:20,820 --> 01:12:22,120 1822 01:12:22,120 --> 01:12:25,230 Gall wneud i ni cynhyrfu darllen eich cod. 1823 01:12:25,230 --> 01:12:28,160 Ond cyn belled ag y mae'n gweithio, byddwch yn cael y pwyntiau. 1824 01:12:28,160 --> 01:12:29,302 >> DAVIN: Ydw. 1825 01:12:29,302 --> 01:12:31,260 OK, felly, yna dwi'n mynd i datgan rhywfaint o amrywio. 1826 01:12:31,260 --> 01:12:33,900 Dim ond ei fod yn mynd i alw swm int. 1827 01:12:33,900 --> 01:12:37,031 Ac yr wyf i'n mynd i osod hyn yn hafal i sero, fel 'na. 1828 01:12:37,031 --> 01:12:38,780 A dyna 'jyst yn mynd i fod yn dalfan. 1829 01:12:38,780 --> 01:12:40,960 Felly, mae hynny'n mynd i fod yn yr hyn yr wyf i'n mynd i ddychwelyd. 1830 01:12:40,960 --> 01:12:43,730 Felly, dw i'n mynd i yn y pen draw dychwelyd swm allan o'r rhaglen hon. 1831 01:12:43,730 --> 01:12:44,980 Felly, yr wyf yn cael y ddau newidyn. 1832 01:12:44,980 --> 01:12:45,563 Mae gen i hyd. 1833 01:12:45,563 --> 01:12:46,500 Mae gen i swm. 1834 01:12:46,500 --> 01:12:48,290 Ac yn awr gadewch i ni neidio i mewn i'n llinyn. 1835 01:12:48,290 --> 01:12:49,510 >> Felly yn gadael wedi ein gyfer dolen. 1836 01:12:49,510 --> 01:13:06,520 Felly pedwar int I hafal 0 w, tra Rwyf yn llai na hyd I a mwy a mwy. 1837 01:13:06,520 --> 01:13:07,150 Ac now-- 1838 01:13:07,150 --> 01:13:10,920 1839 01:13:10,920 --> 01:13:11,420 ROB: Nice. 1840 01:13:11,420 --> 01:13:14,030 DAVIN: OK, ac yn awr yma daw'r cig ein cod. 1841 01:13:14,030 --> 01:13:17,380 Felly, gallwch chi ei wneud mewn gwirionedd yn y bôn yn un y llinell hon. 1842 01:13:17,380 --> 01:13:20,702 Felly, mae unrhyw un yn cael syniad o'r hyn yr ydym yn mynd i'w wneud nesaf? 1843 01:13:20,702 --> 01:13:23,680 1844 01:13:23,680 --> 01:13:25,380 Iawn, felly mae hynny'n iawn. 1845 01:13:25,380 --> 01:13:35,860 Felly, rydym yn ei wneud i ddweud swm equals-- gadewch i mi scoot swm over-- hwn 1846 01:13:35,860 --> 01:13:50,010 swm hafal amseroedd 10 plus-- rydym yn mynd i gymryd s I llai un 1847 01:13:50,010 --> 01:13:54,787 quote 0 un dyfyniad a wnaed, fel 'na. 1848 01:13:54,787 --> 01:13:55,620 ROB: reddfol iawn. 1849 01:13:55,620 --> 01:13:56,980 1850 01:13:56,980 --> 01:13:57,880 >> DAVIN: Mâl iddo. 1851 01:13:57,880 --> 01:14:01,438 OK, felly someone-- Cawn ei fod, yr wyf yn got it. 1852 01:14:01,438 --> 01:14:03,680 1853 01:14:03,680 --> 01:14:06,960 Iawn, felly mae hyn yn amlwg yn mynd i fyny. 1854 01:14:06,960 --> 01:14:08,320 1855 01:14:08,320 --> 01:14:09,450 Beth mae hyn yn ei olygu? 1856 01:14:09,450 --> 01:14:12,120 Felly, mae unrhyw un yn gwybod beth mae hyn yn ei olygu? 1857 01:14:12,120 --> 01:14:13,826 Gall pawb yn gweld hyn? 1858 01:14:13,826 --> 01:14:16,088 Na, ni all neb weld hyn, OK. 1859 01:14:16,088 --> 01:14:17,390 1860 01:14:17,390 --> 01:14:18,340 Dw i'n mynd i'r canlynol-- 1861 01:14:18,340 --> 01:14:20,506 >> ROB: Rydw i'n mynd i ysgrifennu'r fformiwla yn unig iawn yma. 1862 01:14:20,506 --> 01:14:23,140 DAVIN: OK, Rob mynd i wneud hynny ar y cyfrifiadur, sydd yn hwyl. 1863 01:14:23,140 --> 01:14:26,889 1864 01:14:26,889 --> 01:14:27,514 ROB: O fy Nuw. 1865 01:14:27,514 --> 01:14:34,340 1866 01:14:34,340 --> 01:14:35,010 Neu nid wyf fydd. 1867 01:14:35,010 --> 01:14:36,288 1868 01:14:36,288 --> 01:14:36,954 DAVIN: Sefwch yn ôl. 1869 01:14:36,954 --> 01:14:42,300 1870 01:14:42,300 --> 01:14:44,260 MYFYRIWR: Mae gen i gwestiwn. 1871 01:14:44,260 --> 01:14:45,348 DAVIN: Yeah, yn sicr. 1872 01:14:45,348 --> 01:14:46,223 MYFYRIWR: [Anghlywadwy]? 1873 01:14:46,223 --> 01:14:52,529 1874 01:14:52,529 --> 01:14:54,570 DAVIN: Iawn, felly mae'n mewn gwirionedd, fel, dim ond yn gyffredinol, 1875 01:14:54,570 --> 01:14:56,710 pe baech yn rhoi, fel, yn y datganiad hwn int 1876 01:14:56,710 --> 01:14:59,770 I hafal i hyd 0 coma hafal sterln, that-- 1877 01:14:59,770 --> 01:15:01,200 >> MYFYRIWR: [Anghlywadwy]. 1878 01:15:01,200 --> 01:15:03,585 >> DAVIN: Mae hynny'n iawn, gan fod that-- 1879 01:15:03,585 --> 01:15:05,543 MYFYRIWR: Pam byddech chi hyd yn oed angen i ddefnyddio hyd? 1880 01:15:05,543 --> 01:15:08,620 Ni allai Pam rydym yn unig [Anghlywadwy] sterln s, fel yr amser cyfan [Anghlywadwy]? 1881 01:15:08,620 --> 01:15:09,460 >> DAVIN: Rydych yn golygu iawn yma? 1882 01:15:09,460 --> 01:15:10,001 >> MYFYRIWR: Ydw. 1883 01:15:10,001 --> 01:15:12,630 DAVIN: Oherwydd bod pob y tro hwn ar gyfer rhediadau dolen, 1884 01:15:12,630 --> 01:15:14,295 mae'n mynd i werthuso cyflwr hwn. 1885 01:15:14,295 --> 01:15:14,920 MYFYRIWR: Iawn. 1886 01:15:14,920 --> 01:15:16,836 DAVIN: Ac os oes gennych sterln yno, yna mae'n 1887 01:15:16,836 --> 01:15:19,510 mynd i gael i alw mewn gwirionedd swyddogaeth honno bob tro. 1888 01:15:19,510 --> 01:15:21,090 Felly, yn hytrach na dim ond ei gymharu i int, 1889 01:15:21,090 --> 01:15:23,548 ydych yn mynd i gael ei galw yn swyddogaeth ac yna ei gymharu 1890 01:15:23,548 --> 01:15:24,510 at werth dychwelyd. 1891 01:15:24,510 --> 01:15:25,860 Yeah, felly mae'n dim ond, yeah. 1892 01:15:25,860 --> 01:15:28,860 1893 01:15:28,860 --> 01:15:30,770 >> Nice, OK, felly, yn awr y gall pawb ei weld. 1894 01:15:30,770 --> 01:15:33,400 Beth does-- hyn yn debyg, mae hyn yn ei. 1895 01:15:33,400 --> 01:15:34,580 Mae hyn yn y jam, dde yma. 1896 01:15:34,580 --> 01:15:37,030 1897 01:15:37,030 --> 01:15:37,930 Beth yw ystyr hynny? 1898 01:15:37,930 --> 01:15:39,250 1899 01:15:39,250 --> 01:15:39,970 Beth ydw i'n ei wneud? 1900 01:15:39,970 --> 01:15:41,890 1901 01:15:41,890 --> 01:15:42,880 Yeah, syniad? 1902 01:15:42,880 --> 01:15:43,482 Yeah? 1903 01:15:43,482 --> 01:15:45,692 >> MYFYRIWR: Wel, felly pan eich bod yn mynd i mewn arae, 1904 01:15:45,692 --> 01:15:47,525 ydych yn mynd i fod yn mynd o'r chwith i'r dde, 1905 01:15:47,525 --> 01:15:51,786 felly rydych yn mynd i fod yn mynd i mewn degol oddi lawr y [Anghlywadwy]. 1906 01:15:51,786 --> 01:15:52,410 DAVIN: Yn union. 1907 01:15:52,410 --> 01:15:55,063 MYFYRIWR: Felly mae gan bob un rhaid i chi luosi 1908 01:15:55,063 --> 01:15:59,490 yr hyn a welodd chi fel gwerth y int gan yr amser y byddwch yn ei gael i symud hynny dros un. 1909 01:15:59,490 --> 01:16:01,590 >> DAVIN: Perffaith, perffaith, felly er enghraifft, gadewch i ni 1910 01:16:01,590 --> 01:16:05,376 dweud Rhoddais you-- rwy'n mynd i ysgrifennu dros yma. 1911 01:16:05,376 --> 01:16:06,480 Na, dydw i ddim. 1912 01:16:06,480 --> 01:16:08,640 Rydw i'n mynd i ysgrifennu dros yma. 1913 01:16:08,640 --> 01:16:12,080 Lets 'ddeud roddais i chi 76, dde? 1914 01:16:12,080 --> 01:16:13,380 Gadewch i ni ddweud yr wyf yn rhoi i chi 76. 1915 01:16:13,380 --> 01:16:15,360 Dyna llinyn i ddechrau, OK? 1916 01:16:15,360 --> 01:16:16,840 >> Felly hyd yw beth? 1917 01:16:16,840 --> 01:16:18,060 1918 01:16:18,060 --> 01:16:19,060 2, dde? 1919 01:16:19,060 --> 01:16:20,290 Swm yw 0. 1920 01:16:20,290 --> 01:16:21,600 Yna, rydym yn neidio yn ein am ddolen. 1921 01:16:21,600 --> 01:16:24,187 OK, mae'r fersiwn cyntaf o hyn, yr hyn sy'n ei mynd i fod? 1922 01:16:24,187 --> 01:16:25,270 Mae'n mynd i fod yn swm yw 0. 1923 01:16:25,270 --> 01:16:27,180 Felly swm adegau 10 0. 1924 01:16:27,180 --> 01:16:28,500 Mae hynny'n ddiystyr. 1925 01:16:28,500 --> 01:16:29,880 Yna beth mae hyn yn ei wneud? 1926 01:16:29,880 --> 01:16:30,845 1927 01:16:30,845 --> 01:16:31,720 MYFYRIWR: [Anghlywadwy]. 1928 01:16:31,720 --> 01:16:33,110 1929 01:16:33,110 --> 01:16:37,430 >> DAVIN: Mae'n mynd i droi hynny cymeriad i mewn i cyfanrif, dde? 1930 01:16:37,430 --> 01:16:42,160 Mae'n fath o fel gyda'ch broblem set-- light-- hwn 1931 01:16:42,160 --> 01:16:44,170 ei fod yn fath o fel gyda problem a osodwyd i Visioneer. 1932 01:16:44,170 --> 01:16:45,980 Rydych yn delio â gwerthoedd ASCII. 1933 01:16:45,980 --> 01:16:48,520 Felly, os wyf yn rhoi i chi, fel, a saith, ond mae'n gymeriad, 1934 01:16:48,520 --> 01:16:50,965 a ydych am wybod, OK, pa digid yw hynny? 1935 01:16:50,965 --> 01:16:53,540 1936 01:16:53,540 --> 01:16:54,910 Yeah, gallech, yeah. 1937 01:16:54,910 --> 01:16:55,900 Felly beth digid yw hynny? 1938 01:16:55,900 --> 01:16:59,550 Gallech tynnu 0 oddi wrtho, ond i chi rhaid i dynnu 0, cymeriad. 1939 01:16:59,550 --> 01:17:01,425 >> A lle mae rhai pobl yn cael baglu i fyny, eu bod yn 1940 01:17:01,425 --> 01:17:04,260 fel, OK, wel, mae'n rhaid i mi ei wybod gwerthoedd ASCII ar gyfer y cwis hwn? 1941 01:17:04,260 --> 01:17:06,218 Na, yr ydych nid yn bendant yn ei wneud angen gwybod i'r ASCII 1942 01:17:06,218 --> 01:17:09,520 gwerthoedd, fel, llythrennau bach a, priflythyren A, sero. 1943 01:17:09,520 --> 01:17:12,060 >> ROB: Nid oes unrhyw reswm i erioed rhoi hyn ar y daflen twyllo. 1944 01:17:12,060 --> 01:17:14,226 >> DAVIN: nid yn bendant yn ei wneud gwastraffu eich gofod gyda hyn. 1945 01:17:14,226 --> 01:17:18,090 Gallwch literally-- jyst yn lle hynny o ddweud 48, fel dde i fyny 1946 01:17:18,090 --> 01:17:24,630 yno, mae hynny'n cyfateb i dweud un, un collnod, 1947 01:17:24,630 --> 01:17:27,680 fel 'na, yn union yr un fath. 1948 01:17:27,680 --> 01:17:34,106 >> ROB: Gallech bron yn meddwl am y peth fel os-- Dduw, mae angen i fy I, 1949 01:17:34,106 --> 01:17:37,490 oops-- gallech bron feddwl am y peth fel pe bai gennym rywbeth fel 'na hash 1950 01:17:37,490 --> 01:17:39,755 diffinio 0 fel 48. 1951 01:17:39,755 --> 01:17:41,320 1952 01:17:41,320 --> 01:17:42,030 Ni fydd yn gweithio. 1953 01:17:42,030 --> 01:17:45,502 Ond yn meddwl amdano fel un dyfyniad 0 quote sengl, ac ar gyfer yr holl gymeriadau. 1954 01:17:45,502 --> 01:17:47,960 Meddyliwch amdano fel gyson bod yn cynrychioli gwerth ASCII. 1955 01:17:47,960 --> 01:17:49,080 >> DAVIN: Ydw. 1956 01:17:49,080 --> 01:17:52,820 OK, felly y tro cyntaf drwy, felly gyda 76-- felly y tro cyntaf drwy, 1957 01:17:52,820 --> 01:17:57,260 mae hyn yn unig yw cymeriad 7 minws cymeriad 0, 1958 01:17:57,260 --> 01:18:00,420 a'r rhai saith integers-- yn dda, y rhai 1959 01:18:00,420 --> 01:18:04,030 saith o lefydd i ffwrdd oddi wrth bob un arall ar y siart ASCII neu beth bynnag. 1960 01:18:04,030 --> 01:18:06,770 Felly, mae hynny'n mynd i ddychwelyd yn int o 7. 1961 01:18:06,770 --> 01:18:08,720 Felly nawr, swm hafal 7. 1962 01:18:08,720 --> 01:18:10,830 >> OK, yn dda, gadewch i ni neidio i mewn i hyn ar gyfer dolen eto. 1963 01:18:10,830 --> 01:18:13,010 OK, nawr mae'n swm amseroedd 10. 1964 01:18:13,010 --> 01:18:15,800 Felly, rydych yn effeithiol symud y 7 ar y chwith. 1965 01:18:15,800 --> 01:18:17,542 A yw hynny'n gwneud synnwyr? 1966 01:18:17,542 --> 01:18:19,250 Rydych yn effeithiol symud i'r chwith. 1967 01:18:19,250 --> 01:18:21,790 >> Ac yna rydych add-- hyn yn mynd i fod yn 6 minws 0. 1968 01:18:21,790 --> 01:18:22,650 Dyna 6. 1969 01:18:22,650 --> 01:18:24,752 Felly, mae'n mynd i fod yn 70 a 6. 1970 01:18:24,752 --> 01:18:25,996 76, mae hynny'n eich rhif. 1971 01:18:25,996 --> 01:18:28,370 Felly, heb ystyried pa rif Rhoddais chi, 'i' jyst yn araf 1972 01:18:28,370 --> 01:18:31,610 yn mynd i newid y gwerthoedd mwy o faint ar y chwith, 1 ffactor o 10 1973 01:18:31,610 --> 01:18:35,525 bob amser yn yr am ddolen, ac yna ychwanegu yn ôl yr angen. 1974 01:18:35,525 --> 01:18:37,350 1975 01:18:37,350 --> 01:18:37,865 >> Yn y cefn? 1976 01:18:37,865 --> 01:18:40,240 MYFYRIWR: does dim rhaid i ni ei wneud unrhyw gwirio yn y rhaglen? 1977 01:18:40,240 --> 01:18:41,580 1978 01:18:41,580 --> 01:18:44,302 >> ROB: Felly cyn belled ag y gwirio yn mynd ar gyfer y rhaglen, 1979 01:18:44,302 --> 01:18:46,510 byddem yn rhoi gwybod i chi 'n bert llawer beth sydd angen i chi ei wirio. 1980 01:18:46,510 --> 01:18:48,670 Os nad ydym yn dweud wrthych unrhyw beth, yna yn gyffredinol 1981 01:18:48,670 --> 01:18:50,320 cymryd yn ganiataol yn rhaid i chi wirio rhan fwyaf o bethau. 1982 01:18:50,320 --> 01:18:54,772 Fel y gallech, dim ond i fod yn ddiogel, byddwch yn Mae'n debyg y dylai wirio hey, mae s null? 1983 01:18:54,772 --> 01:18:56,230 Yna, Nid oes gennyf unrhyw syniad beth i ddychwelyd. 1984 01:18:56,230 --> 01:18:58,814 Ond byddem yn dweud wrthych math hwn o beth. 1985 01:18:58,814 --> 01:18:59,480 0, nid wyf yn gwybod. 1986 01:18:59,480 --> 01:19:02,786 >> DAVIN: A pham y byddech eisiau i ailwirio os s hafal nwl? 1987 01:19:02,786 --> 01:19:03,660 MYFYRIWR: [Anghlywadwy]. 1988 01:19:03,660 --> 01:19:04,880 DAVIN: Oherwydd y seren torgoch. 1989 01:19:04,880 --> 01:19:05,510 Mae'n pwyntydd. 1990 01:19:05,510 --> 01:19:09,240 Felly mae gwbl dderbyniol datganiad, gallwn ddweud, OK, 1991 01:19:09,240 --> 01:19:11,917 s hafal null, oherwydd ei fod yn Gallai fod yn pwyntydd i'w null. 1992 01:19:11,917 --> 01:19:14,250 Felly, pryd bynnag y byddwch yn cael awgrymiadau yn eich llwybr yn fel hyn, 1993 01:19:14,250 --> 01:19:15,420 mae'n debyg y dylech wirio. 1994 01:19:15,420 --> 01:19:18,461 Oherwydd os nad ydych yn gwirio bod, a yna rydych wedyn yn mynd i mewn i'ch am loop, 1995 01:19:18,461 --> 01:19:20,100 ac rydych yn doing-- scoot lawr. 1996 01:19:20,100 --> 01:19:21,980 1997 01:19:21,980 --> 01:19:22,920 Scoot lawr. 1998 01:19:22,920 --> 01:19:23,860 >> ROB: Mae'n ddrwg gennym, dyna ni. 1999 01:19:23,860 --> 01:19:25,860 >> DAVIN: Ac felly, fel, os ei fod yn null, ac yna rydych 2000 01:19:25,860 --> 01:19:28,267 gwneud hyn, pa gwall ydych chi'n mynd i gael? 2001 01:19:28,267 --> 01:19:29,850 MYFYRIWR: Rydych yn mynd yn cael nam penodol. 2002 01:19:29,850 --> 01:19:31,250 DAVIN: Rydych yn mynd i osod fai, i'r dde, oherwydd eich bod yn 2003 01:19:31,250 --> 01:19:32,616 ceisio mynegai i mewn null. 2004 01:19:32,616 --> 01:19:35,240 Felly, rydych yn mynd i geisio mynegai i mewn i gof nad ydych yn berchen. 2005 01:19:35,240 --> 01:19:39,550 Felly, mae hyn, os yw hyn yn null, ac byddwch yn gwneud hyn, wnewch chi helpu feicio. 2006 01:19:39,550 --> 01:19:43,656 >> ROB: Rwyf hefyd yn meddwl ar yr arholiad lle gofynnom y cwestiwn hwn, rydym yn dweud wrthych 2007 01:19:43,656 --> 01:19:45,655 y gallwch gymryd yn ganiataol ei fod yn rhif positif. 2008 01:19:45,655 --> 01:19:48,270 Oherwydd disgwylir atoi hefyd i ymdrin â rhifau negatif, 2009 01:19:48,270 --> 01:19:49,686 felly byddai'n rhaid i achos arbennig chi. 2010 01:19:49,686 --> 01:19:53,080 Hey, yw'r cymeriad cyntaf diferyn, ac os felly, OK, 2011 01:19:53,080 --> 01:19:54,839 erbyn hyn mae'n cyfanrif negyddol. 2012 01:19:54,839 --> 01:19:56,380 Byddwn yn dweud wrthych y mathau hyn o bethau. 2013 01:19:56,380 --> 01:19:58,005 Byddwn yn dweud wrthych beth mae angen i chi ei drin. 2014 01:19:58,005 --> 01:19:59,310 DAVIN: Ydw. 2015 01:19:59,310 --> 01:20:02,530 Felly, rwy'n siŵr y gallai rhai pobl have-- os ydych wedi dechrau edrych ar hen arholiadau, 2016 01:20:02,530 --> 01:20:03,900 ydych chi wedi gweld sterln. 2017 01:20:03,900 --> 01:20:05,120 Dyna un poblogaidd. 2018 01:20:05,120 --> 01:20:09,790 Ac yr wyf yn meddwl yn sterln, roedd yn rhaid i chi gwneud gwiriad hwn ar gyfer null, yr enillion 2019 01:20:09,790 --> 01:20:10,950 0 neu rywbeth fel 'na. 2020 01:20:10,950 --> 01:20:11,940 Fel, bu'n rhaid i chi wirio am null. 2021 01:20:11,940 --> 01:20:14,230 Ac os na wnaethoch, hynny Roedd yn tynnu sylw oddi ar y cwis. 2022 01:20:14,230 --> 01:20:16,750 2023 01:20:16,750 --> 01:20:19,500 Felly, beth bynnag, mae pawb teimlo'n iawn gyda atoi? 2024 01:20:19,500 --> 01:20:21,112 2025 01:20:21,112 --> 01:20:22,820 A oes unrhyw un eisiau mynd dros rannau eto? 2026 01:20:22,820 --> 01:20:23,815 2027 01:20:23,815 --> 01:20:25,565 ROB: O ie, yr wyf yn meddwl rydym hefyd yn dweud wrthych chi 2028 01:20:25,565 --> 01:20:28,565 Gall gymryd yn ganiataol bod popeth yw-- hwnnw eu bod mewn gwirionedd yn mynd i mewn i nifer, 2029 01:20:28,565 --> 01:20:32,821 nad oes rhaid i chi boeni am, fel, llythyrau fod yn y llinyn, felly. 2030 01:20:32,821 --> 01:20:33,320 DAVIN: Yeah. 2031 01:20:33,320 --> 01:20:33,922 Ie? 2032 01:20:33,922 --> 01:20:35,713 MYFYRIWR: Allwch chi fynd dros un adeg mwy pan 2033 01:20:35,713 --> 01:20:37,860 ydych yn defnyddio dyfyniad dwbl a dyfyniad sengl? 2034 01:20:37,860 --> 01:20:41,290 >> DAVIN: Cadarn, felly dyfynodau dwbl, iawn yn syml, mae dyfynodau dwbl yn llinynnau. 2035 01:20:41,290 --> 01:20:43,370 Felly, os ydych yn dyblu quote unrhyw beth, mae hynny'n llinyn. 2036 01:20:43,370 --> 01:20:48,270 Felly, fel, os oedd gennyf hwn 0 dros yma, ac yr wyf yn gwneud hyn, mae hynny'n llinyn. 2037 01:20:48,270 --> 01:20:50,060 Bellach mae hynny'n gymeriad. 2038 01:20:50,060 --> 01:20:54,816 Felly ni allaf ddod o hyd y gwerth hwn ar fy ASCII siart, am ei fod yn llinyn, yeah. 2039 01:20:54,816 --> 01:20:57,770 2040 01:20:57,770 --> 01:20:59,480 >> OK, unrhyw gwestiynau eraill? 2041 01:20:59,480 --> 01:21:00,405 Ie? 2042 01:21:00,405 --> 01:21:02,345 >> MYFYRIWR: Felly, ydych chi wedi eisoes wedi ateb hyn, 2043 01:21:02,345 --> 01:21:05,255 ond fel, pan fyddwn ni'n mewn gwirionedd ysgrifennu hyn ar y cwis, 2044 01:21:05,255 --> 01:21:08,165 ydych chi eisiau i ni ysgrifennu gyda slaes sero [Anghlywadwy]? 2045 01:21:08,165 --> 01:21:11,041 2046 01:21:11,041 --> 01:21:11,540 DAVIN: Na 2047 01:21:11,540 --> 01:21:13,800 Y cwestiwn oedd dylech rhoi slaes drwy'r zeros 2048 01:21:13,800 --> 01:21:14,890 i nodi os ydynt yn sero? 2049 01:21:14,890 --> 01:21:15,890 Na, byddwn yn ffigwr allan. 2050 01:21:15,890 --> 01:21:16,940 2051 01:21:16,940 --> 01:21:19,530 Yeah, diolch, maen nhw'n dda. 2052 01:21:19,530 --> 01:21:20,860 OK, unrhyw beth arall? 2053 01:21:20,860 --> 01:21:25,060 A oes unrhyw un yn dymuno i'r canlynol-- felly rwy'n credu rydym wedi rhedeg ychydig bach dros gyfnod o amser. 2054 01:21:25,060 --> 01:21:27,305 A ydych eisiau gweld un arall, neu? 2055 01:21:27,305 --> 01:21:28,096 MYFYRIWR: RandomInt. 2056 01:21:28,096 --> 01:21:29,230 2057 01:21:29,230 --> 01:21:30,750 >> DAVIN: RandomInt, OK, yn union. 2058 01:21:30,750 --> 01:21:32,975 Felly, gadewch i ni wneud RandomInt. 2059 01:21:32,975 --> 01:21:34,395 2060 01:21:34,395 --> 01:21:35,270 Fe wna i dros yma. 2061 01:21:35,270 --> 01:21:36,770 2062 01:21:36,770 --> 01:21:39,210 Felly RandomInt mewn gwirionedd yn llawer symlach. 2063 01:21:39,210 --> 01:21:43,578 Rwy'n credu atoi mae'n debyg, yw'r un anoddaf ein bod wedi gofyn yn y blynyddoedd blaenorol. 2064 01:21:43,578 --> 01:21:44,453 MYFYRIWR: [Anghlywadwy]. 2065 01:21:44,453 --> 01:21:46,660 2066 01:21:46,660 --> 01:21:47,161 >> DAVIN: Beth? 2067 01:21:47,161 --> 01:21:49,493 ROB: Rydw i'n gweld os yw'n fath o viewable o dros yma. 2068 01:21:49,493 --> 01:21:50,040 DAVIN: A yw'n? 2069 01:21:50,040 --> 01:21:52,500 ROB: Nid wyf yn credu ei bod yn going-- dwi'n meddwl mae'n mynd i redeg i ffwrdd i'r dde. 2070 01:21:52,500 --> 01:21:53,791 DAVIN: OK, felly byddaf yn gwneud hyn yn un. 2071 01:21:53,791 --> 01:21:56,250 Ac yna 'ch jyst roi ar y sgrin. 2072 01:21:56,250 --> 01:21:57,150 >> ROB: Pob hawl. 2073 01:21:57,150 --> 01:21:58,190 >> DAVIN: Yr ydych eisiau bod yn fy ysgrifennydd? 2074 01:21:58,190 --> 01:21:58,600 >> ROB: Yeah. 2075 01:21:58,600 --> 01:21:59,100 >> DAVIN: Nice. 2076 01:21:59,100 --> 01:22:01,210 2077 01:22:01,210 --> 01:22:02,727 OK, alla i ddileu hyn? 2078 01:22:02,727 --> 01:22:04,188 >> MYFYRIWR: Yeah. 2079 01:22:04,188 --> 01:22:05,162 >> DAVIN: Dyna mor galed. 2080 01:22:05,162 --> 01:22:10,032 2081 01:22:10,032 --> 01:22:12,062 (CANU) Rydych yn ei wneud yr hyn yr ydych yn ei wneud. 2082 01:22:12,062 --> 01:22:14,454 A gwneud yr hyn nad ydych yn ei wneud. 2083 01:22:14,454 --> 01:22:14,954 Mae pob hawl. 2084 01:22:14,954 --> 01:22:19,790 2085 01:22:19,790 --> 01:22:22,930 >> OK, os cofiaf yn iawn, ar y cwis oedd y RandomInt fel, 2086 01:22:22,930 --> 01:22:26,190 OK, dw i'n mynd i roi i chi dau rhifau, fel a a a b. 2087 01:22:26,190 --> 01:22:30,380 Ac yr wyf am i chi i roi i mi RandomInt rhwng y niferoedd hynny. 2088 01:22:30,380 --> 01:22:33,440 Felly RandomInt yn mynd i gymryd dau numbers-- 2089 01:22:33,440 --> 01:22:41,690 felly RandomInt-- ac mae'n mynd i ddychwelyd yn int. 2090 01:22:41,690 --> 01:22:42,930 >> Felly beth yw'r gwerth dychwelyd? 2091 01:22:42,930 --> 01:22:44,151 Fi jyst dweud wrthych. 2092 01:22:44,151 --> 01:22:44,650 Int, dde? 2093 01:22:44,650 --> 01:22:46,400 2094 01:22:46,400 --> 01:22:49,260 Fel hyn, ac yna mae'n mynd i gymryd dau ints. 2095 01:22:49,260 --> 01:22:56,301 Felly, mae'n mynd i gymryd int a a int b, fel 'na. 2096 01:22:56,301 --> 01:22:58,217 Felly beth RandomInt yw mynd i'w wneud yw ei fod yn mynd 2097 01:22:58,217 --> 01:23:02,440 i ddychwelyd rhywfaint o werth ar hap mewn rhwng y ddau werth. 2098 01:23:02,440 --> 01:23:05,140 Felly, mae'n mynd i fod yn fwy na, llai na b. 2099 01:23:05,140 --> 01:23:09,020 Felly, yr wyf yn meddwl mae'n debyg y gallwch gymryd yn ganiataol bod a yw'r lleiaf o'r ddau werthoedd. 2100 01:23:09,020 --> 01:23:12,210 Felly, os ydym yn delio â randomness, pa swyddogaeth 2101 01:23:12,210 --> 01:23:14,825 yr ydym wedi gweld bod rhoi pethau ar hap i ni? 2102 01:23:14,825 --> 01:23:15,450 MYFYRIWR: Drand. 2103 01:23:15,450 --> 01:23:16,506 DAVIN: Drand, yn union. 2104 01:23:16,506 --> 01:23:18,630 Felly, rydych yn mynd i yn ôl pob tebyg am ddefnyddio eich drand. 2105 01:23:18,630 --> 01:23:19,940 2106 01:23:19,940 --> 01:23:29,160 Felly, gallwch ddweud hap int, ac rydym annhymerus dim ond dweud ei fod yn dychwelyd 0 ar hyn o bryd. 2107 01:23:29,160 --> 01:23:30,170 2108 01:23:30,170 --> 01:23:38,690 Ac maen nhw'n rydym yn mynd i ddweud, OK, gydradd hap drand 48. 2109 01:23:38,690 --> 01:23:39,747 2110 01:23:39,747 --> 01:23:40,830 A beth mae hyn yn ei dychwelyd? 2111 01:23:40,830 --> 01:23:43,742 Beth mae'r swyddogaeth hon yn rhoi i chi? 2112 01:23:43,742 --> 01:23:45,610 >> MYFYRIWR: Rhwng 0 a 1. 2113 01:23:45,610 --> 01:23:47,870 >> DAVIN: Yeah, rhwng 0 ac 1. 2114 01:23:47,870 --> 01:23:48,890 Felly, mae'n mynd i be-- 2115 01:23:48,890 --> 01:23:51,070 >> ROB: A hyn yr wyf yn meddwl yw-- byddem yn dweud hyn wrthoch chi. 2116 01:23:51,070 --> 01:23:52,670 Fel, gallwch ddefnyddio drand 48. 2117 01:23:52,670 --> 01:23:54,350 Gallwch wirio hyn ar yr arholiad yn y gorffennol. 2118 01:23:54,350 --> 01:23:56,720 Ond byddem yn ôl pob tebyg yn dweud eich Gall defnyddio drand 48, a oedd yn 2119 01:23:56,720 --> 01:23:58,790 dychwelyd fflôt rhwng 0 ac 1. 2120 01:23:58,790 --> 01:24:00,830 >> DAVIN: Ie, ie, rwy'n eithaf sicr ar yr arholiad 2121 01:24:00,830 --> 01:24:03,860 mae'n dweud eich bod yn ôl pob tebyg am ddefnyddio drand, yeah. 2122 01:24:03,860 --> 01:24:07,041 Felly, mae'n mynd i ddychwelyd rhywfaint o werth rhwng 0 ac 1. 2123 01:24:07,041 --> 01:24:08,790 Ac yna beth ydych chi mynd i eisiau ei wneud? 2124 01:24:08,790 --> 01:24:16,360 Wel, yr ydych am i luosi by-- aros, yr wyf yn credu ei fod fel hyn, mae'n ddrwg gennyf. 2125 01:24:16,360 --> 01:24:18,018 'N annhymerus' jyst yn gwneud hyn. 2126 01:24:18,018 --> 01:24:19,410 Nid wyf yn gwybod. 2127 01:24:19,410 --> 01:24:22,240 >> Felly b minws a. 2128 01:24:22,240 --> 01:24:23,310 2129 01:24:23,310 --> 01:24:24,490 Felly pam b minws a? 2130 01:24:24,490 --> 01:24:26,110 2131 01:24:26,110 --> 01:24:30,490 Felly, gadewch i ni ddweud drand rhoi yn ôl i chi yn OK int--, 'n annhymerus' jyst yn gwneud y gweddill, 2132 01:24:30,490 --> 01:24:33,380 felly yn ogystal a. 2133 01:24:33,380 --> 01:24:36,130 Felly beth does-- y mae b minws a. 2134 01:24:36,130 --> 01:24:40,670 Felly, gadewch i ni ddweud bod drand rhoi yn ôl i chi y gwerth mwyaf posibl y gallai o bosibl 2135 01:24:40,670 --> 01:24:41,410 rhoi i chi. 2136 01:24:41,410 --> 01:24:42,409 Beth sy'n bod yn mynd i fod? 2137 01:24:42,409 --> 01:24:43,010 MYFYRIWR: 1. 2138 01:24:43,010 --> 01:24:44,430 >> DAVIN: 1, dde? 2139 01:24:44,430 --> 01:24:47,880 Felly, os yw hyn yn 1, ac rydych yn luosi b minws a, 2140 01:24:47,880 --> 01:24:50,110 yn dda, mai dim ond y gwahaniaeth rhwng minws A. 2141 01:24:50,110 --> 01:24:52,870 Ac os ydych yn, yna ychwanegwch y yn ôl ymlaen i, dyna beth? 2142 01:24:52,870 --> 01:24:54,290 2143 01:24:54,290 --> 01:24:55,180 Mae wedi b bôn. 2144 01:24:55,180 --> 01:24:56,435 2145 01:24:56,435 --> 01:24:57,310 A yw hynny'n gwneud synnwyr? 2146 01:24:57,310 --> 01:24:57,851 >> MYFYRIWR: Ydw. 2147 01:24:57,851 --> 01:24:59,480 2148 01:24:59,480 --> 01:25:02,170 >> DAVIN: Felly, os yw hyn yn yr uchafswm gwerthfawrogi y gallai fod o bosibl fod yn, 2149 01:25:02,170 --> 01:25:03,175 mae'n mynd i fod yn 1. 2150 01:25:03,175 --> 01:25:04,122 2151 01:25:04,122 --> 01:25:06,330 Ac yna mae hyn yn unig yw gwahaniaeth rhwng y ddau. 2152 01:25:06,330 --> 01:25:11,410 Ychwanegu ar, felly mae hyn yn mynd i ddychwelyd hap. 2153 01:25:11,410 --> 01:25:15,000 2154 01:25:15,000 --> 01:25:18,620 Ac yn yr achos gornel sy'n drand yn rhoi i chi yn ôl 1, 2155 01:25:18,620 --> 01:25:20,970 Bydd ar hap yn unig yn effeithiol yn cael ei b. 2156 01:25:20,970 --> 01:25:22,700 Ond dyna yw'r uchafswm y gall fod. 2157 01:25:22,700 --> 01:25:27,420 Felly, os yw'n mynd i fod yn llai na hynny, felly gadewch i ni ddweud bod ei hoffi 0.9, 2158 01:25:27,420 --> 01:25:31,080 felly, yna 0.9 gwaith b minws mae yn mynd i fod yn llai 2159 01:25:31,080 --> 01:25:33,230 na'r gwahaniaeth rhwng b minws a. 2160 01:25:33,230 --> 01:25:35,830 >> Ac yna, os ydych yn ychwanegu bod ymlaen i, yna y gwerth yn 2161 01:25:35,830 --> 01:25:38,986 mynd i fod yn fwy na, gan fod eich bod yn ychwanegu rhywbeth arno, 2162 01:25:38,986 --> 01:25:40,360 ond mae'n mynd i fod yn llai na b. 2163 01:25:40,360 --> 01:25:41,430 2164 01:25:41,430 --> 01:25:44,420 Felly, rydych chi'n mynd i gael ar hap rif, oherwydd eich bod yn ffonio drand. 2165 01:25:44,420 --> 01:25:48,000 A bod y rand, y rhif ar hap yw mynd i fod yn rhywle yn y canol a 2166 01:25:48,000 --> 01:25:49,342 a b. 2167 01:25:49,342 --> 01:25:50,780 A yw hynny'n gwneud synnwyr? 2168 01:25:50,780 --> 01:25:52,990 >> ROB: Dim ond i roi yn rhifau concrid, felly 2169 01:25:52,990 --> 01:25:55,450 gadewch i ni ddweud ein bod yn awyddus i ddewis rhif ar hap rhwng 7 a 10. 2170 01:25:55,450 --> 01:25:56,960 Felly b minws a yw ein dewis. 2171 01:25:56,960 --> 01:26:00,150 Felly, mae ystod o dri rhifau rydym am i ddewis ohonynt. 2172 01:26:00,150 --> 01:26:03,290 Ac yna lluosi bod rhwng 0 a 1 1, 2173 01:26:03,290 --> 01:26:07,430 os yw hynny wedyn yn rhoi i ni some-- gadewch i ni yn dweud bod yn rhoi i ni 1.5. 2174 01:26:07,430 --> 01:26:10,670 >> 1.5 Yna, rydym eisiau mynd 7-10. 2175 01:26:10,670 --> 01:26:14,470 1.5 Felly, yn ogystal â 7 yn dod â ni yn ôl i mewn i'n 7 i 10 amrediad. 2176 01:26:14,470 --> 01:26:17,580 Ac yna rydym yn storio tu mewn cyfanrif, felly mae'n cwtogi i lawr i 8. 2177 01:26:17,580 --> 01:26:18,790 Ac yna rydym yn unig yn dychwelyd hynny. 2178 01:26:18,790 --> 01:26:21,310 Felly b minws a yw ein dewis. 2179 01:26:21,310 --> 01:26:25,770 a shifftiau i fyny i mewn i'r rhifau ein bod am o fewn yr ystod honno. 2180 01:26:25,770 --> 01:26:30,540 Felly, rhwng 7 a 10, ac yna rydym yn yn gallu dychwelyd yr hyn yr ydym yn y pen draw. 2181 01:26:30,540 --> 01:26:32,684 >> DAVIN: Yeah, 'n glws. 2182 01:26:32,684 --> 01:26:34,470 >> ROB: Diolch yn fawr. 2183 01:26:34,470 --> 01:26:35,628 >> DAVIN: Yeah, beth sydd i fyny? 2184 01:26:35,628 --> 01:26:39,746 >> MYFYRIWR: A ydym yn rhedeg i unrhyw fath o Gwallau ASCII wrth we're-- os drand yw 2185 01:26:39,746 --> 01:26:40,996 dychwelyd fflôt [Anghlywadwy]. 2186 01:26:40,996 --> 01:26:42,470 2187 01:26:42,470 --> 01:26:45,360 >> Felly, yn union fel y dywedodd Rob,: ROB gan nad ar hap yn int, 2188 01:26:45,360 --> 01:26:47,080 felly bydd drand yn arnofio. 2189 01:26:47,080 --> 01:26:48,470 Felly, ac yna mae'n lluosi allan. 2190 01:26:48,470 --> 01:26:50,507 Ac efallai y byddwch yn cael rhywfaint o math o rifau arnofio. 2191 01:26:50,507 --> 01:26:51,840 Ac yna mae'n mynd i gwtogi'r amser. 2192 01:26:51,840 --> 01:26:52,339 >> MYFYRIWR: OK. 2193 01:26:52,339 --> 01:26:53,019 DAVIN: Yeah. 2194 01:26:53,019 --> 01:26:56,060 ROB: Ac os yw'r compiler oedd i rybuddio chi am, fel, colli manwl gywirdeb, 2195 01:26:56,060 --> 01:26:58,986 dim ond taflu i int mewn yno, ac yna mae'n dda. 2196 01:26:58,986 --> 01:27:00,398 2197 01:27:00,398 --> 01:27:00,898 DAVIN: Ie? 2198 01:27:00,898 --> 01:27:02,332 2199 01:27:02,332 --> 01:27:04,722 >> MYFYRIWR: A fyddai'n cael y yr un tebygolrwydd o gael, 2200 01:27:04,722 --> 01:27:06,156 fel, b neu [Anghlywadwy]? 2201 01:27:06,156 --> 01:27:08,080 2202 01:27:08,080 --> 01:27:10,980 >> ROB: Felly yw-- fy mod mewn gwirionedd wondering-- yw RandomInt tybiedig 2203 01:27:10,980 --> 01:27:14,362 bod nifer o i lai na b? 2204 01:27:14,362 --> 01:27:16,820 Fel, os yw'n rhwng 7 a 10, beth yw'r posibiliadau? 2205 01:27:16,820 --> 01:27:18,454 7, 8, a 9, neu 7, 8, 9, 10? 2206 01:27:18,454 --> 01:27:19,120 DAVIN: wyf yn anghofio. 2207 01:27:19,120 --> 01:27:19,880 Ar y broblem set-- 2208 01:27:19,880 --> 01:27:20,570 >> ROB: Rwy'n credu ei fod yn 7, 8, 9. 2209 01:27:20,570 --> 01:27:22,785 >> DAVIN: Mae'n dweud un yn benodol gynhwysol ac un yn unigryw. 2210 01:27:22,785 --> 01:27:23,110 >> ROB: Yeah. 2211 01:27:23,110 --> 01:27:23,670 >> DAVIN: Ond dw don't-- Rwy'n not-- 2212 01:27:23,670 --> 01:27:25,878 >> ROB: Felly, yr wyf yn meddwl y rhain yn nad ydynt wedi'u cynnwys, ac os felly, 2213 01:27:25,878 --> 01:27:28,152 mae 'na cyfartal tebygolrwydd o 7, 8, a 9. 2214 01:27:28,152 --> 01:27:29,360 Does dim tebygolrwydd o 10. 2215 01:27:29,360 --> 01:27:31,770 2216 01:27:31,770 --> 01:27:32,270 DAVIN: Ie? 2217 01:27:32,270 --> 01:27:33,395 MYFYRIWR: Mae gen i gwestiwn. 2218 01:27:33,395 --> 01:27:38,090 Rydym am ddiffinio swyddogaeth dychwelyd nid un gwerth, ond arae. 2219 01:27:38,090 --> 01:27:41,020 Yna beth fyddai'r cystrawen ar ôl dychwelyd? 2220 01:27:41,020 --> 01:27:44,604 >> DAVIN: OK, felly yna rydych would-- ar ôl dychwelyd? 2221 01:27:44,604 --> 01:27:47,020 Felly, gadewch i ni ddweud eich bod wedi datgan amrywiaeth rhywle i fyny yno. 2222 01:27:47,020 --> 01:27:49,708 Yna byddech yn unig yn dychwelyd enw'r arae. 2223 01:27:49,708 --> 01:27:50,676 >> MYFYRIWR: Iawn, diolch i chi. 2224 01:27:50,676 --> 01:27:51,718 Yna, dim ond dychwelyd gyda a-- 2225 01:27:51,718 --> 01:27:52,759 DAVIN: O aros, felly sori. 2226 01:27:52,759 --> 01:27:54,620 Y cwestiwn oedd sut ydych chi'n dychwelyd arae. 2227 01:27:54,620 --> 01:27:56,170 >> ROB: Er nad y gallai yn cael ei ddatgan amrywiaeth 2228 01:27:56,170 --> 01:27:57,260 ar y corn neu unrhyw beth fel 'na. 2229 01:27:57,260 --> 01:27:59,510 Byddai'n rhaid iddo fod yn rhywbeth malloced, gan fod malloc 2230 01:27:59,510 --> 01:28:01,610 yw sut yr ydych yn symud o gwmpas dyraniad cof awtomatig. 2231 01:28:01,610 --> 01:28:02,109 >> DAVIN: Ydw. 2232 01:28:02,109 --> 01:28:03,433 2233 01:28:03,433 --> 01:28:04,933 ROB: Sut y byddwch yn ei gael o amgylch cwmpas lleol. 2234 01:28:04,933 --> 01:28:09,670 2235 01:28:09,670 --> 01:28:11,550 >> DAVIN: Ond byddech dim ond yn dychwelyd ei name-- 2236 01:28:11,550 --> 01:28:17,890 >> MYFYRIWR: [Anghlywadwy] nid yw'n un gwerth, er enghraifft, dau rif, felly 2237 01:28:17,890 --> 01:28:18,390 [Anghlywadwy]. 2238 01:28:18,390 --> 01:28:19,590 >> DAVIN: Ni allwch ddychwelyd rhif lluosog. 2239 01:28:19,590 --> 01:28:20,850 Nid ydych yn gallu, fel, return-- 2240 01:28:20,850 --> 01:28:23,630 >> MYFYRIWR: soniais am ddychwelyd arae neu rywbeth fel 'na. 2241 01:28:23,630 --> 01:28:26,050 >> DAVIN: Yeah, felly y cwestiwn yw gallaf ddychwelyd gwerthoedd lluosog. 2242 01:28:26,050 --> 01:28:27,460 Ni allwch ddychwelyd gwerthoedd lluosog. 2243 01:28:27,460 --> 01:28:30,270 Ni allwch chi, fel, yn dychwelyd wedyn dychwelyd b neu rywbeth fel 'na. 2244 01:28:30,270 --> 01:28:32,710 Oherwydd ar ôl i chi ddychwelyd, rydych dychwelyd allan o'r swyddogaeth. 2245 01:28:32,710 --> 01:28:35,790 Ac yna bydd y swyddogaeth yn cael ei wneud, a fel y dywedodd Rob, yw ar y pentwr. 2246 01:28:35,790 --> 01:28:38,260 >> Felly yr holl cof mai dim ond yn cael dychwelyd i'r cyfrifiadur. 2247 01:28:38,260 --> 01:28:40,025 Mae popeth yn cael ei anghofio, yn y bôn. 2248 01:28:40,025 --> 01:28:41,480 2249 01:28:41,480 --> 01:28:44,430 Felly os ydych am ddychwelyd lluosog gwerthoedd, rhaid i chi ddychwelyd arae, 2250 01:28:44,430 --> 01:28:45,971 A'r ffordd yr ydych yn gwneud hynny yn mallocing. 2251 01:28:45,971 --> 01:28:48,780 Ac yna byddech yn dychwelyd x fel 'na. 2252 01:28:48,780 --> 01:28:50,280 Yn y bôn, 'ch jyst yn dychwelyd yr enw. 2253 01:28:50,280 --> 01:28:51,620 A phan fyddwch yn dychwelyd rhywbeth fel hyn, eich bod yn 2254 01:28:51,620 --> 01:28:53,200 Nid mewn gwirionedd yn dychwelyd y gwerth. 2255 01:28:53,200 --> 01:28:55,430 >> Felly, gadewch i ni ddweud i chi ei storio gwerthoedd mewn arae. 2256 01:28:55,430 --> 01:28:57,910 Dydych chi ddim mewn gwirionedd dychwelyd y gwerthoedd hynny. 2257 01:28:57,910 --> 01:29:01,515 Fel, os wyf dychwelodd yn int, rwy'n wir yn dychwelyd copïau o'r gwerthoedd. 2258 01:29:01,515 --> 01:29:02,017 2259 01:29:02,017 --> 01:29:03,850 Ond os fi oedd i ddychwelyd rhywbeth fel hyn, 2260 01:29:03,850 --> 01:29:06,450 Im 'yn dychwelyd geirda i'r gwerthoedd hynny. 2261 01:29:06,450 --> 01:29:09,090 Felly rwy'n dychwelyd, yn y bôn, a cyfeiriad cof i'r gwerthoedd. 2262 01:29:09,090 --> 01:29:10,079 A yw hynny'n gwneud synnwyr? 2263 01:29:10,079 --> 01:29:10,620 MYFYRIWR: Ydw. 2264 01:29:10,620 --> 01:29:11,120 DAVIN: Nice. 2265 01:29:11,120 --> 01:29:12,760 2266 01:29:12,760 --> 01:29:13,410 Ie? 2267 01:29:13,410 --> 01:29:15,430 >> MYFYRIWR: Pan fyddwch yn gan ddefnyddio drand dros yma, 2268 01:29:15,430 --> 01:29:17,660 oes rhaid i chi roi srand cyn hynny? 2269 01:29:17,660 --> 01:29:20,320 >> DAVIN: Na, na, nid wyf yn credu hynny. 2270 01:29:20,320 --> 01:29:23,040 >> ROB: Yeah, felly a oes gennych i ddweud unrhyw beth am srand? 2271 01:29:23,040 --> 01:29:26,900 'R ball o chi byth yn dweud srand o gwbl yw dim ond gwneud srand o null. 2272 01:29:26,900 --> 01:29:29,350 Felly drand ar ei waith ewyllys ei hun. 2273 01:29:29,350 --> 01:29:33,759 A bydd yn hadau yn awtomatig gyda yr amser presennol, yr hyn y mae'n ei ddefnyddio. 2274 01:29:33,759 --> 01:29:35,175 2275 01:29:35,175 --> 01:29:35,675 DAVIN: Ie? 2276 01:29:35,675 --> 01:29:40,950 MYFYRIWR: Ydych chi [Anghlywadwy] gyda'r niferoedd? 2277 01:29:40,950 --> 01:29:42,570 DAVIN: Ydw, y gallwch. 2278 01:29:42,570 --> 01:29:46,770 MYFYRIWR: Felly gallech yn dweud, fel, 4 gwaith 2. 2279 01:29:46,770 --> 01:29:50,280 Y peth yw, ni allwch gymryd yn ganiataol yna int yw pedwar bytes. 2280 01:29:50,280 --> 01:29:51,020 Yr only-- 2281 01:29:51,020 --> 01:29:53,830 >> DAVIN: Yr wyf yn golygu, ar gyfer y cwis y gallwch. 2282 01:29:53,830 --> 01:29:54,830 [Chwerthin] 2283 01:29:54,830 --> 01:29:55,780 >> ROB: Mm, dim. 2284 01:29:55,780 --> 01:29:56,780 DAVIN: Ie, ie gallwch. 2285 01:29:56,780 --> 01:30:00,197 Os byddant yn gofyn i chi pa mor fawr mae int yw, nad ydych yn gallu bod, fel, pedwar neu wyth. 2286 01:30:00,197 --> 01:30:02,030 ROB: O, felly os yw'r cwestiwn yn benodol, 2287 01:30:02,030 --> 01:30:04,857 fel, os yw'n broblem codio, dylech ddweud maint y int. 2288 01:30:04,857 --> 01:30:06,690 Os yw'n dabl, neu'n mae'n dweud faint o bytes, 2289 01:30:06,690 --> 01:30:08,808 Ni ddylech lenwi maint y ints. 2290 01:30:08,808 --> 01:30:11,278 >> MYFYRWYR: [Chwerthin] 2291 01:30:11,278 --> 01:30:18,210 2292 01:30:18,210 --> 01:30:20,580 >> DAVIN: Iawn, felly pam mae maint o int bwysig yma? 2293 01:30:20,580 --> 01:30:23,085 Felly, fel, os ydym yn mynd i 32-bit prosesydd neu rywbeth fel 'na, 2294 01:30:23,085 --> 01:30:24,300 Yna, mae'n mynd i fod yn bedwar bytes. 2295 01:30:24,300 --> 01:30:26,342 Ond ar rai o'r mwyaf newydd pethau, gallai fod yn beth? 2296 01:30:26,342 --> 01:30:27,383 Gallai fod yn wyth, dde? 2297 01:30:27,383 --> 01:30:30,550 Felly this-- os ydych yn unig cod caled pedwar, Yna, ar rai peiriannau, bydd yn gweithio. 2298 01:30:30,550 --> 01:30:32,180 Mae rhai peiriannau, ni fydd yn gweithio. 2299 01:30:32,180 --> 01:30:35,270 Ond os ar y cwis rydym yn fel pa mor fawr yw int? 2300 01:30:35,270 --> 01:30:35,770 Rhowch pedwar. 2301 01:30:35,770 --> 01:30:38,710 2302 01:30:38,710 --> 01:30:39,210 ROB: Iawn. 2303 01:30:39,210 --> 01:30:39,790 DAVIN: Yeah? 2304 01:30:39,790 --> 01:30:43,192 MYFYRIWR: Felly, oherwydd ein bod yn datgan [Anghlywadwy] y tu mewn i swyddogaeth, 2305 01:30:43,192 --> 01:30:45,622 dylem roi 3 y tu mewn y swyddogaeth honno? 2306 01:30:45,622 --> 01:30:46,907 Neu gallwn ei defnyddio y tu allan? 2307 01:30:46,907 --> 01:30:48,740 DAVIN: Gallwch ei ddefnyddio y tu allan i'r swyddogaeth. 2308 01:30:48,740 --> 01:30:49,890 Felly, mae'n gofyn am ddim. 2309 01:30:49,890 --> 01:30:51,700 >> MYFYRIWR: Colli trac o ble [Anghlywadwy]. 2310 01:30:51,700 --> 01:30:54,720 >> ROB: O, nid yw'r rhad ac am ddim yn happen-- mae hynny'n rhan o'r hud malloc 2311 01:30:54,720 --> 01:30:57,220 yw nad ydych yn cyfyngu i gwmpas lleol. 2312 01:30:57,220 --> 01:31:00,700 Mae gennych reolaeth lawn dros pa mor hir yw eich newidynnau yn byw. 2313 01:31:00,700 --> 01:31:05,380 Felly, rydym yn galw malloc fan hyn, y gallai fod yn swyddogaeth hollol ar wahân. 2314 01:31:05,380 --> 01:31:08,670 Gallai fod yn 10 awr yn ddiweddarach ein bod o'r diwedd yn galw rhad ac am ddim. 2315 01:31:08,670 --> 01:31:11,764 >> DAVIN: Felly, er enghraifft, fel, cwpl wythnosau o hyn pan fyddwch yn olaf 2316 01:31:11,764 --> 01:31:13,680 gwneud eich sillafu geiriadur psets, rydych yn mynd 2317 01:31:13,680 --> 01:31:16,410 i gael rhywfaint o swyddogaeth sydd yn creu tunnell o nodau. 2318 01:31:16,410 --> 01:31:18,630 Felly, rydych chi'n mallocing tunnell o nodau mewn swyddogaeth hon. 2319 01:31:18,630 --> 01:31:20,670 Ac yna yn ddiweddarach mewn swyddogaeth ar wahân, rydych yn 2320 01:31:20,670 --> 01:31:22,440 mynd i eisiau i ryddhau holl nodau hynny. 2321 01:31:22,440 --> 01:31:25,740 Felly, gallwch llythrennol dim ond pasio i ddim pwyntydd, felly, cyfeiriad cof 2322 01:31:25,740 --> 01:31:26,684 i hyn yr ydych malloced. 2323 01:31:26,684 --> 01:31:27,600 A bydd hynny yn iawn. 2324 01:31:27,600 --> 01:31:29,725 Nid oes rhaid i chi am ddim, fel, yn yr un swyddogaeth. 2325 01:31:29,725 --> 01:31:30,449 Ie? 2326 01:31:30,449 --> 01:31:36,197 >> MYFYRIWR: Felly a malloc amrywiol [Anghlywadwy] y tu allan? 2327 01:31:36,197 --> 01:31:37,384 Yw bod yr hyn rydych yn ei ddweud? 2328 01:31:37,384 --> 01:31:38,300 DAVIN: Arhoswch, yn dweud hynny? 2329 01:31:38,300 --> 01:31:38,800 Mae'n ddrwg gennym. 2330 01:31:38,800 --> 01:31:42,300 >> MYFYRIWR: Os yw newidyn malloc Gall fod am ddim unrhyw le yn y cod, 2331 01:31:42,300 --> 01:31:44,800 yna gallant gael mynediad unrhyw le yn y cod? 2332 01:31:44,800 --> 01:31:45,800 Allwch chi eu cadw'n lleol? 2333 01:31:45,800 --> 01:31:47,880 >> DAVIN: O, gofynnodd hi, fel, y newidyn, like-- 2334 01:31:47,880 --> 01:31:51,300 2335 01:31:51,300 --> 01:31:55,510 >> ROB: Felly, mae angen i chi gael rhyw fath o gyfeirio 2336 01:31:55,510 --> 01:31:57,220 i bloc y malloc yn y cof. 2337 01:31:57,220 --> 01:31:58,540 Felly dyma, rydym yn dychwelyd x. 2338 01:31:58,540 --> 01:31:59,040 MYFYRIWR: Oh. 2339 01:31:59,040 --> 01:32:01,920 ROB: Pe na baem yn dychwelyd x yma, ac mae hyn yn ddim ond yn ddi-rym, 2340 01:32:01,920 --> 01:32:04,550 yna byddai gennym unrhyw fynediad at y pwyntydd a malloced, 2341 01:32:04,550 --> 01:32:05,920 ac mae'n gollwng cof. 2342 01:32:05,920 --> 01:32:06,690 >> MYFYRIWR: OK. 2343 01:32:06,690 --> 01:32:10,010 >> DAVIN: Felly fel, gadewch i ni ddweud eich wedi hyn, fel, dde yma. 2344 01:32:10,010 --> 01:32:10,510 ROB: Na 2345 01:32:10,510 --> 01:32:13,430 DAVIN: Yn fy mhrif swyddogaeth, ni allaf ffoniwch x hwn a bod yn, fel, OK, 2346 01:32:13,430 --> 01:32:14,645 yn y swyddogaeth hon, yr wyf yn gwneud hyn. 2347 01:32:14,645 --> 01:32:14,960 >> ROB: Iawn. 2348 01:32:14,960 --> 01:32:17,790 >> DAVIN: Felly, yr wyf i'n mynd i alw x mewn, fel, prif neu rywbeth fel 'na. 2349 01:32:17,790 --> 01:32:18,540 Ni allwch wneud hynny. 2350 01:32:18,540 --> 01:32:19,600 Rydych yn mynd i ddychwelyd rhywbeth. 2351 01:32:19,600 --> 01:32:21,000 Ond beth ydych chi'n mynd i ddychwelyd? 2352 01:32:21,000 --> 01:32:22,130 Rydych yn mynd i ddychwelyd cyfeiriad cof. 2353 01:32:22,130 --> 01:32:25,130 Ac oherwydd eich bod yn dychwelyd atgof cyfeiriad, y gellir cael mynediad mewn mannau eraill. 2354 01:32:25,130 --> 01:32:27,262 2355 01:32:27,262 --> 01:32:28,255 Unrhyw mwy o gwestiynau? 2356 01:32:28,255 --> 01:32:28,755 Ie? 2357 01:32:28,755 --> 01:32:31,213 >> MYFYRIWR: A yw'r swyddogaeth uchod sef siec am [Anghlywadwy]? 2358 01:32:31,213 --> 01:32:33,270 2359 01:32:33,270 --> 01:32:35,005 >> DAVIN: Nid Pam fod angen i mi wneud hynny? 2360 01:32:35,005 --> 01:32:35,880 MYFYRIWR: [Anghlywadwy]. 2361 01:32:35,880 --> 01:32:37,755 DAVIN: Oherwydd eich bod yn Nid yw mallocing unrhyw beth. 2362 01:32:37,755 --> 01:32:39,640 Felly mae'n not-- yeah, 'i' nid fel s llinyn. 2363 01:32:39,640 --> 01:32:41,160 Mae'n pwyntydd rhywle. 2364 01:32:41,160 --> 01:32:42,951 Mae'r rhain yn unig werthoedd. 2365 01:32:42,951 --> 01:32:43,450 MYFYRIWR: OK. 2366 01:32:43,450 --> 01:32:43,949 DAVIN: Yeah. 2367 01:32:43,949 --> 01:32:47,600 2368 01:32:47,600 --> 01:32:48,470 Unrhyw beth arall? 2369 01:32:48,470 --> 01:32:48,970 ROB: Yep? 2370 01:32:48,970 --> 01:32:50,386 MYFYRIWR: Ond pan fyddwch [Anghlywadwy]? 2371 01:32:50,386 --> 01:32:55,050 2372 01:32:55,050 --> 01:32:58,690 >> ROB: Felly, er mwyn rhyddhau y cof, byddem yn ei ddweud yma. 2373 01:32:58,690 --> 01:33:01,350 Felly x yw ein pwyntydd i y bloc o cof. 2374 01:33:01,350 --> 01:33:02,845 Rydym yn rhad ac am ddim y pwyntydd. 2375 01:33:02,845 --> 01:33:04,470 Ac ni fyddem o reidrwydd yn ei wneud yma. 2376 01:33:04,470 --> 01:33:05,390 Gallwn ei wneud yn unrhyw le. 2377 01:33:05,390 --> 01:33:10,400 Ond byddwch ond yn galw am ddim ar rhywbeth sy'n malloc dychwelyd. 2378 01:33:10,400 --> 01:33:12,940 Felly malloc, yma, dychwelodd beth sy'n cael ei storio yn x. 2379 01:33:12,940 --> 01:33:14,802 Felly gallwn ffoniwch am ddim ar x. 2380 01:33:14,802 --> 01:33:18,730 2381 01:33:18,730 --> 01:33:20,556 Unrhyw gwestiynau diwethaf? 2382 01:33:20,556 --> 01:33:21,701 >> DAVIN: Unrhyw gwestiynau diwethaf? 2383 01:33:21,701 --> 01:33:22,200 Yeah? 2384 01:33:22,200 --> 01:33:25,152 >> MYFYRIWR: Mae'n ddrwg gennym, gallwch ail-esbonio pam y byddech yn rhad ac am ddim i mewn 'na? 2385 01:33:25,152 --> 01:33:26,630 Pam [Anghlywadwy]? 2386 01:33:26,630 --> 01:33:27,774 >> DAVIN: Ar gyfer fan hyn? 2387 01:33:27,774 --> 01:33:29,109 >> MYFYRIWR: Yeah, fel dde ar ôl. 2388 01:33:29,109 --> 01:33:30,900 DAVIN: Yr ydych yn ôl pob tebyg ddim eisiau rhad ac am ddim yma. 2389 01:33:30,900 --> 01:33:31,630 ROB: Yr ydych nid yn ôl pob tebyg fyddai. 2390 01:33:31,630 --> 01:33:33,060 DAVIN: Yeah, y byddai hyn yn gwneud dim. 2391 01:33:33,060 --> 01:33:35,220 Byddai hyn, fel, creu cof, yn gwneud pethau iddo, 2392 01:33:35,220 --> 01:33:37,390 ac yna yn syth anghofio am y peth, yeah. 2393 01:33:37,390 --> 01:33:39,850 >> ROB: Ond efallai y byddwn yn ei wneud, fel, mewn yma am ryw reswm. 2394 01:33:39,850 --> 01:33:43,902 Efallai y byddwn yn dweud seren int y yn hafal array dychwelyd. 2395 01:33:43,902 --> 01:33:47,900 Gwnewch ychydig o stwff gyda y, efallai argraffwch y cynnwys. 2396 01:33:47,900 --> 01:33:49,350 Ac yna, yn olaf, rydym yn ei wneud. 2397 01:33:49,350 --> 01:33:50,626 Gallwn rhad ac am ddim y. 2398 01:33:50,626 --> 01:33:51,501 MYFYRIWR: [Anghlywadwy]. 2399 01:33:51,501 --> 01:33:57,839 2400 01:33:57,839 --> 01:33:59,005 DAVIN: Ddylwn i sgrolio i lawr? 2401 01:33:59,005 --> 01:34:00,445 Diolch. 2402 01:34:00,445 --> 01:34:00,945 ROB: Nice. 2403 01:34:00,945 --> 01:34:02,400 2404 01:34:02,400 --> 01:34:03,646 >> DAVIN: Iawn, dyna ni. 2405 01:34:03,646 --> 01:34:04,520 ROB: pob hawl, yn dda. 2406 01:34:04,520 --> 01:34:05,070 Pob lwc. 2407 01:34:05,070 --> 01:34:06,800 >> DAVIN: Os oes gennych gwestiynau, e-bostiwch ni. 2408 01:34:06,800 --> 01:34:08,670 Pob lwc. 2409 01:34:08,670 --> 01:34:10,283