1 00:00:00,000 --> 00:00:03,000 [Powered by Google Translate] [Seachtain 4] 2 00:00:03,000 --> 00:00:05,000 [David J. MALAN] [Ollscoil Harvard] 3 00:00:05,000 --> 00:00:08,000 [Tá sé seo CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:12,000 >> Ceart go leor, is é seo CS50, agus is é seo tús na seachtaine 4, 5 00:00:12,000 --> 00:00:16,000 agus tá sé seo ar cheann de na halgartaim a shórtáil slowest is féidir. 6 00:00:16,000 --> 00:00:19,000 A bhí ar cheann go faire againn ach ann? 7 00:00:19,000 --> 00:00:24,000 Ba é sin saghas mboilgeog, d'fhonn mór O (n ^ 2) tsuim +, 8 00:00:24,000 --> 00:00:28,000 agus go deimhin nach bhfuil muid na cinn amháin sa domhan a bhfuil cuma ar an eolas 9 00:00:28,000 --> 00:00:30,000 cén saghas mboilgeog, nó a chuid ama ag rith. 10 00:00:30,000 --> 00:00:33,000 Go deimhin, ba é seo agallamh le Eric Schmidt de Google 11 00:00:33,000 --> 00:00:45,000 agus iar-seanadóir Barack Obama ach cúpla bliain ó shin. 12 00:00:45,000 --> 00:00:48,000 >> Anois, Seanadóir, tá tú anseo ag Google, 13 00:00:48,000 --> 00:00:54,000 agus is maith liom chun smaoineamh ar an uachtaránacht mar agallaimh poist. 14 00:00:54,000 --> 00:00:58,000 Anois, tá sé deacair post a fháil mar uachtarán, agus go bhfuil tú ag dul tríd an rigors anois. 15 00:00:58,000 --> 00:01:00,000 Tá sé freisin deacair post a fháil ag Google. 16 00:01:00,000 --> 00:01:05,000 Táimid ceisteanna agat, agus iarraimid ar ár gceisteanna iarrthóirí, 17 00:01:05,000 --> 00:01:10,000 agus tá an ceann seo ó Larry Schwimmer. 18 00:01:10,000 --> 00:01:14,000 Cheapann tú guys mé ag kidding? Tá sé ceart anseo. 19 00:01:14,000 --> 00:01:18,000 Cad é an bealach is éifeachtaí a shórtáil milliún 32-giotán slánuimhreacha? 20 00:01:18,000 --> 00:01:21,000 [Gáire] 21 00:01:21,000 --> 00:01:24,000 Well- 22 00:01:24,000 --> 00:01:26,000 Tá brón orm. >> No, no, no, no. 23 00:01:26,000 --> 00:01:34,000 Sílim go mbeadh an saghas mboilgeog a bheith ar an bealach mícheart chun dul. 24 00:01:34,000 --> 00:01:39,000 >> Come on, a dúirt leis seo? 25 00:01:39,000 --> 00:01:43,000 An tseachtain seo caite cuimhne thóg muid sos ó cód, ar a laghad ar feadh lae, 26 00:01:43,000 --> 00:01:46,000 agus thosaigh sé ag díriú ar roinnt smaointe leibhéal níos airde agus fadhbanna a réiteach níos ginearálta 27 00:01:46,000 --> 00:01:49,000 i gcomhthéacs an cuardach agus ag sórtáil, 28 00:01:49,000 --> 00:01:53,000 agus thugamar isteach rud éigin nach raibh againn Lí an t-ainm ar an tseachtain seo caite, 29 00:01:53,000 --> 00:01:56,000 ach nodaireacht asymptotic, an O Big, an Omega Mór, 30 00:01:56,000 --> 00:02:00,000 agus uaireanta bhí na Big Téite nodaireacht, agus tá siad seo ach ar bhealaí 31 00:02:00,000 --> 00:02:02,000 cur síos ar an am a reáchtáil halgartaim, 32 00:02:02,000 --> 00:02:05,000 cé mhéad ama a thógann sé chun algartaim a rith. 33 00:02:05,000 --> 00:02:08,000 >> Agus is féidir leat chun cuimhne go bhfuil labhair tú faoin am a reáchtáil i dtéarmaí an méid 34 00:02:08,000 --> 00:02:11,000 an ionchur, a dtugaimid go ginearálta n, cuma cad is féidir an fhadhb a bheith, 35 00:02:11,000 --> 00:02:13,000 áit a bhfuil n líon na ndaoine sa seomra, 36 00:02:13,000 --> 00:02:17,000 líon na leathanach i leabhar teileafóin, agus táimid thosaigh rudaí a scríobh amach 37 00:02:17,000 --> 00:02:21,000 cosúil O (n ^ 2) nó O (n) nó O (n log n), 38 00:02:21,000 --> 00:02:24,000 agus fiú nuair nach raibh an mata ag obair go leor amach go breá 39 00:02:24,000 --> 00:02:28,000 agus bhí sé n ² - n / 2 nó rud éigin mar sin 40 00:02:28,000 --> 00:02:31,000 ba mhaith linn a ionad caith díreach amach roinnt de na téarmaí d'ord níos ísle, 41 00:02:31,000 --> 00:02:34,000 agus an spreagadh is go ba mhaith linn i ndáiríre ar 42 00:02:34,000 --> 00:02:37,000 saghas slí d'fhonn meastóireacht a 43 00:02:37,000 --> 00:02:39,000 ar fheidhmíocht na gclár nó i gcomhlíonadh halgartaim 44 00:02:39,000 --> 00:02:42,000 go bhfuil ag deireadh an lae aon rud a dhéanamh, mar shampla, 45 00:02:42,000 --> 00:02:45,000 leis an luas ar do ríomhaire sa lá atá inniu. 46 00:02:45,000 --> 00:02:47,000 >> Mar shampla, má tá tú i bhfeidhm saghas mboilgeog, 47 00:02:47,000 --> 00:02:50,000 nó is féidir leat i bhfeidhm merge sórtáil nó roghnú saghas ar an lae inniu ríomhaire, 48 00:02:50,000 --> 00:02:53,000 ar 2 GHz ríomhaire, agus ritheann tú é, 49 00:02:53,000 --> 00:02:56,000 agus tógann sé roinnt ar líon na soicind, an bhliain seo chugainn níl GHz 3 50 00:02:56,000 --> 00:02:59,000 nó a d'fhéadfadh a 4 GHz ríomhaire, agus tú éileamh ansin go "Wow, mo algartam 51 00:02:59,000 --> 00:03:03,000 anois dhá uair chomh tapa, "nuair a chuirtear an ní go léir an cás. 52 00:03:03,000 --> 00:03:06,000 Tá sé díreach tar éis na crua-earraí gotten níos tapúla, ach do ríomhaire 53 00:03:06,000 --> 00:03:10,000 nach bhfuil, agus mar sin ba mhaith linn i ndáiríre le caith amach rudaí cosúil le 54 00:03:10,000 --> 00:03:13,000 iolraithe de 2 nó iolraithe de 3 nuair a thagann sé síos 55 00:03:13,000 --> 00:03:17,000 cé chomh tapa nó conas mall é algartam agus i ndáiríre ach ag díriú 56 00:03:17,000 --> 00:03:20,000 ar n nó roinnt fachtóir de, 57 00:03:20,000 --> 00:03:24,000 roinnt cumhachta sin mar atá i gcás na cineál ón tseachtain seo caite. 58 00:03:24,000 --> 00:03:27,000 Agus cuimhne go le cabhair ó saghas merge 59 00:03:27,000 --> 00:03:31,000 bhí muid in ann sin a dhéanamh i bhfad níos fearr ná mar a shórtáil mboilgeog agus sórtáil roghnú 60 00:03:31,000 --> 00:03:33,000 agus sórtáil isteach fiú. 61 00:03:33,000 --> 00:03:36,000 >> Fuair ​​muid síos go dtí n logáil n, agus arís, 62 00:03:36,000 --> 00:03:39,000 thabhairt chun cuimhne go dtagraíonn log n go ginearálta le rud éigin a fhásann 63 00:03:39,000 --> 00:03:43,000 níos moille ansin n, agus mar sin n logáil n dá bhrí sin bhí i bhfad maith 64 00:03:43,000 --> 00:03:45,000 toisc go raibh sé níos lú ná ² n. 65 00:03:45,000 --> 00:03:47,000 Ach a bhaint amach n logáil n le saghas merge 66 00:03:47,000 --> 00:03:51,000 cad a bhí an só bunúsach de smaoineamh go raibh muid a ghiaráil 67 00:03:51,000 --> 00:03:54,000 go giaráilte againn chomh maith ar ais i seachtain 0? 68 00:03:54,000 --> 00:03:58,000 Conas a raibh muid ag dul i ngleic leis an bhfadhb sórtáil cleverly le saghas merge? 69 00:03:58,000 --> 00:04:04,000 Cad é an léargas eochair, b'fhéidir? 70 00:04:04,000 --> 00:04:07,000 Duine ar bith ar chor ar bith. 71 00:04:07,000 --> 00:04:09,000 Maith go leor, a ligean ar ghlacadh le céim siar. 72 00:04:09,000 --> 00:04:11,000 Déan cur síos ar merge sórtáil i do chuid focal féin. 73 00:04:11,000 --> 00:04:15,000 Conas a raibh sé ag obair? 74 00:04:15,000 --> 00:04:17,000 Maith go leor, beidh orainn a rámhaigh ar ais go dtí 0 seachtain. 75 00:04:17,000 --> 00:04:19,000 Maith go leor, yeah. 76 00:04:19,000 --> 00:04:22,000 [Inaudible-mac léinn] 77 00:04:22,000 --> 00:04:26,000 Maith go leor, maith, mar sin roinnte againn ar an sraith de uimhreacha i 2 píosaí. 78 00:04:26,000 --> 00:04:29,000 In eagar againn gach ceann de na píosaí, agus ansin chumasc againn orthu, 79 00:04:29,000 --> 00:04:33,000 agus atá feicthe againn an smaoineamh seo roimh ag cur le fadhb go bhfuil an mór 80 00:04:33,000 --> 00:04:36,000 agus chopping sé suas i fadhb é seo mór nó mór seo. 81 00:04:36,000 --> 00:04:38,000 >> Glaoch ar ais ar an sampla leabhar teileafóin. 82 00:04:38,000 --> 00:04:42,000 Glaoch ar ais an t-algartam féin-comhaireamh ó seachtain ó shin, 83 00:04:42,000 --> 00:04:45,000 Tugadh achoimre saghas sin a chumasadh leis an pseudocode anseo. 84 00:04:45,000 --> 00:04:48,000 Nuair atá tú a tugadh eilimintí n, an chéad go raibh sé sanity sheiceáil. 85 00:04:48,000 --> 00:04:51,000 Más rud é n <2 ní sin a dhéanamh aon ní a dhéanamh ar chor ar bith 86 00:04:51,000 --> 00:04:55,000 mar má tá n <2 n ansin, ar ndóigh 0 nó 1, 87 00:04:55,000 --> 00:04:57,000 agus mar sin má tá sé ceachtar 0 nó 1 níl aon rud a shórtáil. 88 00:04:57,000 --> 00:04:59,000 Tá tú ag déanamh. 89 00:04:59,000 --> 00:05:01,000 Tá do liosta sórtáilte cheana trivially. 90 00:05:01,000 --> 00:05:04,000 Ach a mhalairt má tá tú bhí 2 nó níos mó eilimintí dul ar aghaidh agus iad a roinnt 91 00:05:04,000 --> 00:05:06,000 i 2 leatha, chlé agus ar dheis. 92 00:05:06,000 --> 00:05:09,000 Sórtáil gach ceann de na leatha, agus ansin an leath curtha in eagar merge. 93 00:05:09,000 --> 00:05:13,000 Ach tá an fhadhb anseo go bhfuil ag an gcéad amharc mothaíonn seo cosúil tá muid ag punting. 94 00:05:13,000 --> 00:05:17,000 Is é seo an sainmhíniú ciorclach sa mhéid is go má tá mé d'iarr tú a shórtáil na heilimintí n 95 00:05:17,000 --> 00:05:22,000 agus tá tú ag insint dom "Ceart go leor, fíneáil, beidh orainn a shórtáil na heilimintí sin a n / 2 agus iad siúd a n / 2," 96 00:05:22,000 --> 00:05:27,000 ansin tá mo cheist eile ag dul a bheith "Fine, conas a dhéanann tú a shórtáil na n / 2 eilimintí?" 97 00:05:27,000 --> 00:05:30,000 >> Ach mar gheall ar struchtúr an chláir seo, 98 00:05:30,000 --> 00:05:33,000 toisc go bhfuil an cás seo bonn, mar a déarfá, 99 00:05:33,000 --> 00:05:39,000 chás seo speisialta a deir más rud é go n 00:05:42,000 Ná freagra a thabhairt leis an freagra céanna ciorclach. 101 00:05:42,000 --> 00:05:46,000 An próiseas seo, beidh sé seo cyclicity deireadh ndeireadh na dála. 102 00:05:46,000 --> 00:05:50,000 Má iarrann mé tú "Sórtáil de na gnéithe n," agus a rá leat, "Fine, a shórtáil na n / 2," 103 00:05:50,000 --> 00:05:53,000 ansin a rá leat, "Fine, saghas na n / 4, n / 8, n/16," 104 00:05:53,000 --> 00:05:56,000 deireadh thiar beidh tú a roinnt le roinnt mór go leor 105 00:05:56,000 --> 00:05:59,000 go mbainfidh tú ach 1 chlé eilimint, ag an bpointe sin is féidir leat a rá, 106 00:05:59,000 --> 00:06:02,000 "Anseo, tá anseo gné curtha in eagar amháin." 107 00:06:02,000 --> 00:06:06,000 Ansin an brilliance an algartam is suas anseo a dhíorthú as an bhfíric 108 00:06:06,000 --> 00:06:09,000 go nuair a bhíonn tú gach ceann de na liostaí seo ina n-aonar curtha in eagar, 109 00:06:09,000 --> 00:06:12,000 gach ceann acu ar a méid 1, atá cosúil le bheith useless, 110 00:06:12,000 --> 00:06:15,000 nuair a dtosaíonn tú a chumasc leo agus a chumasc leo 111 00:06:15,000 --> 00:06:19,000 a thógáil leat suas go deireadh mar a rinne Rob sa físeán liosta ar deireadh curtha in eagar. 112 00:06:19,000 --> 00:06:22,000 >> Ach síneann an smaoineamh seo i bhfad níos faide shórtáil. 113 00:06:22,000 --> 00:06:26,000 Tá an smaoineamh seo neadaithe sa chlár seo ar a dtugtar athchúrsáil, 114 00:06:26,000 --> 00:06:29,000 an smaoineamh trína bhfuil tú clár, 115 00:06:29,000 --> 00:06:32,000 agus a réiteach fadhb éigin a ghlaonn tú féin, 116 00:06:32,000 --> 00:06:36,000 nó a chur i gcomhthéacs na teangacha cláir a bhfuil tú a chomhlíonadh, 117 00:06:36,000 --> 00:06:39,000 agus d'fhonn a réiteach ar fhadhb, tá tú glaoch ar an fheidhm féin 118 00:06:39,000 --> 00:06:42,000 arís agus arís agus arís eile, ach tú an fheidhm 119 00:06:42,000 --> 00:06:44,000 ní féidir glaoch féin uair infinitely go leor. 120 00:06:44,000 --> 00:06:47,000 Faoi dheireadh tá tú chun bun amach, sin a labhairt, 121 00:06:47,000 --> 00:06:49,000 agus tá roinnt riocht bonn crua-códaithe a deir 122 00:06:49,000 --> 00:06:53,000 ag an bpointe seo stop a chur ag glaoch ort féin ionas go mbeidh an próiseas iomlán 123 00:06:53,000 --> 00:06:56,000 ar deireadh ní i ndáiríre stopadh. 124 00:06:56,000 --> 00:06:58,000 Cad a chiallaíonn sé seo i ndáiríre, go recurse? 125 00:06:58,000 --> 00:07:01,000 >> A ligean ar a fheiceáil, más féidir linn a dhéanamh simplí, mar shampla fánach le, abair, 126 00:07:01,000 --> 00:07:03,000 3 daoine a bhfuil mé suas anseo ar an stáitse, má tá duine éigin compordach. 127 00:07:03,000 --> 00:07:06,000 1, teacht ar bun, 2 agus 3. 128 00:07:06,000 --> 00:07:09,000 Má tá tú ag iarraidh 3 chun teacht suas anseo. 129 00:07:09,000 --> 00:07:12,000 Más mian leat chun seasamh ceart aice liom anseo i líne, is dócha go bhfuil an fhadhb ar láimh 130 00:07:12,000 --> 00:07:15,000 Tá an-trivially comhaireamh ar líon na ndaoine atá anseo. 131 00:07:15,000 --> 00:07:18,000 Ach frankly, tá mé tuirseach de seo go léir samplaí a chomhaireamh. 132 00:07:18,000 --> 00:07:21,000 Tá sé seo ag dul a roinnt ama a thógáil, 1, 2, agus ponc, ponc, ponc. 133 00:07:21,000 --> 00:07:23,000 Tá sé seo ag dul a ghlacadh go deo. 134 00:07:23,000 --> 00:07:25,000 B'fhearr liom ach punt an fhadhb seo ar fad le cabhair ó-cad is ainm duit? 135 00:07:25,000 --> 00:07:27,000 Sara. >> Sara, ceart go leor. 136 00:07:27,000 --> 00:07:29,000 Kelly. >> Kelly agus? 137 00:07:29,000 --> 00:07:31,000 >> Willy. >> Willy, Sara, Kelly, agus Willy. 138 00:07:31,000 --> 00:07:34,000 Ceart anois mé ag iarradh ar an gceist ag duine 139 00:07:34,000 --> 00:07:37,000 cé mhéad duine atá suas ar an stáitse, agus tá mé aon smaoineamh. 140 00:07:37,000 --> 00:07:40,000 Is liosta é seo i ndáiríre fada, agus mar sin in ionad mé ag dul chun é seo a trick. 141 00:07:40,000 --> 00:07:43,000 Tá mé ag dul a iarraidh ar an duine in aice liom a dhéanamh an chuid is mó den obair, 142 00:07:43,000 --> 00:07:46,000 agus nuair a bhfuil sí déanta ag déanamh an chuid is mó den obair 143 00:07:46,000 --> 00:07:49,000 Tá mé ag dul a dhéanamh ar an méid oibre a laghad is féidir agus díreach cuir 1 144 00:07:49,000 --> 00:07:51,000 le cibé a fhreagairt, mar sin tá anseo a théann muid. 145 00:07:51,000 --> 00:07:54,000 Tá mé ag iarradh ar cé mhéad duine atá ar an stáitse. 146 00:07:54,000 --> 00:07:57,000 Cé mhéad duine atá ar an stáitse ar an taobh clé tú? 147 00:07:57,000 --> 00:08:00,000 An taobh clé de dom? >> Maith go leor, ach ná déan an salachar. 148 00:08:00,000 --> 00:08:04,000 Sin maith, go bhfuil ceart, ach más mian linn leanúint leis an loighic 149 00:08:04,000 --> 00:08:08,000 a ligean ar glacadh leis gur mian leat dul céanna, Punt an fhadhb seo ar an taobh clé de tú, 150 00:08:08,000 --> 00:08:11,000 mar sin seachas freagra díreach ar aghaidh agus díreach an buck pas a fháil. 151 00:08:11,000 --> 00:08:14,000 Oh, conas a mhéad duine atá ar an taobh clé de dom? 152 00:08:14,000 --> 00:08:16,000 Cá mhéad duine atá ar an taobh clé? 153 00:08:16,000 --> 00:08:18,000 1. 154 00:08:18,000 --> 00:08:27,000 [Gáire] 155 00:08:27,000 --> 00:08:30,000 Maith go leor, mar sin 0, mar sin cad anois tá Willy déanta 156 00:08:30,000 --> 00:08:33,000 Tá tá tú ar ais do fhreagra treo seo ag rá 0. 157 00:08:33,000 --> 00:08:36,000 Anois, cad ba cheart duit a dhéanamh? >> 1. 158 00:08:36,000 --> 00:08:39,000 Maith go leor, mar sin tá tú ar an 1, agus mar sin a rá leat, "Ceart go leor, tá mé ag dul a chur 1 159 00:08:39,000 --> 00:08:41,000 le cibé líon Willy a bhí, "mar sin 1 + 0. 160 00:08:41,000 --> 00:08:43,000 Tá tú anois 1 mar sin tá do fhreagra ar an gceart anois- 161 00:08:43,000 --> 00:08:45,000 1. Bheadh ​​>> Agus mianach 2. 162 00:08:45,000 --> 00:08:48,000 Dea-, mar sin tá tú ag cur an freagra roimhe sin 1, 163 00:08:48,000 --> 00:08:51,000 chur leis an méid íosta oibre mian leat a dhéanamh, a bhfuil 1. 164 00:08:51,000 --> 00:08:55,000 Tá tú anois 2, agus tú ar láimh ansin dom a luach? 165 00:08:55,000 --> 00:08:57,000 3, ciallóidh mé, tá brón orainn, 2. 166 00:08:57,000 --> 00:08:59,000 Dea-. 167 00:08:59,000 --> 00:09:02,000 >> Bhuel, bhí againn 0 ar an taobh clé. 168 00:09:02,000 --> 00:09:05,000 Ansin bhí againn 1, agus ansin dúinn a chur 2, 169 00:09:05,000 --> 00:09:07,000 agus anois tá tú ag handing dom an uimhir 2, 170 00:09:07,000 --> 00:09:10,000 agus mar sin mé ag rá, maith go leor, 1, 3. 171 00:09:10,000 --> 00:09:13,000 Níl go deimhin 3 daoine ina seasamh in aice liom ar an stáitse, 172 00:09:13,000 --> 00:09:16,000 ionas gur féidir linn a dhéanamh ar ndóigh seo an-líneach, 173 00:09:16,000 --> 00:09:19,000 go mór sa bhealach soiléir, ach cad a rinne a dhéanann muid i ndáiríre? 174 00:09:19,000 --> 00:09:21,000 Chuir muid fadhb de mhéid 3 dtús. 175 00:09:21,000 --> 00:09:24,000 Bhris muid ansin sé síos i fadhb de mhéid 2, 176 00:09:24,000 --> 00:09:27,000 ansin fadhb ar mhéid 1, agus ansin ar deireadh an cás bonn 177 00:09:27,000 --> 00:09:29,000 bhí i ndáiríre, ó, níl aon duine ann, 178 00:09:29,000 --> 00:09:33,000 ag a sheoladh ar ais pointe Willy go héifeachtach freagra crua-códaithe cúpla uair, 179 00:09:33,000 --> 00:09:36,000 agus an dara ceann a bhí bubbled ansin, bubbled suas, bubbled suas, 180 00:09:36,000 --> 00:09:39,000 agus ansin trí seo 1 amháin breise 181 00:09:39,000 --> 00:09:41,000 againn i bhfeidhm an smaoineamh bunúsach de athchúrsáil. 182 00:09:41,000 --> 00:09:44,000 >> Anois, sa chás seo ní raibh sé a réiteach i ndáiríre ar fhadhb 183 00:09:44,000 --> 00:09:46,000 aon bhealach níos éifeachtaí ansin atá feicthe againn go dtí seo. 184 00:09:46,000 --> 00:09:48,000 Ach smaoineamh ar na halgartaim againn atá déanta ar an stáitse go dtí seo. 185 00:09:48,000 --> 00:09:51,000 Bhí orainn 8 píosaí páipéir ar an gclár dubh, 186 00:09:51,000 --> 00:09:55,000 ar fhíseán nuair a bhí Seán ag lorg ar an uimhir 7, agus cad a rinne sé i ndáiríre? 187 00:09:55,000 --> 00:09:58,000 Bhuel, ní raibh sé a dhéanamh de chineál ar bith scoilt agus conquer. 188 00:09:58,000 --> 00:10:01,000 Ní raibh sé a dhéanamh de chineál ar bith athchúrsáil. 189 00:10:01,000 --> 00:10:03,000 Ina áit sin rinne sé díreach tar éis an algartam líneach. 190 00:10:03,000 --> 00:10:07,000 Ach nuair a thugamar isteach an smaoineamh na n-uimhreacha curtha in eagar ar an stáitse beo an tseachtain seo caite 191 00:10:07,000 --> 00:10:09,000 ansin bhí againn an instinct dul go dtí an lár, 192 00:10:09,000 --> 00:10:13,000 ag an bpointe sin bhí againn le liosta níos lú de mhéid 4 nó eile liosta de na méid 4, 193 00:10:13,000 --> 00:10:17,000 agus ansin bhí againn an fhadhb ceannann céanna, mar sin arís agus arís eile againn, arís agus arís eile, arís agus arís eile. 194 00:10:17,000 --> 00:10:19,000 I bhfocail eile, recursed againn. 195 00:10:19,000 --> 00:10:24,000 Go raibh míle maith agat go mór chun ár 3 oibrithe deonacha anseo le haghaidh a léiriú athchúrsáil a dhéanamh linn. 196 00:10:24,000 --> 00:10:28,000 >> Ligean ar a fheiceáil más rud é nach féidir linn seo a dhéanamh anois nithiúla beagán níos mó, 197 00:10:28,000 --> 00:10:30,000 fadhb a réiteach go arís féidir linn a dhéanamh go leor go héasca, 198 00:10:30,000 --> 00:10:34,000 ach beidh orainn é a úsáid mar cloch stepping chun cur chun feidhme an smaoineamh bunúsach. 199 00:10:34,000 --> 00:10:37,000 Más mian liom a ríomh an suimiú a bunch na n-uimhreacha, 200 00:10:37,000 --> 00:10:39,000 mar shampla, má éiríonn tú ar an uimhir 3, 201 00:10:39,000 --> 00:10:42,000 Ba mhaith liom a thabhairt duit ar an luach sigme 3, 202 00:10:42,000 --> 00:10:46,000 mar sin suim 3 + 2 + 1 + 0. 203 00:10:46,000 --> 00:10:48,000 Ba mhaith liom a fháil ar ais an freagra 6, 204 00:10:48,000 --> 00:10:51,000 mar sin beidh orainn a chur i bhfeidhm an fheidhm seo sigme, an fheidhm shuimiú 205 00:10:51,000 --> 00:10:54,000 sin, arís, glacann i ionchur, agus ansin filleann an tsuimithe 206 00:10:54,000 --> 00:10:57,000 an líon sin go léir ar an mbealach síos go dtí 0. 207 00:10:57,000 --> 00:10:59,000 D'fhéadfadh muid a dhéanamh go leor go simplí, ceart? 208 00:10:59,000 --> 00:11:01,000 D'fhéadfadh muid é seo a dhéanamh le roinnt de chineál ar struchtúr looping, 209 00:11:01,000 --> 00:11:04,000 sin in iúl dom dul ar aghaidh agus a fháil tosaithe. 210 00:11:04,000 --> 00:11:07,000 >> Cuir stdio.h. 211 00:11:07,000 --> 00:11:09,000 Lig dom a fháil ar mé féin isteach is mó a bheith ag obair leis anseo. 212 00:11:09,000 --> 00:11:12,000 A ligean ar seo a shábháil mar sigma.c. 213 00:11:12,000 --> 00:11:14,000 Ansin mé ag dul chun dul i anseo, agus mé ag dul a fhógairt n slánuimhir, 214 00:11:14,000 --> 00:11:18,000 agus mé ag dul a dhéanamh ar an méid seo a leanas cé nach bhfuil an t-úsáideoir comhoibriú le chéile. 215 00:11:18,000 --> 00:11:22,000 Cé nach bhfuil an t-úsáideoir a tugadh dom uimhir dheimhneach 216 00:11:22,000 --> 00:11:26,000 lig dom dul ar aghaidh agus iad a spreagadh le haghaidh n GetInt =, 217 00:11:26,000 --> 00:11:28,000 agus lig dom a thabhairt dóibh roinnt treoracha maidir le cad atá le déanamh, 218 00:11:28,000 --> 00:11:33,000 mar sin printf ("slánuimhir Positive le do thoil"). 219 00:11:33,000 --> 00:11:39,000 Just a rud éigin réasúnta simplí mar seo ionas go mbeidh ag an am a bhuail muid ag teacht 14 220 00:11:39,000 --> 00:11:42,000 ní mór dúinn anois slánuimhir dearfach dócha i n. 221 00:11:42,000 --> 00:11:44,000 >> Anois, a ligean rud éigin a dhéanamh leis. 222 00:11:44,000 --> 00:11:50,000 Lig dom dul ar aghaidh agus an tsuimithe a ríomh, agus mar sin o suim = sigme (n). 223 00:11:50,000 --> 00:11:54,000 Sigma bhfuil ach tsuimithe chuige sin, mar sin tá mé ag scríobh díreach tar éis é ar an mbealach fancier. 224 00:11:54,000 --> 00:11:56,000 Beidh muid ach glaoch sigme sé ann. 225 00:11:56,000 --> 00:11:58,000 Sin an tsuim, agus anois tá mé ag dul a phriontáil amach an toradh, 226 00:11:58,000 --> 00:12:08,000 printf ("Is é an tsuim% d \ n", suim). 227 00:12:08,000 --> 00:12:11,000 Agus ansin beidh mé ar ais 0 haghaidh dea-bheart. 228 00:12:11,000 --> 00:12:15,000 Táimid tar éis gach rud a dhéanamh go n-éilíonn an clár seo ach amháin an chuid suimiúil, 229 00:12:15,000 --> 00:12:18,000 a chur i bhfeidhm iarbhír an fheidhm sigme. 230 00:12:18,000 --> 00:12:22,000 >> Lig dom dul síos anseo chun an bun, agus lig dom a dhearbhú feidhm sigme. 231 00:12:22,000 --> 00:12:26,000 Tá sé fuair a ghlacadh athróg sin de slánuimhir cineál, 232 00:12:26,000 --> 00:12:30,000 agus cad iad na sonraí de chineál ar mhaith liom a thabhairt ar ais dócha as sigme? 233 00:12:30,000 --> 00:12:34,000 Int, mar ba mhaith liom é a mheaitseáil mo ionchais ar líne 15. 234 00:12:34,000 --> 00:12:37,000 I anseo lig dom dul ar aghaidh agus an chur i bhfeidhm 235 00:12:37,000 --> 00:12:41,000 ar bhealach deas simplí. 236 00:12:41,000 --> 00:12:45,000 >> Lig dul ar aghaidh agus a rá = 0 suim slánuimhir, 237 00:12:45,000 --> 00:12:47,000 agus anois tá mé ag dul chun dul go bhfuil beagán le haghaidh lúb anseo 238 00:12:47,000 --> 00:12:50,000 go ag dul a rá rud éigin mar seo, 239 00:12:50,000 --> 00:13:01,000 do (slánuimhir i = 0; I <= uimhir; i + +) suim + = i. 240 00:13:01,000 --> 00:13:05,000 Agus ansin tá mé ag dul suim a thabhairt ar ais. 241 00:13:05,000 --> 00:13:07,000 Raibh mé in ann a bheith i bhfeidhm seo in aon roinnt bealaí. 242 00:13:07,000 --> 00:13:09,000 Raibh mé in ann úsáid lúb tamaill. 243 00:13:09,000 --> 00:13:11,000 Raibh mé in ann a bheith ndearna ag baint úsáide as an athróg suim dá mba mhaith liom i ndáiríre do, 244 00:13:11,000 --> 00:13:15,000 ach i mbeagán focal, ní mór dúinn ach feidhm más rud é nach raibh mé Dearbhaíonn goof tsuim 0. 245 00:13:15,000 --> 00:13:18,000 Ansin béim arís ar sé ó 0 ar suas tríd an líon, 246 00:13:18,000 --> 00:13:23,000 agus ar gach leagan cuireann sé luach reatha suim agus ansin ar ais suim. 247 00:13:23,000 --> 00:13:25,000 >> Anois, níl leas iomlán a bhaint beag anseo. 248 00:13:25,000 --> 00:13:29,000 Tá sé seo is dócha go bhfuil céim amú, ach mar sin go mbeadh sé. Go breá le haghaidh anois. 249 00:13:29,000 --> 00:13:32,000 Táimid ar a laghad a bheith críochnúil agus ag dul 0 léir ar an mbealach ar suas. 250 00:13:32,000 --> 00:13:34,000 Ní deacair an-agus go leor simplí, 251 00:13:34,000 --> 00:13:37,000 ach casadh sé amach go bhfuil an fheidhm sigme ní mór dúinn an deis chéanna 252 00:13:37,000 --> 00:13:39,000 mar a rinne muid anseo ar an stáitse. 253 00:13:39,000 --> 00:13:42,000 Ar stáitse chomhaireamh againn go díreach cé mhéad duine a bhí in aice liom, 254 00:13:42,000 --> 00:13:47,000 ach ina ionad sin má bhíomar ag iarraidh ag comhaireamh an uimhir 3 + 2 + 1 255 00:13:47,000 --> 00:13:51,000 ar síos go dtí 0 d'fhéadfadh muid dul céanna, punt le feidhm 256 00:13:51,000 --> 00:13:55,000 go mbainfidh mé cur síos a dhéanamh in ionad a bheith recursive. 257 00:13:55,000 --> 00:13:57,000 Seo a ligean ar a dhéanamh ar sanity mear a sheiceáil agus a dhéanamh cinnte nach raibh mé goof. 258 00:13:57,000 --> 00:14:00,000 >> Tá a fhios agam níl ar a laghad rud amháin sa chlár seo go raibh mé ag déanamh mícheart. 259 00:14:00,000 --> 00:14:04,000 Nuair a bhuail mé isteach mé ag dul a fháil de chineál ar bith yelling ag dom? 260 00:14:04,000 --> 00:14:06,000 Cad tá mé ag dul a bheith yelled ag thart ar? 261 00:14:06,000 --> 00:14:11,000 Yeah, Rinne mé dearmad ar an fhréamhshamhail, agus mar sin tá mé ag baint úsáide as feidhm ar a dtugtar sigme ar líne 15, 262 00:14:11,000 --> 00:14:16,000 ach nach bhfuil sé dearbhaithe go dtí an líne 22, mar sin mé is fearr go réamhghníomhach dul suas anseo 263 00:14:16,000 --> 00:14:22,000 agus á dhearbhú fréamhshamhail, agus beidh a rá slánuimhir sigme (slánuimhir uimhir) mé, agus go bhfuil sé. 264 00:14:22,000 --> 00:14:24,000 Tá sé seo i bhfeidhm ag bun an leathanaigh. 265 00:14:24,000 --> 00:14:27,000 >> Nó ar bhealach eile raibh mé in ann an fhadhb seo, 266 00:14:27,000 --> 00:14:30,000 Raibh mé in ann bogadh an fheidhm suas ann, nach bhfuil olc, 267 00:14:30,000 --> 00:14:32,000 ach ar a laghad nuair a thosaíonn do chláir a fháil ar fad, frankly, 268 00:14:32,000 --> 00:14:35,000 I mo thuairimse, níl roinnt luach i gcónaí ar a bhfuil is mó ag an mbarr 269 00:14:35,000 --> 00:14:38,000 ionas gur féidir leat ar an léitheoir an comhad a oscailt agus ansin a fheiceáil láithreach 270 00:14:38,000 --> 00:14:40,000 cad é an clár a dhéanamh gan a bheith chun cuardach a dhéanamh tríd 271 00:14:40,000 --> 00:14:42,000 ag lorg feidhme sin is mó. 272 00:14:42,000 --> 00:14:49,000 A ligean ar dul síos go dtí mo fhuinneog críochfort anseo, déan iarracht a dhéanamh sigme dhéanamh sigme, 273 00:14:49,000 --> 00:14:51,000 agus screwed mé suas anseo freisin. 274 00:14:51,000 --> 00:14:55,000 Ciallaíonn dearbhú intuigthe de GetInt fheidhm mé dearmad a dhéanamh ar cad eile? 275 00:14:55,000 --> 00:14:57,000 [Inaudible-mac léinn] 276 00:14:57,000 --> 00:15:00,000 Dea-, mar sin cosúil botún coitianta, mar sin a ligean seo a chur suas anseo, 277 00:15:00,000 --> 00:15:04,000 cs50.h, agus lig anois ar dul ar ais go dtí mo fhuinneog teirminéil. 278 00:15:04,000 --> 00:15:08,000 >> Feicfidh mé soiléir ar an scáileán, agus beidh mé rerun a dhéanamh sigme. 279 00:15:08,000 --> 00:15:11,000 Dealraíonn sé go bhfuil thiomsú. Lig dom a reáchtáil anois sigme. 280 00:15:11,000 --> 00:15:15,000 Feicfidh mé cineál ar an uimhir 3, agus rinne mé 6 a fháil, mar sin ní seiceáil dian, 281 00:15:15,000 --> 00:15:18,000 ach ar a laghad is cosúil a bheith ag obair ar an gcéad amharc, ach anois ligean ar sracadh sé amach, 282 00:15:18,000 --> 00:15:21,000 agus a ghiaráil a ligean ar iarbhír an smaoineamh athchúrsáil, arís, 283 00:15:21,000 --> 00:15:24,000 i gcomhthéacs an-simplí ionas gur i cúpla seachtain 'am 284 00:15:24,000 --> 00:15:27,000 nuair a thosaíonn muid iniúchadh struchtúir sonraí fancier ná arrays 285 00:15:27,000 --> 00:15:30,000 ní mór dúinn uirlis eile san fhoireann uirlisí a cheapadh chun a 286 00:15:30,000 --> 00:15:33,000 ionramháil na struchtúir sonraí mar beidh orainn a fheiceáil. 287 00:15:33,000 --> 00:15:36,000 Is é seo an cur chuige atriallach, an cur chuige lúb-bhunaithe. 288 00:15:36,000 --> 00:15:39,000 >> Lig dom ionad anois é seo a dhéanamh. 289 00:15:39,000 --> 00:15:44,000 Lig dom in ionad a rá go bhfuil an suimiú líon 290 00:15:44,000 --> 00:15:48,000 ar síos go dtí 0 i ndáiríre an rud céanna mar 291 00:15:48,000 --> 00:15:53,000 Uimhir + sigme (uimhir - 1). 292 00:15:53,000 --> 00:15:57,000 I bhfocail eile, díreach cosúil ar an stáitse punted mé gach ceann de na daoine in aice liom, 293 00:15:57,000 --> 00:16:00,000 agus tá siad ar a seal choinnigh punting go dtí go bottomed againn ar deireadh amach ag Willy, 294 00:16:00,000 --> 00:16:03,000 a raibh a thabhairt ar ais freagra crua-códaithe mar 0. 295 00:16:03,000 --> 00:16:07,000 Anseo anois táimid ag punting dul céanna, sigme 296 00:16:07,000 --> 00:16:10,000 an fheidhm chéanna bhí ar a dtugtar mar ar dtús, ach an léargas eochair anseo 297 00:16:10,000 --> 00:16:12,000 is é sin nach bhfuil muid ag iarraidh sigme identically. 298 00:16:12,000 --> 00:16:14,000 Níl muid ag dul i n. 299 00:16:14,000 --> 00:16:17,000 Táimid ag dul go soiléir i líon - 1, 300 00:16:17,000 --> 00:16:20,000 sin fadhb beagán níos lú, fadhb beagán níos lú. 301 00:16:20,000 --> 00:16:23,000 >> Ar an drochuair, nach bhfuil sé seo go leor le réiteach go fóill, agus roimh muid a shocrú 302 00:16:23,000 --> 00:16:26,000 d'fhéadfadh a bheith léim amach chomh soiléir ar roinnt de tú 303 00:16:26,000 --> 00:16:28,000 lig dom dul ar aghaidh agus rerun a dhéanamh. 304 00:16:28,000 --> 00:16:30,000 Dealraíonn sé a thiomsú ceart go leor. 305 00:16:30,000 --> 00:16:32,000 Lig dom a rerun sigme le 6. 306 00:16:32,000 --> 00:16:37,000 Whoops, lig dom rerun sigme le 6. 307 00:16:37,000 --> 00:16:42,000 Againn atá le feiceáil roimh seo, cé go ham de thaisme is déanaí chomh maith. 308 00:16:42,000 --> 00:16:48,000 Cén fáth go raibh mé seo a fháil locht deighilte cryptic? Yeah. 309 00:16:48,000 --> 00:16:50,000 [Inaudible-mac léinn] 310 00:16:50,000 --> 00:16:53,000 Níl aon chás bonn, agus níos mó go sonrach, an méid a tharla is dócha? 311 00:16:53,000 --> 00:16:58,000 Is é seo a symptom de rud iompar? 312 00:16:58,000 --> 00:17:00,000 Abair sé beagán níos airde. 313 00:17:00,000 --> 00:17:02,000 [Inaudible-mac léinn] 314 00:17:02,000 --> 00:17:05,000 Tá sé an lúb gan teorainn go héifeachtach, agus an fhadhb le lúb gan teorainn 315 00:17:05,000 --> 00:17:08,000 nuair baint ag athchúrsáil sa chás seo, feidhm ag glaoch féin, 316 00:17:08,000 --> 00:17:10,000 cad a tharlaíonn gach uair a ghlaonn tú ar fheidhm? 317 00:17:10,000 --> 00:17:13,000 Bhuel, smaoineamh ar ais leis an gcaoi atá leagtha amach againn ar an gcuimhne i ríomhaire. 318 00:17:13,000 --> 00:17:16,000 Dúirt muid go níl an smután de chuimhne ar a dtugtar an chairn go ag an mbun, 319 00:17:16,000 --> 00:17:19,000 agus faigheann gach uair a ghlaonn tú feidhm chuimhne beagán níos mó a chur 320 00:17:19,000 --> 00:17:24,000 ar an chairn mar a thugtar air a bhfuil an fheidhm ar athróga áitiúil nó paraiméadar, 321 00:17:24,000 --> 00:17:27,000 mar sin má iarrann sigme glaonna sigme glaonna sigme sigme 322 00:17:27,000 --> 00:17:29,000  glaonna sigme nuair a dhéanann an deireadh scéal? 323 00:17:29,000 --> 00:17:31,000 >> Bhuel, tá sé thar sprioc ar deireadh thiar an méid iomlán 324 00:17:31,000 --> 00:17:33,000 cuimhne go bhfuil tú ar fáil ar do ríomhaire. 325 00:17:33,000 --> 00:17:37,000 Tá tú overrun an deighleog go bhfuil tú ag ceaptha chun fanacht laistigh de, 326 00:17:37,000 --> 00:17:40,000 agus a fhaigheann tú an locht deighilt, dumped croí, 327 00:17:40,000 --> 00:17:43,000 agus cad croí ciallaíonn dumpáilte go bhfuil mé anois comhad a dtugtar croí 328 00:17:43,000 --> 00:17:46,000 atá ina comhad ina bhfuil nialais agus cinn 329 00:17:46,000 --> 00:17:49,000 go mbeidh iarbhír sa todhchaí a bheith diagnostically úsáideach. 330 00:17:49,000 --> 00:17:52,000 Más rud é nach bhfuil sé soiléir a thabhairt duit nuair a bhfuil do bug 331 00:17:52,000 --> 00:17:54,000 Is féidir leat a dhéanamh i ndáiríre le beagán de anailís fhóiréinseach, sin a labhairt, 332 00:17:54,000 --> 00:17:58,000 ar an gcomhad seo Dumpáil lárnach, a bhfuil, arís, ach a bunch iomlán de nialais agus cinn 333 00:17:58,000 --> 00:18:02,000 gur ionann go bunúsach an staid do chlár i gcuimhne 334 00:18:02,000 --> 00:18:05,000 i láthair na huaire crashed sé ar an mbealach seo. 335 00:18:05,000 --> 00:18:11,000 >> Is é an shocrú anseo nach féidir linn ach ar ais blindly sigme, 336 00:18:11,000 --> 00:18:14,000 an líon + sigme ar fhadhb beagán níos lú. 337 00:18:14,000 --> 00:18:16,000 Ní mór dúinn go bhfuil roinnt de chineál ar chás bonn anseo, 338 00:18:16,000 --> 00:18:19,000 agus cad ba chóir an cás bonn is dócha? 339 00:18:19,000 --> 00:18:22,000 [Inaudible-mac léinn] 340 00:18:22,000 --> 00:18:25,000 Maith go leor, mar sin fad a bheidh an uimhir dheimhneach ba chóir dúinn ar ais i ndáiríre seo, 341 00:18:25,000 --> 00:18:29,000 nó a chur ar bhealach eile, má tá líon, a rá, <= chun 0 342 00:18:29,000 --> 00:18:32,000 Tá a fhios agat cad, beidh mé dul ar aghaidh agus ar ais 0, 343 00:18:32,000 --> 00:18:36,000 i bhfad mar a rinne Willy, agus eile, tá mé ag dul chun dul ar aghaidh 344 00:18:36,000 --> 00:18:41,000 agus seol ar ais seo, agus mar sin nach bhfuil sé go bhfuil i bhfad níos giorra 345 00:18:41,000 --> 00:18:44,000 ná an leagan atriallach go bhuailtí muid suas an chéad ag baint úsáide as do lúb, 346 00:18:44,000 --> 00:18:48,000 ach faoi deara go níl an saghas elegance leis. 347 00:18:48,000 --> 00:18:51,000 In ionad filleadh le huimhir éigin agus feidhmiúil seo go léir math 348 00:18:51,000 --> 00:18:54,000 agus rudaí a chur suas le hathróga áitiúla 349 00:18:54,000 --> 00:18:57,000 bhfuil tú ag rá in ionad "Maith go leor, má tá sé seo fadhb Super éasca, 350 00:18:57,000 --> 00:19:01,000 cosúil go bhfuil an líon <0, lig dom ar ais láithreach 0. " 351 00:19:01,000 --> 00:19:03,000 >> Ní táimid ag dul chun bac uimhreacha tacaíochta diúltach, 352 00:19:03,000 --> 00:19:05,000 mar sin tá mé ag dul go dtí cód crua ar luach 0. 353 00:19:05,000 --> 00:19:08,000 Ach a mhalairt, a chur i bhfeidhm an smaoineamh seo de achoimre 354 00:19:08,000 --> 00:19:11,000 gach ceann de na huimhreacha le chéile is féidir leat go héifeachtach le greim beag 355 00:19:11,000 --> 00:19:14,000 amach as an fhadhb, i bhfad mar a rinne muid anseo ar an stáitse, 356 00:19:14,000 --> 00:19:18,000 ansin punt an chuid eile den fhadhb leis an duine eile, 357 00:19:18,000 --> 00:19:20,000 ach tá sa chás seo an duine eile duit féin. 358 00:19:20,000 --> 00:19:22,000 Tá sé mar fheidhm identically ainmnithe. 359 00:19:22,000 --> 00:19:25,000 Just a sé ar aghaidh fadhb níos lú agus níos lú agus níos lú gach uair, 360 00:19:25,000 --> 00:19:28,000 agus cé ní mór dúinn rudaí go leor foirmiúil i gcód anseo 361 00:19:28,000 --> 00:19:33,000 is é seo go díreach cad a bhí ar siúl i seachtain 0 leis an leabhar teileafóin. 362 00:19:33,000 --> 00:19:36,000 Seo go díreach cad a bhí ar siúl i seachtainí anuas le Sean 363 00:19:36,000 --> 00:19:39,000 agus lenár taispeántais an cuardach le haghaidh uimhreacha. 364 00:19:39,000 --> 00:19:42,000 Tá sé seo ag cur le fadhb agus tríd sé arís agus arís eile. 365 00:19:42,000 --> 00:19:44,000 >> I bhfocail eile, níl ar bhealach anois a aistriú 366 00:19:44,000 --> 00:19:47,000 seo thógáil saol fíor, an thógáil ag leibhéal níos airde 367 00:19:47,000 --> 00:19:51,000 de roinnt agus conquer agus ag déanamh rud éigin arís agus arís 368 00:19:51,000 --> 00:19:56,000 i gcód, mar sin tá sé seo rud éigin beidh muid a fheiceáil arís le himeacht ama. 369 00:19:56,000 --> 00:20:00,000 Anois, mar leataobh, má tá tú nua chun cuardach ar chóir duit ar a laghad a thuiscint anois 370 00:20:00,000 --> 00:20:02,000 cén fáth go bhfuil sé seo greannmhar. 371 00:20:02,000 --> 00:20:05,000 Tá mé ag dul chun dul go dtí google.com, 372 00:20:05,000 --> 00:20:17,000 agus mé ag dul a chuardach le haghaidh roinnt leideanna agus cleasanna ar athchúrsáil, dul isteach. 373 00:20:17,000 --> 00:20:21,000 Abair leis an duine in aice leat más rud é nach raibh ag gáire siad díreach anois. 374 00:20:21,000 --> 00:20:23,000 An raibh i gceist agat athchúrsáil? 375 00:20:23,000 --> 00:20:25,000 An raibh tú i gceist-ah, tá muid ag dul. 376 00:20:25,000 --> 00:20:28,000 Maith go leor, tá anois go bhfuil an chuid eile den gach duine. 377 00:20:28,000 --> 00:20:30,000 Is beag Cásca ubh leabaithe áit éigin ann i Google. 378 00:20:30,000 --> 00:20:33,000 Mar leataobh, ar cheann de na naisc a chur againn ar an gcúrsa ar shuíomh gréasáin 379 00:20:33,000 --> 00:20:36,000 don lá atá inniu ach an eangach na halgartaim sórtáil éagsúla, 380 00:20:36,000 --> 00:20:39,000 cuid acu a d'fhéachamar ar an tseachtain seo caite, ach cad deas faoi seo léirshamhlú 381 00:20:39,000 --> 00:20:43,000 mar iarracht tú a wrap d'intinn ar fud rudaí éagsúla a bhaineann le halgartaim 382 00:20:43,000 --> 00:20:46,000 fhios agat gur féidir leat an-éasca tosú anois le cineálacha éagsúla na n-ionchur. 383 00:20:46,000 --> 00:20:50,000 Na hionchuir droim ar ais go léir, na hionchuir in eagar chuid is mó, na hionchuir randamach agus mar sin de. 384 00:20:50,000 --> 00:20:53,000 Mar iarracht tú a, arís, idirdhealú a dhéanamh na rudaí i d'intinn 385 00:20:53,000 --> 00:20:57,000 a thuiscint go URL seo ar an gcúrsa ar shuíomh gréasáin ar an leathanach Léachtaí 386 00:20:57,000 --> 00:21:00,000 a d'fhéadfadh cabhrú leat mar gheall trí roinnt de na. 387 00:21:00,000 --> 00:21:05,000 >> Sa lá atá inniu a fháil againn ar deireadh thiar chun an fhadhb seo a réiteach ó tamall ó shin, 388 00:21:05,000 --> 00:21:08,000 a bhí go bhfuil an fheidhm babhtála ní raibh ag obair, 389 00:21:08,000 --> 00:21:12,000 agus cad a bhí an fhadhb bhunúsach leis an babhtála feidhm, 390 00:21:12,000 --> 00:21:15,000 an sprioc a bhí, arís, a mhalartú luach anseo agus anseo 391 00:21:15,000 --> 00:21:17,000 den sórt sin a tharlaíonn sé seo? 392 00:21:17,000 --> 00:21:20,000 Ní raibh an obair seo i ndáiríre. Cén fáth? 393 00:21:20,000 --> 00:21:22,000 Yeah. 394 00:21:22,000 --> 00:21:28,000 [Inaudible-mac léinn] 395 00:21:28,000 --> 00:21:31,000 Go díreach, an míniú ar an bugginess 396 00:21:31,000 --> 00:21:34,000 ach a bhí mar gheall nuair a ghlaonn tú feidhmeanna i C 397 00:21:34,000 --> 00:21:38,000 agus na feidhmeanna sin hargóintí a ghlacadh, mar a agus b anseo, 398 00:21:38,000 --> 00:21:42,000 bhfuil tú ag dul i cóipeanna de cibé luach a bhíonn tú ag fáil leis an fheidhm. 399 00:21:42,000 --> 00:21:46,000 Nach bhfuil tú ag fáil na luachanna bunaidh féin, 400 00:21:46,000 --> 00:21:49,000 mar sin chonaic muid seo i gcomhthéacs na buggyc, 401 00:21:49,000 --> 00:21:52,000 buggy3.c, a bhreathnaigh rud beag mar seo. 402 00:21:52,000 --> 00:21:57,000 >> Glaoch ar ais a bhí againn x agus y initialized le 1 agus 2, faoi seach. 403 00:21:57,000 --> 00:21:59,000 Clóite muid ansin amach cad a bhí siad. 404 00:21:59,000 --> 00:22:03,000 D'éiligh mé ansin go raibh swapping mé iad trí ghlaoch a babhtála x, y. 405 00:22:03,000 --> 00:22:06,000 Ach bhí an fhadhb gur oibrigh an swapping, 406 00:22:06,000 --> 00:22:10,000 ach amháin i raon feidhme an babhtála fheidhm féin. 407 00:22:10,000 --> 00:22:13,000 Chomh luath agus bhuail muid ag teacht 40 na luachanna sin mhalartú 408 00:22:13,000 --> 00:22:16,000 Bhí thrown away, agus mar sin de rud ar bith 409 00:22:16,000 --> 00:22:21,000 san fheidhm bunaidh príomh athraíodh iarbhír ar chor ar bith, 410 00:22:21,000 --> 00:22:26,000 mar sin má cheapann tú ar ais ansin i dtaobh cad Breathnaíonn seo cosúil ó thaobh ár gcuimhne 411 00:22:26,000 --> 00:22:29,000 más rud é go léiríonn an-thaobh na láimhe clé den bhord 412 00:22:29,000 --> 00:22:33,000 agus beidh mé mo dhícheall do gach duine a fheiceáil seo más rud é-seo thaobh na láimhe clé den bhord 413 00:22:33,000 --> 00:22:37,000 ionann, a rá, do RAM, agus tá an chairn ag dul chun fás ar suas ar an mbealach seo, 414 00:22:37,000 --> 00:22:43,000 agus tugaimid feidhm mhaith is mó, agus is mó Tá 2 athróg áitiúla, x agus y, 415 00:22:43,000 --> 00:22:48,000 a ligean ar cur síos a dhéanamh dóibh siúd le x anseo, agus a ligean ar na cur síos a dhéanamh mar y anseo, 416 00:22:48,000 --> 00:22:55,000 agus a ligean ar chur ar an 1 luachanna agus 2, agus mar sin tá sé seo anseo is mó, 417 00:22:55,000 --> 00:22:58,000 agus nuair a iarrann na príomh-fheidhm babhtála an córas oibriúcháin 418 00:22:58,000 --> 00:23:02,000 Tugann an fheidhm babhtála a swath féin de chuimhne ar an chruach, 419 00:23:02,000 --> 00:23:04,000 a fráma féin ar an chruach, mar a déarfá. 420 00:23:04,000 --> 00:23:08,000 Leithdháileann sé 32 giotán do na ints. 421 00:23:08,000 --> 00:23:11,000 Tarlaíonn sé chun glaoch orthu a agus b, ach sin go hiomlán treallach. 422 00:23:11,000 --> 00:23:13,000 D'fhéadfadh sé a bheith ar a dtugtar iad is cuma cad is mian leis, ach cad a tharlaíonn nuair is mó 423 00:23:13,000 --> 00:23:19,000 Tá glaonna babhtála a thógann sé seo a 1, cuireann cóip ann, cuireann cóip ann. 424 00:23:19,000 --> 00:23:23,000 >> Tá 1 athróg áitiúla eile i babhtála, áfach, ar a dtugtar cad é? Tmp >>. 425 00:23:23,000 --> 00:23:27,000 Tmp, in iúl dom a thabhairt mé féin eile 32 giotán anseo, 426 00:23:27,000 --> 00:23:29,000 agus cad a rinne mé i an fheidhm seo? 427 00:23:29,000 --> 00:23:34,000 Dúirt mé Faigheann tmp slánuimhir a, mar sin tá 1, mar sin rinne mé seo nuair a bhí muid go deireanach le sampla seo. 428 00:23:34,000 --> 00:23:39,000 Ansin faigheann b, agus mar sin b Is é 2, mar sin anois a bheidh sé sin 2, 429 00:23:39,000 --> 00:23:42,000 agus anois faigheann b teocht, mar sin teocht is 1, 430 00:23:42,000 --> 00:23:44,000 mar sin anois thiocfaidh chun bheith b seo. 431 00:23:44,000 --> 00:23:46,000 Sin iontach. D'oibrigh sé. 432 00:23:46,000 --> 00:23:49,000 Ach ansin chomh luath agus is na tuairisceáin fheidhm 433 00:23:49,000 --> 00:23:52,000 babhtála a chuimhne imíonn go héifeachtach ionas gur féidir é a athúsáid 434 00:23:52,000 --> 00:23:58,000 ag roinnt feidhm eile amach anseo, agus is é is mó ar ndóigh gan athrú go hiomlán. 435 00:23:58,000 --> 00:24:00,000 Ní mór dúinn ar bhealach bunúsach fhadhb seo a réiteach, 436 00:24:00,000 --> 00:24:03,000 agus sa lá atá inniu beidh orainn ar deireadh ar bhealach seo a dhéanamh ina 437 00:24:03,000 --> 00:24:06,000 is féidir linn a thabhairt isteach rud éigin a dtugtar pointeoir. 438 00:24:06,000 --> 00:24:09,000 Casadh sé amach gur féidir linn a fhadhb seo a réiteach 439 00:24:09,000 --> 00:24:12,000 ní ag dul i cóipeanna de x agus y 440 00:24:12,000 --> 00:24:18,000 ach ina ionad sin ag dul thar i cad, is dóigh leat, chun an fheidhm babhtála? 441 00:24:18,000 --> 00:24:20,000 Yeah, cad mar gheall ar an seoladh? 442 00:24:20,000 --> 00:24:22,000 Ní Tá Labhair i ndáiríre faoi seoltaí go mion i bhfad, 443 00:24:22,000 --> 00:24:25,000 ach má léiríonn an gclár dubh mo ríomhaire a chuimhne 444 00:24:25,000 --> 00:24:28,000 d'fhéadfadh muid tús a chur cinnte uimhir na bearta i mo RAM 445 00:24:28,000 --> 00:24:31,000 agus a rá tá sé seo beart # 1, is é seo beart # 2, beart # 3, 446 00:24:31,000 --> 00:24:35,000 beart # 4, beart # ... 2 billiún má tá mé 2 ghigibheart de RAM, 447 00:24:35,000 --> 00:24:38,000 mar sin d'fhéadfadh muid ag teacht cinnte suas le roinnt scéim uimhriú treallach 448 00:24:38,000 --> 00:24:41,000 do na bearta aonair i mo ríomhaire a chuimhne. 449 00:24:41,000 --> 00:24:43,000 >> Cad a tharlaíonn má in ionad nuair a ghlaonn mé babhtála 450 00:24:43,000 --> 00:24:47,000 seachas pas i cóipeanna de x agus y 451 00:24:47,000 --> 00:24:51,000 cén fáth nach bhfuil mé pas a ionad i an seoladh de x anseo, 452 00:24:51,000 --> 00:24:55,000 an seoladh y anseo, go bunúsach an seoladh poist 453 00:24:55,000 --> 00:24:59,000 x agus y mar gheall ar babhtála ansin, má tá sé in iúl 454 00:24:59,000 --> 00:25:01,000 an seoladh i gcuimhne ar x agus y, 455 00:25:01,000 --> 00:25:04,000 ansin babhtála, más rud é oilte againn air le beagán, 456 00:25:04,000 --> 00:25:07,000 d'fhéadfadh sé a thiomáint d'fhéadfadh a bheith leis an seoladh sin, sin a labhairt, 457 00:25:07,000 --> 00:25:11,000 x, agus athrú ar líon ann, tiomáint ansin chuig an seoladh y, 458 00:25:11,000 --> 00:25:16,000 athrú ar líon ann, fiú cé nach bhfuil ag fáil i ndáiríre cóipeanna de na luachanna féin, 459 00:25:16,000 --> 00:25:19,000 mar sin cé go labhair muid faoi seo mar chuimhne is mó ar 460 00:25:19,000 --> 00:25:23,000 agus an babhtála mar a chuimhne ar an chumhachtach agus an chuid contúirteacha de C 461 00:25:23,000 --> 00:25:28,000 Is é gur féidir le haon fheidhm teagmháil cuimhne áit ar bith sa ríomhaire, 462 00:25:28,000 --> 00:25:32,000 agus tá sé seo cumhachtach i gur féidir leat a dhéanamh rudaí an-mhaisiúil le cláir ríomhaireachta i C. 463 00:25:32,000 --> 00:25:36,000 Tá sé seo contúirteach mar is féidir leat scriú freisin an-éasca. 464 00:25:36,000 --> 00:25:39,000 Go deimhin, ar cheann de na bealaí is coitianta do chláir na laethanta a shaothrú 465 00:25:39,000 --> 00:25:42,000 fós nach bhfuil ar Ríomhchláraitheoir a bhaint amach 466 00:25:42,000 --> 00:25:45,000 go bhfuil sé nó sí ligean sonraí 467 00:25:45,000 --> 00:25:49,000 a bheith scríofa i suíomh i gcuimhne nach raibh sé i gceist. 468 00:25:49,000 --> 00:25:51,000 >> Mar shampla, Dearbhaíonn sé nó sí le sraith de mhéid 10 469 00:25:51,000 --> 00:25:56,000 ach iarracht ansin thaisme a chur ar 11 bytes isteach sraith de chuimhne, 470 00:25:56,000 --> 00:25:59,000 agus a thosaíonn tú ag touching codanna de chuimhne nach bhfuil bailí a thuilleadh. 471 00:25:59,000 --> 00:26:02,000 Just a comhthéacsúla seo, d'fhéadfadh roinnt de fhios agat go 472 00:26:02,000 --> 00:26:06,000 bogearraí leideanna minic tú do sraithuimhreacha nó eochracha clárúcháin, 473 00:26:06,000 --> 00:26:08,000 Photoshop agus Word agus cláir mar seo. 474 00:26:08,000 --> 00:26:12,000 Tá scoilteanna ann, mar atá a fhios roinnt de tú, líne áit ar féidir leat a rith le clár beag, 475 00:26:12,000 --> 00:26:14,000 agus voila, aon iarraidh níos mó le haghaidh sraithuimhir. 476 00:26:14,000 --> 00:26:16,000 Cén chaoi a bhfuil ag obair? 477 00:26:16,000 --> 00:26:21,000 In a lán cásanna tá na rudaí a aimsiú ach i ríomhairí 478 00:26:21,000 --> 00:26:24,000 deighleáin téacs sa ríomhaire nialais agus cinn iarbhír 479 00:26:24,000 --> 00:26:28,000 i gcás gur feidhm ina bhfuil an líon sraitheach a iarrtar, 480 00:26:28,000 --> 00:26:31,000 agus tú scríobh an spás, nó cé go bhfuil an clár ag rith 481 00:26:31,000 --> 00:26:33,000 Is féidir leat an figiúr amach cén áit a bhfuil an eochair a stóráil i ndáiríre 482 00:26:33,000 --> 00:26:37,000 ag baint úsáide as rud ar a dtugtar a dífhabhtóir, agus is féidir leat a crack bogearraí sin ar bhealach. 483 00:26:37,000 --> 00:26:40,000 Ní hé seo a rá go bhfuil sé seo ár gcuspóir chun an lánúin eile den lá, 484 00:26:40,000 --> 00:26:42,000 ach tá sé an-fíor-domhan ramifications. 485 00:26:42,000 --> 00:26:45,000 Sin a tharlaíonn amháin chun páirt a goid bogearraí, 486 00:26:45,000 --> 00:26:47,000 ach níl freisin comhréiteach de mheaisíní ar fad. 487 00:26:47,000 --> 00:26:50,000 >> Go deimhin, nuair a láithreáin ghréasáin na laethanta seo a shaothrú 488 00:26:50,000 --> 00:26:53,000 agus isteach agus sonraí atá leaked agus focal faire a goideadh 489 00:26:53,000 --> 00:26:58,000 baineann sé seo go minic chun bhainistíocht lag de do chuimhne, 490 00:26:58,000 --> 00:27:01,000 nó, i gcás bunachar sonraí, teip a réamh-mheas 491 00:27:01,000 --> 00:27:03,000 ionchur sáraíochta, mar sin níos mó ar sin sna seachtainí atá le teacht, 492 00:27:03,000 --> 00:27:07,000 ach do anois ach réamhamharc sneak de an saghas damáiste gur féidir leat a dhéanamh 493 00:27:07,000 --> 00:27:11,000 más rud é nach thuiscint go leor conas a oibríonn rudaí thíos an cochall. 494 00:27:11,000 --> 00:27:14,000 A ligean ar dul faoi thuiscint cén fáth go bhfuil sé seo briste 495 00:27:14,000 --> 00:27:17,000 le uirlis a bheith níos mó agus níos úsáidí 496 00:27:17,000 --> 00:27:19,000 mar a fháil ar ár gcláir níos casta. 497 00:27:19,000 --> 00:27:21,000 Go dtí seo nuair atá tú go raibh fabht i do chlár 498 00:27:21,000 --> 00:27:23,000 conas a bhfuil siad imithe tú faoi debugging é? 499 00:27:23,000 --> 00:27:25,000 Cad do teicnící a bhí go dtí seo, cibé acu múinte ag do TF 500 00:27:25,000 --> 00:27:27,000 nó díreach féin-mhúinte? 501 00:27:27,000 --> 00:27:29,000 [Mac Léinn] printf. 502 00:27:29,000 --> 00:27:31,000 Printf, mar sin tá printf is dócha do chara i go más mian leat a fheiceáil 503 00:27:31,000 --> 00:27:33,000 cad atá ar siúl taobh istigh de do chlár 504 00:27:33,000 --> 00:27:36,000 chuir tú díreach printf anseo, printf anseo, printf anseo. 505 00:27:36,000 --> 00:27:38,000 Ansin leat a rith sé, agus a fhaigheann tú a bunch iomlán de stuif ar an scáileán 506 00:27:38,000 --> 00:27:43,000 gur féidir leat úsáid a rianú ansin cad atá ar siúl i ndáiríre mícheart i do chlár. 507 00:27:43,000 --> 00:27:45,000 >> Printf claonadh a bheith ina rud an-chumhachtach, 508 00:27:45,000 --> 00:27:47,000 ach tá sé le próiseas an-láimhe. 509 00:27:47,000 --> 00:27:49,000 Tá tú a chur printf anseo, anseo printf, 510 00:27:49,000 --> 00:27:51,000 agus má chuir tú é taobh istigh de lúb dtiocfadh leat a fháil 100 lines 511 00:27:51,000 --> 00:27:53,000 d'aschur go bhfuil tú ansin a scagadh tríd. 512 00:27:53,000 --> 00:27:58,000 Níl sé meicníocht an-éasca le húsáid nó idirghníomhach do chláir debugging, 513 00:27:58,000 --> 00:28:00,000 ach buíochas le Dia ann roghanna eile. 514 00:28:00,000 --> 00:28:03,000 Níl clár, mar shampla, ar a dtugtar GDB, an Debugger GNU, 515 00:28:03,000 --> 00:28:06,000 atá ina arcane beag conas a úsáideann tú é. 516 00:28:06,000 --> 00:28:08,000 Tá sé casta beag, ach frankly, 517 00:28:08,000 --> 00:28:11,000 Tá sé seo ar cheann de na rudaí ina má chuir tú i an tseachtain seo agus seo chugainn 518 00:28:11,000 --> 00:28:14,000 an uair an chloig breise chun tuiscint a fháil rud éigin cosúil le GDB 519 00:28:14,000 --> 00:28:18,000 beidh sé a shábháil tú is dócha na mílte agus na n-uaireanta san fhadtréimhse, 520 00:28:18,000 --> 00:28:21,000 amhlaidh leis sin, lig dom a thabhairt duit teaser ar conas a oibríonn an rud. 521 00:28:21,000 --> 00:28:23,000 >> Tá mé i mo fhuinneog teirminéil. 522 00:28:23,000 --> 00:28:26,000 Lig dom dul ar aghaidh agus an clár seo, buggy3 thiomsú. 523 00:28:26,000 --> 00:28:28,000 Tá sé cheana féin suas chun dáta. 524 00:28:28,000 --> 00:28:31,000 Lig dom a rith sé díreach mar a rinne muid ar ais tamaill, agus go deimhin, tá sé briste. 525 00:28:31,000 --> 00:28:34,000 Ach é sin an fáth é seo? B'fhéidir go screwed mé suas an fheidhm babhtála. 526 00:28:34,000 --> 00:28:37,000 B'fhéidir go bhfuil sé a agus b. Níl mé ag bogadh go leor acu timpeall i gceart. 527 00:28:37,000 --> 00:28:39,000 Lig dom dul ar aghaidh agus é seo a dhéanamh. 528 00:28:39,000 --> 00:28:43,000 Seachas reáchtáil díreach buggy3 in iúl dom a reáchtáil ina ionad sin an GDB clár, 529 00:28:43,000 --> 00:28:48,000 agus tá mé ag dul a insint dó a rith buggy3, 530 00:28:48,000 --> 00:28:52,000 agus tá mé ag dul a chur san áireamh argóint ar an líne ordaithe,-TUI, 531 00:28:52,000 --> 00:28:55,000 agus beidh muid a chur i fadhbanna sa todhchaí ag spec a chur i gcuimhne. 532 00:28:55,000 --> 00:28:57,000 Agus anois popped an comhéadan dubh agus bán suas go, arís, 533 00:28:57,000 --> 00:28:59,000 Is beag mór ar dtús mar níl seo go léir 534 00:28:59,000 --> 00:29:02,000 faisnéis bharántas síos anseo, ach ar a laghad a bhfuil rud éigin ar an eolas. 535 00:29:02,000 --> 00:29:04,000 I barr na fuinneoige é mo cód iarbhír, 536 00:29:04,000 --> 00:29:08,000 agus má scrollbharra mé suas anseo a ligean scrollú dom go dtí an barr an-an mo chomhad, 537 00:29:08,000 --> 00:29:11,000 agus go deimhin, níl buggy3.c, agus fógra ag bun an fhuinneog seo 538 00:29:11,000 --> 00:29:13,000 Tá mé an pras GDB. 539 00:29:13,000 --> 00:29:16,000 >> Ní hé seo an rud céanna le mo ghnáth-John Harvard go pras. 540 00:29:16,000 --> 00:29:19,000 Is é seo an pras go dul ar a ligean dom a rialú GDB. 541 00:29:19,000 --> 00:29:21,000 Is GDB a dífhabhtóir. 542 00:29:21,000 --> 00:29:24,000 Tá dífhabhtóir clár a ligeann duit siúl tríd 543 00:29:24,000 --> 00:29:27,000 i gcrích do líne clár líne ar líne, 544 00:29:27,000 --> 00:29:30,000 feadh na slí ag déanamh aon rud is mian leat leis an gclár, 545 00:29:30,000 --> 00:29:33,000 fiú feidhmeanna a iarraidh, nó ag lorg, níos tábhachtaí fós, 546 00:29:33,000 --> 00:29:35,000 ag athróg éagsúla luachanna. 547 00:29:35,000 --> 00:29:37,000 Lig dul ar aghaidh agus é seo a dhéanamh. 548 00:29:37,000 --> 00:29:40,000 Tá mé ag dul chun dul ar aghaidh agus cineál i rith ag pras GDB, an 549 00:29:40,000 --> 00:29:43,000 mar sin faoi deara ag bun na láimhe clé den scáileán mé chlóscríobh rith, 550 00:29:43,000 --> 00:29:45,000 agus tá mé bhuail isteach, agus cad a rinne a dhéanamh? 551 00:29:45,000 --> 00:29:50,000 Rith sé literally mo chlár, ach ní fhaca mé i ndáiríre i bhfad dul ar anseo 552 00:29:50,000 --> 00:29:55,000 toisc nach bhfuil mé in iúl i ndáiríre an dífhabhtóir 553 00:29:55,000 --> 00:29:57,000 chun sos ag am ar leith in am. 554 00:29:57,000 --> 00:29:59,000 Just a chlóscríobh reáchtáil ritheann an chláir. 555 00:29:59,000 --> 00:30:01,000 Ní féidir liom a fheiceáil i ndáiríre rud ar bith. Ní féidir liom ionramháil. 556 00:30:01,000 --> 00:30:03,000 >> Ina áit sin lig dom an. 557 00:30:03,000 --> 00:30:08,000 Ag an pras GDB in iúl dom a cineál ionad sos, dul isteach. 558 00:30:08,000 --> 00:30:10,000 Ní sin cad atá i gceist agam de réir cineáil. 559 00:30:10,000 --> 00:30:13,000 A ligean ar ionad cineál sos is mó. 560 00:30:13,000 --> 00:30:15,000 I bhfocail eile, ba mhaith liom a shocrú rud ar a dtugtar a brisphointe, 561 00:30:15,000 --> 00:30:18,000 a bhfuil ainmnithe aptly mar go mbeidh sé sos nó sos 562 00:30:18,000 --> 00:30:21,000 i gcrích do chlár ag an áit áirithe. 563 00:30:21,000 --> 00:30:23,000 Is é Príomh-an t-ainm na feidhme atá agam. 564 00:30:23,000 --> 00:30:25,000 Fógra go bhfuil GDB go leor cliste. 565 00:30:25,000 --> 00:30:28,000 Figured sé amach go dtarlaíonn is mó chun tús a chur thart ar líne 18 566 00:30:28,000 --> 00:30:32,000 de buggy3.c, agus fógra ansin anseo ag barr ar clé 567 00:30:32,000 --> 00:30:34,000 b + Is ceart in aice le líne 18. 568 00:30:34,000 --> 00:30:38,000 Sin i gcuimhne dom go bhfuil mé a shocrú le brisphointe ag líne 18. 569 00:30:38,000 --> 00:30:42,000 An uair seo nuair a chlóscríobh mé rith, tá mé ag dul a rith mo chlár 570 00:30:42,000 --> 00:30:45,000 suas go dtí amas sé go brisphointe, 571 00:30:45,000 --> 00:30:48,000 mar sin beidh an clár sos dom ag líne 18. 572 00:30:48,000 --> 00:30:50,000 Anseo théann muid, rith. 573 00:30:50,000 --> 00:30:53,000 Ní dhéanfaidh aon ní cosúil gur tharla, ach fógra ag bun na láimhe clé 574 00:30:53,000 --> 00:30:58,000 clár ag tosú, buggy3, brisphointe 1 i is mó ar líne buggy3.c 18. 575 00:30:58,000 --> 00:31:00,000 Cad is féidir liom a dhéanamh anois? 576 00:31:00,000 --> 00:31:03,000 >> Fógra féidir liom tosú ag clóscríobh rudaí cosúil le cló, 577 00:31:03,000 --> 00:31:08,000 Ní printf, x cló, agus anois go aisteach. 578 00:31:08,000 --> 00:31:11,000 An $ 1 Is ach fiosracht, mar beidh orainn a fheiceáil 579 00:31:11,000 --> 00:31:14,000 gach uair a phriontáil duit rud éigin a fhaigheann tú nua $ luach. 580 00:31:14,000 --> 00:31:18,000 Sin ionas gur féidir leat a tharchur ar ais chuig luachanna roimhe seo ar eagla na heagla, 581 00:31:18,000 --> 00:31:21,000 ach do anois cad a phriontáil é ag insint dom go bhfuil an luach ar x ag an bpointe seo sa scéal 582 00:31:21,000 --> 00:31:26,000 Is cosúil 134,514,032. 583 00:31:26,000 --> 00:31:29,000 Cad é? I gcás ina raibh a thagann fiú ó? 584 00:31:29,000 --> 00:31:31,000 [Inaudible-mac léinn] 585 00:31:31,000 --> 00:31:34,000 Go deimhin, tá an scéal seo beidh muid ag glaoch luach truflais, agus ní againn Labhair faoi seo go fóill, 586 00:31:34,000 --> 00:31:37,000 ach ar an gcúis go bhfuil tú athróg a thúsú 587 00:31:37,000 --> 00:31:40,000 Is léir mar sin go bhfuil siad roinnt luach gur mhaith leat iad a bheith acu. 588 00:31:40,000 --> 00:31:44,000 Ach tá an ghabháil cuimhne gur féidir leat athróg a dhearbhú 589 00:31:44,000 --> 00:31:46,000 mar a rinne mé nóiméad ó shin i mo sampla sigme 590 00:31:46,000 --> 00:31:48,000 gan iarbhír a thabhairt dóibh luach. 591 00:31:48,000 --> 00:31:50,000 Glaoch ar ais cad a rinne mé thar anseo i sigme. 592 00:31:50,000 --> 00:31:52,000 Dhearbhú mé n, ach cad a luach raibh mé a thabhairt dó? 593 00:31:52,000 --> 00:31:56,000 Níl, mar a fhios agam gur i línte romhainn 594 00:31:56,000 --> 00:31:59,000 Ba mhaith GetInt cúram a ghlacadh ar an bhfadhb a chur ar luach taobh istigh de n. 595 00:31:59,000 --> 00:32:02,000 >> Ach ag an bpointe seo sa scéal ar líne 11 596 00:32:02,000 --> 00:32:05,000 12 líne agus agus líne 13 agus líne 14 597 00:32:05,000 --> 00:32:08,000 Is ar fud na línte éagsúla cad é an luach n? 598 00:32:08,000 --> 00:32:10,000 I C tú ní hamháin bhfuil a fhios. 599 00:32:10,000 --> 00:32:14,000 Tá sé go ginearálta ar roinnt luach truflais, le huimhir éigin go hiomlán randamach 600 00:32:14,000 --> 00:32:17,000 go fágtha thar bunúsach ó roinnt fheidhm roimhe seo 601 00:32:17,000 --> 00:32:21,000 a bheith ar siúl, mar sin ritheann do chlár 602 00:32:21,000 --> 00:32:24,000 cuimhne go bhfaigheann fheidhm fheidhm, feidhm, feidhm. 603 00:32:24,000 --> 00:32:27,000 Gach na frámaí a fháil a chur ar chuimhne, agus ansin iad siúd ar ais feidhmeanna, 604 00:32:27,000 --> 00:32:31,000 agus díreach mar a mhol mé leis an scriosán bhfuil a n-cuimhne athúsáid deireadh thiar. 605 00:32:31,000 --> 00:32:37,000 Bhuel, a tharlaíonn sé ach ionas go mbeidh an x ​​athróg sa chlár seo 606 00:32:37,000 --> 00:32:41,000 cosúil go bhfuil fáil ar roinnt luach truflais mhaith 134514032 607 00:32:41,000 --> 00:32:44,000 ó roinnt fheidhm roimhe seo, ní amháin gur scríobh mé. 608 00:32:44,000 --> 00:32:47,000 D'fhéadfadh sé a bheith rud a thagann go héifeachtach leis an gcóras oibriúcháin, 609 00:32:47,000 --> 00:32:49,000 roinnt feidhm thíos an cochall. 610 00:32:49,000 --> 00:32:52,000 >> Maith go leor, tá go maith, ach ligean ar anois roimh ré leis an chéad líne eile. 611 00:32:52,000 --> 00:32:55,000 Má mé cineál "eile" ar mo GDB pras agus bhuail mé isteach, 612 00:32:55,000 --> 00:32:58,000 faoi ​​deara go mbogann an béim síos go dtí líne 19, 613 00:32:58,000 --> 00:33:01,000 ach tá an impleacht loighciúil an líne 18 614 00:33:01,000 --> 00:33:06,000 Tá críochnaithe anois forghníomhaitheach, mar sin má mé cineál arís "cló x" 615 00:33:06,000 --> 00:33:10,000 Ba chóir dom a fheiceáil anois 1, agus go deimhin, is féidir liom. 616 00:33:10,000 --> 00:33:14,000 Arís, tá an stuif $ bhealach GDB i gcuimhne duit 617 00:33:14,000 --> 00:33:17,000 cad iad na staire de phriontaí go atá déanta agat. 618 00:33:17,000 --> 00:33:21,000 Anois, lig dom dul ar aghaidh agus a phriontáil y amach, agus go deimhin, tá roinnt luach y mire chomh maith, 619 00:33:21,000 --> 00:33:24,000 ach gan aon déileáil go mór mar gheall ar aon dul 19 tá muid ar tí é a shannadh dó 620 00:33:24,000 --> 00:33:27,000 an luach 2, in iúl dom cineál "eile" arís. 621 00:33:27,000 --> 00:33:29,000 Agus anois tá muid ar an líne printf. 622 00:33:29,000 --> 00:33:31,000 Lig dom a dhéanamh x phriontáil. 623 00:33:31,000 --> 00:33:34,000 Lig dom a dhéanamh y phriontáil. Frankly, tá mé ag dul a tuirseach beag clódóireachta seo. 624 00:33:34,000 --> 00:33:38,000 Lig dom cineál ionad "x taispeáint" agus "taispeáint y," 625 00:33:38,000 --> 00:33:41,000 agus anois gach uair a chlóscríobh mé i gceannas ar an todhchaí 626 00:33:41,000 --> 00:33:45,000 Beidh mé i gcuimhne ar cad x agus y, cad x agus y, cad x agus y. 627 00:33:45,000 --> 00:33:48,000 >> I Is féidir freisin, mar chineál leataobh, i "muintir na háite info." 628 00:33:48,000 --> 00:33:50,000 Is Eolas ordú speisialta. 629 00:33:50,000 --> 00:33:52,000 Muintir na háite ciallaíonn Léiríonn sé dom ar na hathróga áitiúil. 630 00:33:52,000 --> 00:33:55,000 Díreach i gcás mé dearmad nó is dÚsachtach, feidhm casta 631 00:33:55,000 --> 00:33:57,000 gur scríobh mé nó duine éigin eile a bheidh muintir na háite info insint duit 632 00:33:57,000 --> 00:34:00,000 cad iad na hathróga áitiúil taobh istigh an fheidhm áitiúil 633 00:34:00,000 --> 00:34:03,000 go mb'fhéidir go mbeadh tú cúram faoi más mian leat a poke timpeall. 634 00:34:03,000 --> 00:34:07,000 Anois, tá printf ar tí é a fhorghníomhú, agus mar sin in iúl dom dul ar aghaidh agus ach cineál "seo chugainn." 635 00:34:07,000 --> 00:34:10,000 Toisc go bhfuil muid sa timpeallacht seo nach bhfuil muid ag feiceáil i ndáiríre é 636 00:34:10,000 --> 00:34:14,000 fhorghníomhú síos anseo, ach faoi deara é a fháil beag coscartha anseo. 637 00:34:14,000 --> 00:34:17,000 Ach faoi deara é a sáraitheach an scáileán ann, 638 00:34:17,000 --> 00:34:21,000 mar sin ní tá sé ina clár iontach anseo, ach sin ceart go leor toisc nach féidir liom a poke i gcónaí ar fud 639 00:34:21,000 --> 00:34:23,000 ag baint úsáide as cló más mian liom. 640 00:34:23,000 --> 00:34:26,000 >> Lig dom cineál seo chugainn arís, agus anois tá anseo an chuid suimiúil. 641 00:34:26,000 --> 00:34:29,000 Ag an bpointe seo sa scéal é y 2, agus x 1, 642 00:34:29,000 --> 00:34:32,000 mar a mhol anseo, agus arís, 643 00:34:32,000 --> 00:34:35,000 Is é an chúis seo a thaispeánann go huathoibríoch anois mar gheall ar úsáid mé an t-ordú 644 00:34:35,000 --> 00:34:40,000 taispeáint x agus taispeáint y, mar sin i láthair na huaire cineál an chéad chéim eile 645 00:34:40,000 --> 00:34:43,000 Ba chóir go teoiriciúil x agus y bheith swapped. 646 00:34:43,000 --> 00:34:45,000 Anois, tá a fhios againn cheana féin ní ar sin ag dul a bheith ar an gcás, 647 00:34:45,000 --> 00:34:49,000 ach beidh orainn a fheiceáil i láthair conas is féidir linn Léim níos doimhne chun an figiúr amach cén fáth go bhfuil fíor. 648 00:34:49,000 --> 00:34:54,000 Next, agus ar an drochuair, tá y fós 2 agus x fós 1, agus is féidir liom a dhearbhú oiread. 649 00:34:54,000 --> 00:34:56,000 Priontáil x, cló y. 650 00:34:56,000 --> 00:34:59,000 Go deimhin, níl aon swapping a tharla i ndáiríre, mar sin a ligean tús a chur leis os a chionn. 651 00:34:59,000 --> 00:35:01,000 Is léir go bhfuil babhtála briste. 652 00:35:01,000 --> 00:35:04,000 A ligean ar chineál in ionad "rith" arís. 653 00:35:04,000 --> 00:35:07,000 Lig dom a rá yes, ba mhaith liom a atosú ón tús, dul isteach. 654 00:35:07,000 --> 00:35:09,000 >> Anois tá mé ar ais suas ar líne 18. 655 00:35:09,000 --> 00:35:11,000 Anois, fógra x agus y Is iad na luachanna truflais arís. 656 00:35:11,000 --> 00:35:15,000 Next, seo chugainn, seo chugainn, seo chugainn. 657 00:35:15,000 --> 00:35:17,000 Má rachaidh mé leamh féidir liom freisin cineál ach n = chugainn. 658 00:35:17,000 --> 00:35:21,000 Is féidir leat é a abbreviate leis an t-ord is giorra is féidir de charachtair. 659 00:35:21,000 --> 00:35:23,000 Babhtáil briste anois. 660 00:35:23,000 --> 00:35:25,000 A ligean ar Léim i, mar sin in ionad clóscríobh seo chugainn, 661 00:35:25,000 --> 00:35:30,000 anois tá mé ag dul céim le cineál ionas go mbeidh mé ag stepping taobh istigh den fheidhm 662 00:35:30,000 --> 00:35:33,000 ionas gur féidir liom siúl tríd é, mar sin bhuail mé céim agus ansin dul isteach. 663 00:35:33,000 --> 00:35:37,000 Fógra go bhfuil na jumps béim níos ísle síos i mo chlár go dtí an líne 36. 664 00:35:37,000 --> 00:35:39,000 Anois, cad iad na hathróga áitiúil? 665 00:35:39,000 --> 00:35:41,000 Muintir na háite Info. 666 00:35:41,000 --> 00:35:43,000 Ní dhéanfaidh aon ní ach go fóill toisc nach tá muid gotten leis an líne, 667 00:35:43,000 --> 00:35:47,000 mar sin a ligean le dul ar aghaidh agus a rá "seo chugainn." 668 00:35:47,000 --> 00:35:50,000 Anois, is cosúil go bhfuil tmp tmp cló,. 669 00:35:50,000 --> 00:35:52,000 Luach Dramhaíl, ceart? I mo thuairimse, mar sin. 670 00:35:52,000 --> 00:35:55,000 Conas a phriontáil faoi, cló b, 1 agus 2? 671 00:35:55,000 --> 00:35:58,000 I láthair na huaire, a luaithe is mé cineál seo chugainn arís 672 00:35:58,000 --> 00:36:02,000 tmp ag dul a ghlacadh ar luach 1, táthar ag súil, 673 00:36:02,000 --> 00:36:05,000 toisc go bhfuil tmp ag dul a bheith sannta an luach. 674 00:36:05,000 --> 00:36:08,000 >> Anois, a ligean a dhéanann a phriontáil, a phriontáil b, 675 00:36:08,000 --> 00:36:11,000 ach a phriontáil anois tmp, agus tá sé go deimhin 1. 676 00:36:11,000 --> 00:36:14,000 Lig dom a dhéanamh amach romhainn. Lig dom a dhéanamh amach romhainn. 677 00:36:14,000 --> 00:36:16,000 Tá mé críochnaithe an fheidhm babhtála. 678 00:36:16,000 --> 00:36:19,000 Tá mé fós taobh istigh de sé ag teacht 40, in iúl dom a phriontáil, 679 00:36:19,000 --> 00:36:22,000 Ní cló b, agus liom cúram cad is tmp. 680 00:36:22,000 --> 00:36:27,000 Breathnaíonn sé cosúil go bhfuil babhtála ceart nuair a thagann sé swapping a b agus. 681 00:36:27,000 --> 00:36:31,000 Ach má tá mé cineál anois chugainn, léim mé ar ais go dtí an líne 25, 682 00:36:31,000 --> 00:36:34,000 agus, ar ndóigh, más rud é cineál mé in x agus y cló 683 00:36:34,000 --> 00:36:38,000 tá siad fós gan athrú, mar sin ní mór dúinn a shocrú ar an bhfadhb. 684 00:36:38,000 --> 00:36:41,000 Ach diagnostically b'fhéidir anois leis an gclár GDB 685 00:36:41,000 --> 00:36:44,000 againn ar a laghad gotten céim amháin níos gaire do thuiscint 686 00:36:44,000 --> 00:36:47,000 cad atá ar siúl mícheart gan a bheith a bruscar ár gcód trí chur printf anseo, 687 00:36:47,000 --> 00:36:50,000 printf anseo, printf anseo agus ansin rith sé arís agus arís 688 00:36:50,000 --> 00:36:52,000 iarraidh a dhéanamh amach cad atá ar siúl mícheart. 689 00:36:52,000 --> 00:36:55,000 >> Tá mé ag dul chun dul ar aghaidh agus éirí as an tobac amach as an fad le scor. 690 00:36:55,000 --> 00:36:57,000 Tá sé seo ag dul a rá ansin, "Scoir mar sin féin?" Tá. 691 00:36:57,000 --> 00:37:00,000 Anois, tá mé ar ais ar mo pras gnáth, agus mé ag déanamh úsáid a bhaint as GDB. 692 00:37:00,000 --> 00:37:03,000 Mar leataobh, ní gá duit seo a úsáid-TUI bhratach. 693 00:37:03,000 --> 00:37:07,000 Go deimhin, má fhágáil ar lár tú é a gheobhaidh tú go bunúsach ar an leath bun an scáileáin. 694 00:37:07,000 --> 00:37:11,000 Má tá mé cineál ansin sos is mó agus ansin rith 695 00:37:11,000 --> 00:37:15,000 Féidir liom a reáchtáil go fóill mo chlár, ach cad a bheidh sé a dhéanamh níos mó textually 696 00:37:15,000 --> 00:37:18,000 ach a thaispeáint dom an líne amháin atá ann faoi láthair ag an am. 697 00:37:18,000 --> 00:37:21,000 Tá an TUI-, comhéadan úsáideora téacsúil, 698 00:37:21,000 --> 00:37:25,000 ach léiríonn tú níos mó ar an gclár ag an am céanna, is dócha beagán níos éasca choincheapa. 699 00:37:25,000 --> 00:37:27,000 Ach go deimhin, is féidir liom a dhéanamh ach seo chugainn, seo chugainn, seo chugainn, 700 00:37:27,000 --> 00:37:30,000 agus tá mé ag dul a fheiceáil ar líne amháin ag an am, agus más mian liom a fheiceáil cad atá ar siúl 701 00:37:30,000 --> 00:37:35,000 Is féidir liom cineál liosta agus a bunch iomlán de línte comharsanachta a fheiceáil. 702 00:37:35,000 --> 00:37:39,000 >> Níl físeán go atá againn d'iarr go bhfuil tú ag breathnú ar Leagann fhadhb 3 703 00:37:39,000 --> 00:37:43,000 in a chlúdaíonn Nate roinnt de na intricacies GDB, 704 00:37:43,000 --> 00:37:46,000 agus tá sé seo ar cheann de na rudaí sin, go hionraic, i gcás roinnt céatadán neamh-fánach de tú 705 00:37:46,000 --> 00:37:49,000 ní bheidh teagmháil GDB, agus a bheidh droch-rud 706 00:37:49,000 --> 00:37:53,000 mar literally beidh tú deireadh suas caitheamh níos mó ama níos déanaí seimeastar 707 00:37:53,000 --> 00:37:56,000 chasing síos bugs ansin bheadh ​​agat má chuir tú i go leath uair an chloig / uair an chloig 708 00:37:56,000 --> 00:38:00,000 an tseachtain seo chugainn agus foghlaim a fháil compordach le GDB. 709 00:38:00,000 --> 00:38:02,000 Printf bhí do chara. 710 00:38:02,000 --> 00:38:05,000 Ba chóir go GDB a bheith anois do chara. 711 00:38:05,000 --> 00:38:08,000 >> Ceisteanna ar bith ar GDB? 712 00:38:08,000 --> 00:38:12,000 Agus anseo liosta tapa ar roinnt de na horduithe is cumhachtaí agus úsáideach. 713 00:38:12,000 --> 00:38:15,000 Yeah féidir. >> Leat a phriontáil ar shraith? 714 00:38:15,000 --> 00:38:17,000 An féidir leat a phriontáil ar shraith? Cinnte. 715 00:38:17,000 --> 00:38:19,000 Ní chuireann sé a bheith díreach slánuimhreacha. 716 00:38:19,000 --> 00:38:22,000 Má tá s athraitheach teaghrán ach cineál i s gcló. 717 00:38:22,000 --> 00:38:24,000 Beidh sé a thaispeáint duit cad é go bhfuil athróg teaghrán. 718 00:38:24,000 --> 00:38:26,000 [Inaudible-mac léinn] 719 00:38:26,000 --> 00:38:28,000 Beidh sé a thabhairt duit an seoladh agus an teaghrán féin. 720 00:38:28,000 --> 00:38:32,000 Beidh sé a thaispeáint duit an dá cheann. 721 00:38:32,000 --> 00:38:34,000 Agus rud amháin anuas, ach toisc go bhfuil na maith a fhios freisin. 722 00:38:34,000 --> 00:38:37,000 Cúl-lorg agus fráma, lig dom a Léim isteach an am seo ceann deireanach, 723 00:38:37,000 --> 00:38:39,000 clár cruinn céanna le GDB. 724 00:38:39,000 --> 00:38:44,000 Lig dom dul ar aghaidh agus an leagan comhéadan úsáideora téacsach rith, 725 00:38:44,000 --> 00:38:46,000 briseadh is mó. 726 00:38:46,000 --> 00:38:49,000 Lig dom dul ar aghaidh agus a reáchtáil arís. Anseo mé. 727 00:38:49,000 --> 00:38:55,000 Anois, lig dom dul amach romhainn, seo chugainn, seo chugainn, seo chugainn, seo chugainn, céim, dul isteach. 728 00:38:55,000 --> 00:39:00,000 >> Agus is dócha anois tá mé anois i babhtála d'aon ghnó, ach tá mé ar nós "Diabhal, cad a bhí an luach x?" 729 00:39:00,000 --> 00:39:02,000 Ní féidir liom a dhéanamh x níos mó. 730 00:39:02,000 --> 00:39:05,000 Ní féidir liom a dhéanamh y toisc nach bhfuil siad i raon feidhme. 731 00:39:05,000 --> 00:39:07,000 Nach bhfuil siad i gcomhthéacs, ach gan aon fhadhb. 732 00:39:07,000 --> 00:39:09,000 Is féidir liom cineál cúl-lorg. 733 00:39:09,000 --> 00:39:13,000 Go léiríonn dom go léir de na feidhmeanna a fhorghníomhú suas go dtí an bpointe seo in am. 734 00:39:13,000 --> 00:39:16,000 Fógra go bhfuil an ceann ar an mbun, is mó, línte suas le príomh- 735 00:39:16,000 --> 00:39:18,000 a bheith ar bun ár pictiúr anseo. 736 00:39:18,000 --> 00:39:22,000 An fíoras go bhfuil babhtála os a chionn línte suas le babhtáil a bheith os a chionn i gcuimhne anseo, 737 00:39:22,000 --> 00:39:26,000 agus más mian liom a fháil ar ais go dtí príomh sealadach féidir liom a rá "fráma". 738 00:39:26,000 --> 00:39:30,000 Cén uimhir? Is é Príomh fráma # 1. 739 00:39:30,000 --> 00:39:32,000 Tá mé ag dul chun dul ar aghaidh agus a rá "fráma 1." 740 00:39:32,000 --> 00:39:36,000 >> Anois, tá mé ar ais i is mó, agus is féidir liom a phriontáil x, agus is féidir liom a phriontáil y, 741 00:39:36,000 --> 00:39:40,000 ach ní féidir liom a phriontáil b nó. 742 00:39:40,000 --> 00:39:43,000 Ach is féidir liom a rá má mé, "Maith go leor, fan nóiméad. Nuair a bhí an babhtála?" 743 00:39:43,000 --> 00:39:46,000 Lig dom dul ar aghaidh agus a rá "fráma 0." 744 00:39:46,000 --> 00:39:48,000 Anois tá mé ar ais áit ar mhaith liom a bheith, agus mar chur ar ceal, 745 00:39:48,000 --> 00:39:52,000 níl orduithe eile freisin, cosúil le más rud é go bhfuil tú ag fáil i ndáiríre clóscríobh leamh seo chugainn, seo chugainn, seo chugainn, seo chugainn, 746 00:39:52,000 --> 00:39:56,000 féidir leat a rá go ginearálta rudaí ar nós "10 seo chugainn," agus go mbeidh céim tríd an 10 línte seo chugainn. 747 00:39:56,000 --> 00:39:59,000 Is féidir leat scríobh freisin "ar aghaidh" nuair tú bréan i ndáiríre suas leis stepping tríd. 748 00:39:59,000 --> 00:40:05,000 Leanfaidh sé ar aghaidh á reáchtáil do chlár gan staonadh, go dtí amas sé eile brisphointe, 749 00:40:05,000 --> 00:40:07,000 cibé acu i lúb nó níos ísle síos i do chlár. 750 00:40:07,000 --> 00:40:11,000 >> Sa chás seo leanamar ag an deireadh, agus an clár sendmail de ghnáth. 751 00:40:11,000 --> 00:40:13,000 Is é seo ar bhealach sainiúil, próiseas inferior. 752 00:40:13,000 --> 00:40:16,000 Just a sendmail do chlár de ghnáth. 753 00:40:16,000 --> 00:40:24,000 Níos mó ar an sa físeán agus i seisiúin debugging atá le teacht. 754 00:40:24,000 --> 00:40:26,000 Ba é sin go leor. 755 00:40:26,000 --> 00:40:35,000 A ligean ar chur ar ár 5 nóiméad sos anseo, agus beidh orainn ar ais le structs agus comhaid. 756 00:40:35,000 --> 00:40:38,000 >> Má tá tú dived isteach na seachtaine seo pset cheana 757 00:40:38,000 --> 00:40:41,000 beidh a fhios agat go n-úsáideann muid sa chód dáilte, 758 00:40:41,000 --> 00:40:45,000 an fhoinse cód a chuirimid ar fáil duit mar phointe tosaigh, roinnt teicníochtaí nua. 759 00:40:45,000 --> 00:40:50,000 Go háirithe, thugamar isteach an eochairfhocal nua ar a dtugtar struct, do struchtúr, 760 00:40:50,000 --> 00:40:53,000 ionas gur féidir linn a chruthú athróg saincheaptha de shaghas. 761 00:40:53,000 --> 00:40:57,000 Isteach againn chomh maith ar an nóisean de ionchur comhad comhad I / O, agus aschur, 762 00:40:57,000 --> 00:41:00,000 agus tá sé seo ionas gur féidir linn a shábháil ar staid 763 00:41:00,000 --> 00:41:03,000 de do bhord Scramble le comhad ar dhiosca 764 00:41:03,000 --> 00:41:06,000 ionas gur féidir na comhaltaí teagaisc agus tuigim 765 00:41:06,000 --> 00:41:09,000 cad atá ar siúl taobh istigh de do chlár gan a bheith a imirt láimh 766 00:41:09,000 --> 00:41:11,000 mórán de na cluichí Scramble. 767 00:41:11,000 --> 00:41:13,000 Is féidir linn é seo níos automatedly. 768 00:41:13,000 --> 00:41:18,000 >> Réitíonn an smaoineamh struct fadhb cothrom láidre. 769 00:41:18,000 --> 00:41:21,000 Má ghlactar leis go ba mhaith linn a chur i bhfeidhm roinnt clár 770 00:41:21,000 --> 00:41:25,000 go gcoinníonn bhealach rian eolais ar mhic léinn, 771 00:41:25,000 --> 00:41:28,000 agus a d'fhéadfadh mic léinn a bheith acu, mar shampla, ar ID, ainm 772 00:41:28,000 --> 00:41:31,000 agus teach in áit cosúil le Harvard, mar sin tá na 3 phíosa eolais 773 00:41:31,000 --> 00:41:34,000 ba mhaith linn a choinneáil thart, in iúl dom dul ar aghaidh agus tús a scríobh le clár beag anseo, 774 00:41:34,000 --> 00:41:38,000 I measc stdio.h. 775 00:41:38,000 --> 00:41:42,000 Lig dom a áireamh cs50.h. 776 00:41:42,000 --> 00:41:44,000 Agus ansin tosú mé ag feidhmiú is mó. 777 00:41:44,000 --> 00:41:46,000 Ní bheidh mé bodhraigh le haon argóintí, 778 00:41:46,000 --> 00:41:49,000 agus anseo Ba mhaith liom go mbeadh mac léinn, mar sin mé ag dul a rá 779 00:41:49,000 --> 00:41:54,000 Tá mac léinn ainm, mar sin mé ag dul a rá "ainm teaghrán." 780 00:41:54,000 --> 00:41:59,000 Ansin mé ag dul a rá le mac léinn chomh maith, le ID, id sin int, 781 00:41:59,000 --> 00:42:03,000 agus tá mac léinn teach, mar sin tá mé ag dul freisin a rá "teach teaghrán." 782 00:42:03,000 --> 00:42:06,000 Ansin, beidh mé a ordú na beag níos cleanly mar seo. 783 00:42:06,000 --> 00:42:11,000 Maith go leor, anois tá mé 3 athróg lena chun ionadaíocht a dhéanamh ar mhac léinn, agus mar sin "mac léinn". 784 00:42:11,000 --> 00:42:15,000 >> Agus anois ba mhaith liom a phobalú na luachanna, in iúl dom dul ar aghaidh agus a rá rud éigin cosúil le 785 00:42:15,000 --> 00:42:18,000 "Id = 123." 786 00:42:18,000 --> 00:42:21,000 Ainm bhfuil ag dul a fháil David. 787 00:42:21,000 --> 00:42:24,000 Ligean le rá teach ag dul a fháil Mather, 788 00:42:24,000 --> 00:42:31,000 agus ansin tá mé ag dul rud éigin a dhéanamh treallach cosúil le printf ("% s, 789 00:42:31,000 --> 00:42:37,000 a bhfuil ID tá% d, ina cónaí i% s. 790 00:42:37,000 --> 00:42:41,000 Agus anois, cad ba mhaith liom a breiseán i anseo, i ndiaidh a chéile? 791 00:42:41,000 --> 00:42:47,000 Ainm, id, teach; ais 0. 792 00:42:47,000 --> 00:42:50,000 Maith go leor, ach amháin má screwed mé suas áit éigin anseo 793 00:42:50,000 --> 00:42:54,000 I mo thuairimse, ní mór dúinn clár maith go leor go siopaí mac léinn amháin. 794 00:42:54,000 --> 00:42:57,000 Ar ndóigh, nach é seo go léir go suimiúil. Cad a tharlaíonn má ba mhaith liom a bheith 2 mic léinn? 795 00:42:57,000 --> 00:42:59,000 Sin aon déileáil mór. Is féidir liom tacaíocht a thabhairt 2 daoine. 796 00:42:59,000 --> 00:43:03,000 Lig dom dul ar aghaidh agus an aird a tharraingt ar dul síos anseo, 797 00:43:03,000 --> 00:43:09,000 agus is féidir liom a rá "id = 456" do dhuine cosúil le Rob atá ina chónaí i Kirkland. 798 00:43:09,000 --> 00:43:12,000 >> Maith go leor, go fóill, ach ní féidir liom glaoch ar na an rud céanna, 799 00:43:12,000 --> 00:43:15,000 agus tá sé cosúil Tá mé ag dul go bhfuil a chóipeáil seo, 800 00:43:15,000 --> 00:43:19,000 mar sin lig dom a rá go mbeidh siad seo athróg David, 801 00:43:19,000 --> 00:43:23,000 agus lig dom a fháil ar roinnt cóipeanna de na do Rob. 802 00:43:23,000 --> 00:43:27,000 Beidh muid glaoch ar na s Rob ach nach bhfuil sé seo ag dul ag obair anois 803 00:43:27,000 --> 00:43:33,000 mar gheall mé-fanacht, a ligean ar dom a athrú go id1, name1 agus house1. 804 00:43:33,000 --> 00:43:35,000 Beidh Rob 2, 2. 805 00:43:35,000 --> 00:43:42,000 Tá mé a athrú seo anseo, anseo, anseo, anseo, anseo, anseo. 806 00:43:42,000 --> 00:43:45,000 Fan, cad faoi Tommy? A ligean ar é seo a dhéanamh arís. 807 00:43:45,000 --> 00:43:49,000 Ndóigh, má cheapann tú go fóill é seo ar bhealach maith é seo a dhéanamh, nach bhfuil sé, 808 00:43:49,000 --> 00:43:52,000 sin a chóipeáil / greamaigh dona. 809 00:43:52,000 --> 00:43:55,000 Ach a réiteach againn seo in aghaidh na seachtaine ó shin. 810 00:43:55,000 --> 00:43:59,000 >> Cad a bhí ár réiteach nuair a bhíomar ag iarraidh a bheith cásanna iolracha den chineál céanna sonraí? 811 00:43:59,000 --> 00:44:01,000 [Mic Léinn] An eagar. 812 00:44:01,000 --> 00:44:03,000 Eagar, in iúl dom iarracht a ghlanadh suas seo. 813 00:44:03,000 --> 00:44:07,000 Lig dom a dhéanamh ar roinnt seomra le haghaidh féin ag an mbarr, agus lig dom in ionad an anseo. 814 00:44:07,000 --> 00:44:12,000 Beidh muid glaoch na daoine, agus ina ionad sin mé ag dul a rá "ids o," 815 00:44:12,000 --> 00:44:14,000 agus tá mé ag dul chun tacú le 3 den linn le haghaidh anois. 816 00:44:14,000 --> 00:44:18,000 Tá mé ag dul a rá "ainmneacha teaghrán," agus beidh tacaíocht 3 de dúinn mé, 817 00:44:18,000 --> 00:44:22,000 agus ansin tá mé ag dul a rá "tithe téad," agus mé ag dul chun tacú le 3 de dúinn. 818 00:44:22,000 --> 00:44:26,000 Anois i anseo in ionad David ag fáil a n-athróg áitiúil féin 819 00:44:26,000 --> 00:44:28,000 is féidir linn a fháil haitheantas coibhneasta de na. 820 00:44:28,000 --> 00:44:30,000 Go mothaíonn maith go bhfuil muid ag glanadh suas seo. 821 00:44:30,000 --> 00:44:35,000 Is féidir liom a rá ansin David ag dul a bheith [0] agus ainmneacha [0] 822 00:44:35,000 --> 00:44:38,000 agus tithe [0]. 823 00:44:38,000 --> 00:44:41,000 Agus Rob ansin is féidir linn a shábháil céanna ar seo. 824 00:44:41,000 --> 00:44:46,000 A ligean ar seo a chur anseo síos, agus mar sin tá sé ag dul a bheith treallach ids [1]. 825 00:44:46,000 --> 00:44:50,000 Tá sé ag dul a bheith ainmneacha [1], 826 00:44:50,000 --> 00:44:53,000 agus ansin ar deireadh, tithe [1]. 827 00:44:53,000 --> 00:44:57,000 >> Fós a tedious beag, agus anois tá mé a figiúr seo amach, 828 00:44:57,000 --> 00:45:03,000 mar sin a ligean le rá "ainmneacha [0], id [0], tithe [0], 829 00:45:03,000 --> 00:45:06,000 agus a ligean ar pluralize seo. 830 00:45:06,000 --> 00:45:09,000 Ids, ids, ids. 831 00:45:09,000 --> 00:45:12,000 Agus arís, tá mé a dhéanamh air, agus mar sin arís, tá mé ag dul cheana féin a chóipeáil / greamaigh arís, 832 00:45:12,000 --> 00:45:14,000 mar sin tá odds níl réiteach eile anseo. 833 00:45:14,000 --> 00:45:18,000 Is féidir liom a ghlanadh seo is dócha suas a thuilleadh le lúb nó rud éigin mar sin, 834 00:45:18,000 --> 00:45:21,000 sin i mbeagán focal, tá sé ina beagán níos fearr ach fós mothaíonn mhaith 835 00:45:21,000 --> 00:45:24,000 Tá mé ag dul a chóipeáil / greamaigh, ach fiú sin, éileamh mé, 836 00:45:24,000 --> 00:45:27,000 nach bhfuil i ndáiríre go bunúsach an réiteach ceart mar gheall ar 837 00:45:27,000 --> 00:45:29,000 cad más rud é am éigin cinneadh a dhéanamh linn a fhios agat cad é? 838 00:45:29,000 --> 00:45:32,000 Táimid Ba chóir a bheith i ndáiríre a stóráil seoltaí ríomhphoist do David agus Rob 839 00:45:32,000 --> 00:45:34,000 agus gach duine eile sa chlár seo. 840 00:45:34,000 --> 00:45:36,000 Ba cheart dúinn a stóráil freisin uimhreacha teileafóin. 841 00:45:36,000 --> 00:45:39,000 Ba cheart dúinn a stóráil freisin uimhreacha teagmhála éigeandála. 842 00:45:39,000 --> 00:45:41,000 Tá gach na píosaí de shonraí a ba mhaith linn a stóráil, 843 00:45:41,000 --> 00:45:43,000 mar sin conas a dhéanann tú dul faoi á dhéanamh sin? 844 00:45:43,000 --> 00:45:46,000 >> Dearbhaím eile agat eagar ag an mbarr, agus ansin cuir tú de láimh 845 00:45:46,000 --> 00:45:49,000 seoladh ríomhphoist [0], seoladh ríomhphoist [1] 846 00:45:49,000 --> 00:45:51,000 do David agus Rob agus mar sin de. 847 00:45:51,000 --> 00:45:56,000 Ach níl i ndáiríre ach ag glacadh taobh thiar den dearadh 848 00:45:56,000 --> 00:45:59,000 go bhfuil mé ag baint úsáide as an gcóras onóir a fhios go 849 00:45:59,000 --> 00:46:03,000 [I] i ngach ceann de na arrays roinnt 850 00:46:03,000 --> 00:46:06,000 ach a tharlaíonn sin a tharchur chuig an duine céanna, 851 00:46:06,000 --> 00:46:10,000 mar sin [0] i ids uimhir 123, 852 00:46:10,000 --> 00:46:13,000 agus tá mé ag dul chun glacadh leis go ainmneacha [0] 853 00:46:13,000 --> 00:46:16,000 Is é an duine céanna a ainm agus tithe [0] 854 00:46:16,000 --> 00:46:21,000 Is é an duine céanna ar theach agus mar sin de do gach ceann de na arrays éagsúla go bhfuil mé a chruthú. 855 00:46:21,000 --> 00:46:24,000 Ach faoi deara go níl aon nasc bunúsach 856 00:46:24,000 --> 00:46:27,000 i measc iad siúd 3 phíosa eolais, ainm id, agus teach, 857 00:46:27,000 --> 00:46:32,000 cé nach bhfuil an t-eintiteas táimid ag iarraidh a samhail sa chlár seo arrays. 858 00:46:32,000 --> 00:46:35,000 Tá arrays ach an mbealach seo cláir seo a dhéanamh. 859 00:46:35,000 --> 00:46:38,000 Cad é ba mhaith linn i ndáiríre a mhúnlú i ár gclár duine 860 00:46:38,000 --> 00:46:41,000 cosúil le David, duine cosúil Rob taobh istigh de 861 00:46:41,000 --> 00:46:46,000 nó imchochlú ainm agus ID agus teach. 862 00:46:46,000 --> 00:46:49,000 >> An féidir linn in iúl ar bhealach an smaoineamh seo de chineál 863 00:46:49,000 --> 00:46:52,000 trína bhfuil leas ag duine ID, ainm agus teach 864 00:46:52,000 --> 00:46:55,000 agus nach dul ar iontaoibh i ndáiríre seo a hack trína againn ach 865 00:46:55,000 --> 00:46:58,000 muinín go bhfuil rud éigin scriosaidh 866 00:46:58,000 --> 00:47:02,000 Tagraíonn an t-eintiteas céanna an duine i ngach ceann de na arrays difriúla? 867 00:47:02,000 --> 00:47:04,000 Is féidir linn a dhéanamh i ndáiríre seo. 868 00:47:04,000 --> 00:47:08,000 Lig dom dul thuas is mó le haghaidh anois, agus lig dom a chruthú mo chuid féin sonraí de chineál 869 00:47:08,000 --> 00:47:10,000 do i ndáiríre an chéad uair. 870 00:47:10,000 --> 00:47:14,000 Úsáid againn an teicníc i Scramble, 871 00:47:14,000 --> 00:47:17,000 ach anseo tá mé ag dul chun dul ar aghaidh agus i ndáil le cineál sonraí a chruthú, 872 00:47:17,000 --> 00:47:19,000 agus tá a fhios agat cad, tá mé ag dul a ghlaoch air mac léinn nó an duine, 873 00:47:19,000 --> 00:47:23,000 agus tá mé ag dul a úsáid Rialú an chomhbheartais eachtraigh i ndáil le cineál. 874 00:47:23,000 --> 00:47:25,000 Tá mé ag dul a rá go bhfuil an struchtúr, 875 00:47:25,000 --> 00:47:29,000 agus tá sé ansin an struchtúr seo ag dul a bheith de chineál mac léinn, beidh orainn a rá, 876 00:47:29,000 --> 00:47:31,000 cé tá sé ina beagán dar dáta anois le haghaidh dom. 877 00:47:31,000 --> 00:47:33,000 Beidh muid a rá "slánuimhir id." 878 00:47:33,000 --> 00:47:35,000 Beidh muid a rá "ainm teaghrán." 879 00:47:35,000 --> 00:47:37,000 Ansin, beidh muid ag rá "teaghrán teach," 880 00:47:37,000 --> 00:47:40,000 mar sin anois faoi dheireadh na cúpla líne de chód 881 00:47:40,000 --> 00:47:45,000 Tá mé díreach tar éis a mhúintear clang go bhfuil ann 882 00:47:45,000 --> 00:47:49,000 i ndáil le cineál sonraí a seachas ints, seachas teaghráin, doubles sa bhreis, sa bhreis ar flótaí. 883 00:47:49,000 --> 00:47:54,000 >> Mar an nóiméad seo i 11 líne ama, tá anois sonraí nua ar a dtugtar chineál mic léinn, 884 00:47:54,000 --> 00:47:58,000 agus anois is féidir liom a dhearbhú go bhfuil athróg mac léinn áit ar bith ba mhaith liom, 885 00:47:58,000 --> 00:48:01,000 sin in iúl dom scrollú síos anseo do dhaoine. 886 00:48:01,000 --> 00:48:05,000 Anois is féidir liom a fháil haitheantas coibhneasta de sin, agus is féidir liom dul ar ais síos go dtí David anseo, 887 00:48:05,000 --> 00:48:10,000 agus le haghaidh David féidir liom a rá i ndáiríre go David, 888 00:48:10,000 --> 00:48:13,000 is féidir linn a ainm literally an athróg tar éis mé féin, 889 00:48:13,000 --> 00:48:16,000 ag dul a bheith de chineál mac léinn. 890 00:48:16,000 --> 00:48:18,000 D'fhéadfadh sé seo cuma aisteach beag, ach nach bhfuil sé seo go léir difriúil 891 00:48:18,000 --> 00:48:22,000 ó dhearbhú rud éigin mar slánuimhir nó ar theaghrán nó snámhphointe. 892 00:48:22,000 --> 00:48:24,000 Tharlaíonn sé ach ionas go bheith ar a dtugtar mac léinn anois, 893 00:48:24,000 --> 00:48:28,000 agus más mian liom rud éigin a chur taobh istigh an struchtúir seo 894 00:48:28,000 --> 00:48:31,000 Tá mé anois úsáid a bhaint as píosa nua chomhréir, ach tá sé deas simplí, 895 00:48:31,000 --> 00:48:39,000 david.id = 123, david.name = "David" i gcaipiteal D, 896 00:48:39,000 --> 00:48:42,000 agus david.house = "Mather," 897 00:48:42,000 --> 00:48:46,000 agus anois is féidir liom a fháil haitheantas coibhneasta de stuif seo anseo. 898 00:48:46,000 --> 00:48:51,000 Fógra againn athdhearadh anois ar ár gclár ar bhealach i ndáiríre i bhfad níos fearr 899 00:48:51,000 --> 00:48:54,000 sa mhéid is go scátháin anois ar ár gclár ar an saol fíor. 900 00:48:54,000 --> 00:48:57,000 >> Níl coincheap fíor-domhan ag duine nó mac léinn. 901 00:48:57,000 --> 00:49:02,000 Anseo atá againn anois ar leagan C den duine nó níos mó go sonrach mac léinn. 902 00:49:02,000 --> 00:49:05,000 Inside an duine sin go bhfuil na saintréithe ábhartha, 903 00:49:05,000 --> 00:49:10,000 ID, ainm agus teach, mar sin bíonn Rob go bunúsach an rud céanna síos anseo, 904 00:49:10,000 --> 00:49:14,000 mar sin mac léinn Rob, agus anois rob.id = 456, 905 00:49:14,000 --> 00:49:17,000 rob.name = "Rob". 906 00:49:17,000 --> 00:49:20,000 Is é an fíric go bhfuil an athróg ar a dtugtar Rob saghas meaningless. 907 00:49:20,000 --> 00:49:22,000 D'fhéadfadh muid a d'iarr sé ar x nó y nó z. 908 00:49:22,000 --> 00:49:25,000 Ainmnithe againn ach Rob é a bheith semantically comhsheasmhach, 909 00:49:25,000 --> 00:49:28,000 ach tá i ndáiríre an t-ainm taobh istigh de réimse sin féin, 910 00:49:28,000 --> 00:49:30,000 mar sin anois tá mé é seo. 911 00:49:30,000 --> 00:49:33,000 Sé seo nach bhfuil ró-bhraitheann cosúil leis an dearadh is fearr sa mhéid is go bhfuil mé códaithe crua David. 912 00:49:33,000 --> 00:49:35,000 Tá mé códaithe crua Rob. 913 00:49:35,000 --> 00:49:39,000 Agus tá mé fós dul i muinín roinnt cóip agus gach uair is mian liom athróg nua a ghreamú. 914 00:49:39,000 --> 00:49:43,000 Thairis sin, tá mé a thabhairt cosúil gach ceann de na hathróga a ainm, 915 00:49:43,000 --> 00:49:46,000 cé gur mhaith liom i bhfad in áit cur síos ar na hathróga 916 00:49:46,000 --> 00:49:48,000  níos mó mac léinn cineálach mar. 917 00:49:48,000 --> 00:49:52,000 >> Anois is féidir linn a chumasc na smaointe a bhí ag obair go maith dúinn 918 00:49:52,000 --> 00:49:56,000 agus a rá ina ionad sin, "Tá a fhios agat cad, a thabhairt dom mic léinn athróg ar a dtugtar, 919 00:49:56,000 --> 00:50:01,000 agus a ligean ar a bheith sé a bheith de mhéid 3, "mar sin anois is féidir liom a fheabhsú a thuilleadh, 920 00:50:01,000 --> 00:50:04,000 fáil réidh leis an David láimh dearbhaithe, 921 00:50:04,000 --> 00:50:08,000 agus is féidir liom a rá in ionad rud éigin cosúil le mic léinn [0] anseo. 922 00:50:08,000 --> 00:50:11,000 Féidir liom a rá ansin mic léinn [0] anseo, 923 00:50:11,000 --> 00:50:14,000 féidir le mic léinn [0] anseo, agus mar sin de, agus mé dul timpeall 924 00:50:14,000 --> 00:50:16,000 agus glan go raibh suas le Rob. 925 00:50:16,000 --> 00:50:19,000 Raibh mé in ann dul chomh maith mar gheall anois ag cur b'fhéidir lúb 926 00:50:19,000 --> 00:50:23,000 agus ag baint úsáide GetString agus GetInt a fháil ar iarbhír na luachanna ón úsáideoir. 927 00:50:23,000 --> 00:50:27,000 Raibh mé in ann dul faoi chur tairiseach mar is é seo go ginearálta droch-chleachtas 928 00:50:27,000 --> 00:50:29,000 chun cód crua le huimhir éigin treallach cosúil le 3 ar dheis anseo 929 00:50:29,000 --> 00:50:33,000 agus ansin cuimhnigh go díreach gur chóir duit a chur ar níos mó ná 3 mac léinn ann. 930 00:50:33,000 --> 00:50:36,000 Bheadh ​​sé níos fearr is dócha a úsáid # shainmhíniú ar bharr mo chomhad 931 00:50:36,000 --> 00:50:40,000 agus fachtóir go amach, mar sin go deimhin, lig dom dul ar aghaidh agus a ghinearálú. 932 00:50:40,000 --> 00:50:43,000 >> Lig dom a oscailt suas sampla go bhfuil i measc an lae inniu 933 00:50:43,000 --> 00:50:46,000 samplaí roimh ré, structs1. 934 00:50:46,000 --> 00:50:49,000 Is clár níos iomláine a úsáideann # shainmhíniú suas anseo 935 00:50:49,000 --> 00:50:51,000 agus deir táimid ag dul a bheith acu 3 mac léinn de réir réamhshocraithe. 936 00:50:51,000 --> 00:50:54,000 Anseo tá mé á dhearbhú fiú ranga na mac léinn, 937 00:50:54,000 --> 00:50:57,000 mar sin sa seomra ranga na mac léinn, agus anois tá mé ag baint úsáide as lúb 938 00:50:57,000 --> 00:51:00,000 ach a dhéanamh ar an gcód beagán níos galánta, populate an rang 939 00:51:00,000 --> 00:51:05,000 leis an úsáideora ionchur, abair leo sin as i = 0 ar suas do mhic léinn, a bhfuil 3. 940 00:51:05,000 --> 00:51:07,000 Agus ansin mé pras an t-úsáideoir sa leagan seo 941 00:51:07,000 --> 00:51:10,000  cad é an mac léinn ID, agus a fháil liom é le GetInt. 942 00:51:10,000 --> 00:51:13,000 Cad é an mhic léinn ainm, agus ansin mé é a fháil le GetString. 943 00:51:13,000 --> 00:51:15,000 Cad é an mhic léinn teach? A fháil liom é le GetString. 944 00:51:15,000 --> 00:51:19,000 Agus ansin ag bun anseo chinn mé díreach tar éis a athrú 945 00:51:19,000 --> 00:51:22,000 conas a bhfuil mé ag priontáil na amach agus úsáid a bhaint as i ndáiríre lúb, 946 00:51:22,000 --> 00:51:24,000 agus a táim priontáil mé? 947 00:51:24,000 --> 00:51:27,000 Dar leis an comment mé priontáil duine ar bith i Mather, 948 00:51:27,000 --> 00:51:30,000 agus tá go bhfuil sé sin Rob agus Tommy agus mar sin de-i ndáiríre Tommy i Mather. 949 00:51:30,000 --> 00:51:34,000 Ba mhaith Tommy agus David a phriontáil sa chás seo, ach conas é seo ag obair? 950 00:51:34,000 --> 00:51:40,000 Nach bhfuil feicthe againn an fheidhm seo sula, ach a ghlacadh le buille faoi thuairim maidir le cad a dhéanann seo. 951 00:51:40,000 --> 00:51:42,000 Teaghráin i gcomparáid. 952 00:51:42,000 --> 00:51:45,000 >> Tá sé beagán neamh-soiléir conas i gcomparáid teaghráin mar casadh sé amach 953 00:51:45,000 --> 00:51:49,000 má fhilleann sé 0 chiallaíonn go bhfuil an teaghráin comhionann. 954 00:51:49,000 --> 00:51:53,000 Má fhilleann sé -1 Ciallaíonn sé sin go dtagann ceann ord aibítre roimh an taobh eile, 955 00:51:53,000 --> 00:51:57,000 agus tagann má fhilleann sé 1 go ciallaíonn an focal eile in ord aibítre 956 00:51:57,000 --> 00:52:00,000 os comhair an eile, agus is féidir leat breathnú ar líne nó ar an leathanach fear 957 00:52:00,000 --> 00:52:04,000 a fheiceáil go díreach cén bealach a bhfuil, ach seo go léir ag déanamh anois tá sé ag rá 958 00:52:04,000 --> 00:52:09,000 má tá an [i]. tí is comhionann leis "Mather" 959 00:52:09,000 --> 00:52:13,000 ansin dul ar aghaidh agus a phriontáil amach leis sin, agus mar sin tá i Mather. 960 00:52:13,000 --> 00:52:16,000 Ach anseo rud éigin nach bhfuil feicthe againn roimh, agus beidh muid ag teacht ar ais leis seo. 961 00:52:16,000 --> 00:52:21,000 Ní féidir liom a aisghlaoch riamh a bhfuil seo a dhéanamh in aon cheann de mo chlár. 962 00:52:21,000 --> 00:52:24,000 Saor in Aisce Tá tagairt cosúil le cuimhne, freeing chuimhne, 963 00:52:24,000 --> 00:52:31,000 ach cad cuimhne orm freeing mé cosúil sa lúb ag bun an chlár seo? 964 00:52:31,000 --> 00:52:34,000 Breathnaíonn sé cosúil Tá mé ag freeing ainm duine 965 00:52:34,000 --> 00:52:37,000 agus an duine teach, ach cén fáth é sin? 966 00:52:37,000 --> 00:52:41,000 >> Casadh sé amach go léir na seachtaine sin tá tú ag baint úsáide as GetString 967 00:52:41,000 --> 00:52:45,000 tá muid de chineál ar cuireadh isteach a bug isteach i ngach ceann de do chlár. 968 00:52:45,000 --> 00:52:51,000 GetString ag dearadh cuimhne leithdháileann ionas gur féidir é a chur ar ais chugat ar shraith, 969 00:52:51,000 --> 00:52:55,000 Is féidir cosúil le David, nó Rob, agus tú a dhéanamh ansin is cuma cad ba mhaith leat 970 00:52:55,000 --> 00:52:59,000 leis an téad i do chlár mar gheall ar againn in áirithe ar an gcuimhne ar do shon. 971 00:52:59,000 --> 00:53:02,000 Is é an fhadhb seo go léir am gach uair a ghlaonn tú GetString 972 00:53:02,000 --> 00:53:05,000 againn, an údair GetString, a bheith ag iarraidh ar an córas oibriúcháin 973 00:53:05,000 --> 00:53:07,000 a thabhairt dúinn le beagán de RAM as an teaghrán. 974 00:53:07,000 --> 00:53:09,000 Tabhair dúinn le beagán de RAM as an teaghrán seo chugainn. 975 00:53:09,000 --> 00:53:11,000 Tabhair dúinn RAM roinnt níos mó le haghaidh an teaghrán seo chugainn. 976 00:53:11,000 --> 00:53:13,000 Cad a dhéanfaidh tú, an Ríomhchláraitheoir riamh, ag déanamh 977 00:53:13,000 --> 00:53:15,000 é a thabhairt ar ais dúinn go cuimhne, 978 00:53:15,000 --> 00:53:17,000 mar sin do na roinnt seachtainí gach ceann de na cláir atá tú i scríbhinn 979 00:53:17,000 --> 00:53:20,000 go raibh rud ar a dtugtar de léim cuimhne ina choimeád siad ag baint úsáide as 980 00:53:20,000 --> 00:53:24,000 cuimhne níos mó agus níos mó gach uair a ghlaonn tú GetString, agus go bhfuil fíneáil. 981 00:53:24,000 --> 00:53:27,000 Déanann muid d'aon ghnó go sa chéad seachtain toisc nach bhfuil sé go suimiúil 982 00:53:27,000 --> 00:53:29,000 a bheith acu a bheith buartha faoi ina bhfuil an teaghrán ag teacht as. 983 00:53:29,000 --> 00:53:34,000 Gach mian leat go bhfuil an focal Rob chun teacht ar ais nuair an t-úsáideoir cineálacha sé isteach 984 00:53:34,000 --> 00:53:38,000 >> Ach ag bogadh ar aghaidh ní mór dúinn anois chun tosú ag fáil níos sofaisticiúla faoi seo. 985 00:53:38,000 --> 00:53:42,000 Am ar bith a dháileadh againn cuimhne againn níos fearr a lámh ar deireadh thiar ar ais. 986 00:53:42,000 --> 00:53:45,000 Seachas sin ar fud an domhain fíor ar do Mac nó ríomhaire a bheadh ​​agat ó am go ham taithí 987 00:53:45,000 --> 00:53:50,000 comharthaí áit a bhfuil do ríomhaire meilt ar deireadh ndeireadh na dála 988 00:53:50,000 --> 00:53:54,000 nó go bhfuil an liathróid trá dúr sníomh occupying ach an ríomhaire 989 00:53:54,000 --> 00:53:56,000 Ní féidir aird ar fad agus tú rudaí a dhéanamh. 990 00:53:56,000 --> 00:54:00,000 Is féidir sin a mhíniú trí líon ar bith de bugs, ach i measc na bugs is féidir 991 00:54:00,000 --> 00:54:03,000 go bhfuil rudaí ar a dtugtar leaks cuimhne ina duine éigin a scríobh go píosa bogearraí 992 00:54:03,000 --> 00:54:07,000 bhfuil tú ag baint úsáide as nach raibh dearmad cuimhne saor in aisce 993 00:54:07,000 --> 00:54:10,000 gur iarr sé nó sí ar an gcóras oibriúcháin, 994 00:54:10,000 --> 00:54:14,000 nach n-úsáideann GetString, toisc go bhfuil rud CS50, ach úsáid a bhaint as feidhmeanna den chineál céanna 995 00:54:14,000 --> 00:54:16,000 a iarraidh an córas oibriúcháin do chuimhne. 996 00:54:16,000 --> 00:54:19,000 Má tá tú nó scriú siad suas agus ar ais riamh i ndáiríre go bhfuil cuimhne 997 00:54:19,000 --> 00:54:24,000 a symptom de is féidir a bheith go slows clár slows agus agus slows síos 998 00:54:24,000 --> 00:54:26,000 mura cuimhin leat glaoch saor in aisce. 999 00:54:26,000 --> 00:54:28,000 >> Beidh muid teacht ar ais chuig cathain agus cén fáth go mbeadh leat glaoch saor in aisce, 1000 00:54:28,000 --> 00:54:32,000 ach a ligean ar dul ar aghaidh ach le haghaidh dea-bheart agus iarracht a reáchtáil an clár ar leith. 1001 00:54:32,000 --> 00:54:35,000 Bhí ar a dtugtar an structs1, dul isteach. 1002 00:54:35,000 --> 00:54:40,000 Lig dom dul ar aghaidh agus structs1 rith, 123, David Mather, 1003 00:54:40,000 --> 00:54:47,000 456, Rob Kirkland, 789, 1004 00:54:47,000 --> 00:54:50,000 Tommy Mather, agus a fheiceann muid David i Mather, Tommy i Mather. 1005 00:54:50,000 --> 00:54:53,000 Is é seo ach seiceáil sanity beag go bhfuil an clár oibre. 1006 00:54:53,000 --> 00:54:56,000 Anois, ar an drochuair, tá an clár beag frustrating sa mhéid is go 1007 00:54:56,000 --> 00:55:00,000 Rinne mé go léir an obair sin, chlóscríobh mé i 9 teaghráin éagsúla, brúigh Iontráil, 1008 00:55:00,000 --> 00:55:04,000 Dúradh a bhí i Mather, ach is léir go raibh a fhios agam a bhí i Mather cheana féin mar gheall ar chlóscríobh mé é. 1009 00:55:04,000 --> 00:55:07,000 Bheadh ​​sé ar a laghad deas má tá an clár níos mó cosúil le bunachar sonraí 1010 00:55:07,000 --> 00:55:10,000 agus is cuimhin sé i ndáiríre cad tá mé clóscríofa i 1011 00:55:10,000 --> 00:55:12,000 mar sin riamh mé arís leis an ionchur na taifid mac léinn. 1012 00:55:12,000 --> 00:55:15,000 B'fhéidir go bhfuil sé cosúil le córas registrarial. 1013 00:55:15,000 --> 00:55:21,000 >> Is féidir linn é seo a baint úsáide as an teicníc ar a dtugtar mar ionchur comhad comhad I / O, agus aschur, 1014 00:55:21,000 --> 00:55:24,000 ar bhealach an-cineálach rá aon am is mian leat comhaid a léamh nó comhaid a scríobh 1015 00:55:24,000 --> 00:55:26,000 is féidir leat é seo a dhéanamh le sraith áirithe de feidhmeanna. 1016 00:55:26,000 --> 00:55:29,000 Lig dom dul ar aghaidh agus an structs2.c sampla a oscailt, 1017 00:55:29,000 --> 00:55:33,000 atá beagnach mar an gcéanna, ach ligean ar a fheiceáil cad a dhéanann sé anois. 1018 00:55:33,000 --> 00:55:36,000 Ag barr an chomhaid Dearbhaím rang de scoláirí. 1019 00:55:36,000 --> 00:55:38,000 I populate ansin an rang leis an úsáideoir ionchur, 1020 00:55:38,000 --> 00:55:41,000 mar sin na línte de chód atá díreach cosúil roimh. 1021 00:55:41,000 --> 00:55:45,000 Ansin, más scrollaigh mé síos anseo phriontáil liom gach duine atá i Mather mhaith treallach roimh, 1022 00:55:45,000 --> 00:55:47,000 ach tá sé seo ina ghné suimiúil nua. 1023 00:55:47,000 --> 00:55:51,000 Tá na línte cód nua, agus a thabhairt isteach siad rud éigin anseo, 1024 00:55:51,000 --> 00:55:55,000 COMHAD, gach caipíní, agus tá sé * i anseo chomh maith. 1025 00:55:55,000 --> 00:55:58,000 Lig dom seo a bhogadh thar anseo, a * thar anseo chomh maith. 1026 00:55:58,000 --> 00:56:00,000 >> An fheidhm seo nach bhfuil feicthe againn roimh, fopen, 1027 00:56:00,000 --> 00:56:03,000 ach ciallaíonn sé comhad a oscailt, mar sin a ligean skim trí na, 1028 00:56:03,000 --> 00:56:05,000 agus is é an rud beidh muid ag teacht ar ais i psets amach anseo, 1029 00:56:05,000 --> 00:56:10,000 ach osclaíonn an líne seo anseo go bunúsach comhad a dtugtar bunachar sonraí, 1030 00:56:10,000 --> 00:56:13,000 agus osclaíonn sé go sonrach air sa chaoi is gur féidir é a dhéanamh cad é? 1031 00:56:13,000 --> 00:56:15,000 [Inaudible-mac léinn] 1032 00:56:15,000 --> 00:56:19,000 Ceart, mar sin "w" ciallaíonn ach tá sé ag insint an córas oibriúcháin 1033 00:56:19,000 --> 00:56:21,000 comhad seo a oscailt sa chaoi is gur féidir liom a scríobh dó. 1034 00:56:21,000 --> 00:56:23,000 Níl mé ag iarraidh é a léamh. Níl mé ag iarraidh chun breathnú díreach ar sé. 1035 00:56:23,000 --> 00:56:26,000 Ba mhaith liom a athrú agus rudaí a chur d'fhéadfadh a bheith leis, 1036 00:56:26,000 --> 00:56:28,000 agus tá an comhad ag dul a bheith ar a dtugtar bunachar sonraí. 1037 00:56:28,000 --> 00:56:30,000 Fhéadfaí é seo a dtugtar rud ar bith. 1038 00:56:30,000 --> 00:56:32,000 D'fhéadfadh sé seo a bheith database.txt. D'fhéadfadh sé seo. Db. 1039 00:56:32,000 --> 00:56:37,000 D'fhéadfadh seo a bheith ina focal cosúil le foo, ach roghnaigh mé treallach a ainm ar an mbunachar sonraí comhad. 1040 00:56:37,000 --> 00:56:42,000 Is é seo a sheiceáil sanity beag go beidh orainn teacht ar ais go dtí go mion mór le himeacht ama, 1041 00:56:42,000 --> 00:56:47,000 más rud é FP, do pointeoir comhaid nach, NULLComment comhionann a chiallaíonn go léir atá go maith. 1042 00:56:47,000 --> 00:56:51,000 >> Fada scéal gearr, feidhmeanna cosúil le fopen theipeann uaireanta. 1043 00:56:51,000 --> 00:56:53,000 B'fhéidir nach bhfuil an comhad ann. B'fhéidir go bhfuil tú amach as an spás diosca. 1044 00:56:53,000 --> 00:56:55,000 B'fhéidir nach bhfuil tú cead a ghabhann leis an fillteán, 1045 00:56:55,000 --> 00:56:58,000 mar sin má fhilleann fopen rud éigin null a tharla dona. 1046 00:56:58,000 --> 00:57:02,000 Os a choinne sin, más rud é nach fopen ar ais null go léir go maith 1047 00:57:02,000 --> 00:57:04,000 agus is féidir liom tosú ag scríobh chuig an gcomhad seo. 1048 00:57:04,000 --> 00:57:06,000 Seo a trick nua. 1049 00:57:06,000 --> 00:57:08,000 Is é seo an lúb don tá iterating thar gach ceann de mo mhic léinn, 1050 00:57:08,000 --> 00:57:10,000 agus tá sé seo amhlaidh cosúil leis an méid atá déanta againn roimh, 1051 00:57:10,000 --> 00:57:15,000 ach tá an fheidhm seo a col ceathrar de printf ar a dtugtar fprintf le haghaidh comhaid printf, 1052 00:57:15,000 --> 00:57:18,000 agus fógra go bhfuil sé difriúil ach i 2 bealaí. 1053 00:57:18,000 --> 00:57:20,000 One, a thosaíonn sé le f ionad p, 1054 00:57:20,000 --> 00:57:23,000 ach ansin a chéad argóint cosúil cad é? 1055 00:57:23,000 --> 00:57:25,000 [Mic Léinn] File. >> Tá sé ina comhad. 1056 00:57:25,000 --> 00:57:30,000 Seo rud ar a dtugtar FP, a beidh orainn a tease sa deireadh amach cad is pointeoir comhaid, 1057 00:57:30,000 --> 00:57:35,000 ach do anois ionann FP ach an comhad go bhfuil mé oscail, 1058 00:57:35,000 --> 00:57:41,000 mar sin fprintf bhfuil anseo ag rá taispeáin an t-úsáideoir ID ar an gcomhad, nach bhfuil ar an scáileán. 1059 00:57:41,000 --> 00:57:44,000 Priontáil an úsáideora ainm an comhad, gan an scáileán, 1060 00:57:44,000 --> 00:57:47,000 an teach chun an comhad, gan an scáileán, agus ansin síos anseo, ar ndóigh, 1061 00:57:47,000 --> 00:57:50,000 an comhad a dhúnadh, agus ansin síos anseo saor in aisce leis an chuimhne. 1062 00:57:50,000 --> 00:57:53,000 >> An difríocht amháin idir an leagan 2 agus leagan 1 1063 00:57:53,000 --> 00:57:58,000 Is é a thabhairt isteach fopen agus COMHAD le * 1064 00:57:58,000 --> 00:58:01,000 agus an coincheap de fprintf, mar sin a ligean ar a fheiceáil cad é an toradh deiridh. 1065 00:58:01,000 --> 00:58:03,000 Lig dom dul isteach i mo fhuinneog teirminéil. 1066 00:58:03,000 --> 00:58:06,000 Lig dom a reáchtáil structs2, dul isteach. 1067 00:58:06,000 --> 00:58:09,000 Breathnaíonn cosúil go bhfuil gach maith. A ligean ar rerun structs2. 1068 00:58:09,000 --> 00:58:15,000 123, David Mather, 456, Rob Kirkland, 1069 00:58:15,000 --> 00:58:19,000 789, Tommy Mather, dul isteach. 1070 00:58:19,000 --> 00:58:23,000 Breathnaíonn mhaith behaved sé mar an gcéanna, ach má dhéanann mé anois LS 1071 00:58:23,000 --> 00:58:28,000 faoi ​​deara cad comhad i anseo i measc mo cód go léir, bunachar sonraí, 1072 00:58:28,000 --> 00:58:32,000 mar sin a ligean ar oscailt go, gedit de bhunachar sonraí, agus táim ag an. 1073 00:58:32,000 --> 00:58:34,000 Níl sé an sexiest formáidí comhaid. 1074 00:58:34,000 --> 00:58:38,000 Tá sé i ndáiríre píosa amháin de líne sonraí in aghaidh gach líne in aghaidh an líne, 1075 00:58:38,000 --> 00:58:42,000 ach sin de tú a bhaineann úsáid as comhaid Excel nó CSV, le camóga luachanna scartha, 1076 00:58:42,000 --> 00:58:47,000 Raibh mé in ann a úsáid cinnte fprintf chun ionad b'fhéidir rud éigin a dhéanamh mar seo 1077 00:58:47,000 --> 00:58:50,000 ionas go bhféadfaí mé a chruthú i ndáiríre atá comhionann le comhad Excel 1078 00:58:50,000 --> 00:58:53,000 trí rudaí a scaradh leis an ní camóga, ach línte nua. 1079 00:58:53,000 --> 00:58:56,000 >> Sa chás seo más rud é go raibh úsáid mé in ionad camóga in ionad línte nua 1080 00:58:56,000 --> 00:59:01,000 Raibh mé in ann a oscailt literally an comhad bunachar sonraí i Excel má rinne mé in ionad é a breathnú mar seo. 1081 00:59:01,000 --> 00:59:03,000 I mbeagán focal, anois go bhfuil an chumhacht a scríobh chun comhaid 1082 00:59:03,000 --> 00:59:07,000 is féidir linn tosú anois sonraí fós ann, é a choinneáil thart ar dhiosca 1083 00:59:07,000 --> 00:59:10,000 ionas gur féidir linn faisnéis a choinneáil ar fud arís agus arís. 1084 00:59:10,000 --> 00:59:14,000 Fógra cúpla rudaí eile atá anois le beagán níos mó ar an eolas. 1085 00:59:14,000 --> 00:59:16,000 Ag barr an comhad seo C ní mór dúinn a Rialú an 1086 00:59:16,000 --> 00:59:21,000 mar gheall ar bhíomar ag iarraidh a chruthú i ndáil le cineál sonraí a léiríonn focal, 1087 00:59:21,000 --> 00:59:25,000 mar sin tá an cineál ar a dtugtar focal, agus taobh istigh den struchtúr 1088 00:59:25,000 --> 00:59:27,000 tá sé ina beagán fancier anois. 1089 00:59:27,000 --> 00:59:30,000 Cén fáth go bhfuil focal déanta suas de sraith cosúil le? 1090 00:59:30,000 --> 00:59:33,000 Cad is focal amháin intuitively? 1091 00:59:33,000 --> 00:59:35,000 >> Tá sé le sraith de charachtair. 1092 00:59:35,000 --> 00:59:37,000 Tá sé sraith de charachtair droim le droim le droim. 1093 00:59:37,000 --> 00:59:41,000 LITREACHA i ngach caipíní tharlaíonn a bheith deirimid treallach an fad is mó 1094 00:59:41,000 --> 00:59:44,000 ar aon fhocal san fhoclóir go bhfuil muid ag baint úsáide as Scramble. 1095 00:59:44,000 --> 00:59:46,000 Cén fáth a bhfuil mé ag 1? 1096 00:59:46,000 --> 00:59:48,000 An carachtar nialasach. 1097 00:59:48,000 --> 00:59:51,000 Glaoch ar ais nuair a rinne muid ar an sampla Bananagrams is gá dúinn a luach speisialta 1098 00:59:51,000 --> 00:59:55,000 ag deireadh an fhocail d'fhonn súil a choinneáil ar 1099 00:59:55,000 --> 00:59:59,000 an áit ina bhfuil focail dar críoch i ndáiríre, agus mar a deir an tsonraíocht atá leagtha fhadhb 1100 00:59:59,000 --> 01:00:03,000 anseo tá muid ag chomhlachú leis an focal a thugtar ar luach Boole, 1101 01:00:03,000 --> 01:00:05,000 bratach, mar a déarfá, fíor nó bréagach. 1102 01:00:05,000 --> 01:00:09,000 An bhfuil fuair tú an focal cheana féin, mar gheall ar a bhaint amach againn 1103 01:00:09,000 --> 01:00:13,000 ní mór dúinn i ndáiríre ar bhealach cuimhneamh nach bhfuil ach cad a focal i Scramble 1104 01:00:13,000 --> 01:00:15,000 ach cibé acu atá nó nach bhfuil tú, an duine, a fuair sé 1105 01:00:15,000 --> 01:00:20,000 ionas go má dhéanann tú teacht ar an bhfocal "an" Ní féidir leat cineál ach an, dul isteach, an, dul isteach, an, dul isteach 1106 01:00:20,000 --> 01:00:23,000 agus a fháil ar 3 phointe, 3 pointe, 3 pointe, 3 phointe. 1107 01:00:23,000 --> 01:00:26,000 Is mian linn a bheith in ann a blacklist an focal sin ag leagan síos bool 1108 01:00:26,000 --> 01:00:29,000 go fíor má tá tú ag fáil cheana féin é, agus mar sin tá sin an fáth againn 1109 01:00:29,000 --> 01:00:31,000 cuimsithe aige sa struchtúr. 1110 01:00:31,000 --> 01:00:35,000 >> Anois, síos anseo i Scramble níl an struct eile ar a dtugtar foclóir. 1111 01:00:35,000 --> 01:00:39,000 Is as láthair anseo an focal mar gheall ar Rialú an sa chás seo 1112 01:00:39,000 --> 01:00:43,000 is gá dúinn a Cuach an smaoineamh maidir le foclóir, 1113 01:00:43,000 --> 01:00:46,000 agus tá foclóir a bunch iomlán de na focail, 1114 01:00:46,000 --> 01:00:49,000 mar atá intuigthe ón eagar, agus cé mhéad de na focail atá ann? 1115 01:00:49,000 --> 01:00:51,000 Bhuel, is cuma cad a deir an méid athróg ar a dtugtar. 1116 01:00:51,000 --> 01:00:53,000 Ach ní mór dúinn ach amháin foclóir. 1117 01:00:53,000 --> 01:00:55,000 Ní gá dúinn i ndáil le cineál sonraí a dtugtar foclóir. 1118 01:00:55,000 --> 01:00:58,000 Ní mór dúinn ach duine amháin acu, mar sin casadh sé amach i C 1119 01:00:58,000 --> 01:01:03,000 más rud é nach bhfuil tú a rá Rialú an, a rá leat ach struct, ansin laistigh den braces gcuach 1120 01:01:03,000 --> 01:01:05,000 chuir tú do athróga, agus ansin chuir tú an t-ainm. 1121 01:01:05,000 --> 01:01:09,000 Tá sé seo á dhearbhú amháin foclóir a dtugtar athróg 1122 01:01:09,000 --> 01:01:11,000 go Breathnaíonn mar seo. 1123 01:01:11,000 --> 01:01:16,000 Gcodarsnacht leis sin, tá na línte a chruthú struchtúr sonraí ath-inúsáidte ar a dtugtar focal 1124 01:01:16,000 --> 01:01:19,000 gur féidir leat a chruthú cóipeanna iolraí de, díreach mar cruthaithe againn 1125 01:01:19,000 --> 01:01:22,000 iliomad cóipeanna de mhic léinn. 1126 01:01:22,000 --> 01:01:24,000 >> Cad a dhéanann sé seo deis ar deireadh thiar dúinn a dhéanamh? 1127 01:01:24,000 --> 01:01:30,000 Lig dom dul ar ais isteach, a ligean le rá, mar shampla simplí ó aimsir níos simplí, 1128 01:01:30,000 --> 01:01:34,000 agus lig dom a oscailt suas, a ligean le rá, compare1.c. 1129 01:01:34,000 --> 01:01:38,000 Is é an fhadhb anseo ar láimh a iarbhír craiceann ar ais 1130 01:01:38,000 --> 01:01:41,000 an ciseal de théad agus tús a cur as na rothaí oiliúna 1131 01:01:41,000 --> 01:01:44,000 mar gheall ar casadh sé amach go teaghrán ar fad an am seo 1132 01:01:44,000 --> 01:01:47,000 mar atá geallta againn i seachtain 1 i ndáiríre ach leasainm, 1133 01:01:47,000 --> 01:01:51,000 a synonym ón leabharlann CS50 as rud éigin go Breathnaíonn beagán níos mó cryptic, 1134 01:01:51,000 --> 01:01:53,000 * Char, agus atá feicthe againn an réalta roimh. 1135 01:01:53,000 --> 01:01:55,000 Chonaic muid é i gcomhthéacs na comhaid. 1136 01:01:55,000 --> 01:01:59,000 >> A ligean ar a fheiceáil cén fáth go anois tá muid ag dul i bhfolach ar an mion le tamall anois. 1137 01:01:59,000 --> 01:02:02,000 Seo comhad a dtugtar compare1.c, 1138 01:02:02,000 --> 01:02:07,000 agus iarrann sé cosúil leis an t-úsáideoir ar feadh 2 teaghráin, s agus t, 1139 01:02:07,000 --> 01:02:11,000 agus ansin déanann sé a chur i gcomparáid leis na teaghráin do chomhionannas ag teacht 26, 1140 01:02:11,000 --> 01:02:14,000 agus má tá siad comhionann a deir sé, "chlóscríobh tú an rud céanna," 1141 01:02:14,000 --> 01:02:17,000 agus más rud é nach bhfuil siad comhionann a deir sé, "chlóscríobh tú rudaí éagsúla." 1142 01:02:17,000 --> 01:02:19,000 Lig dom dul ar aghaidh agus an clár a reáchtáil. 1143 01:02:19,000 --> 01:02:23,000 Lig dom dul isteach i mo eolaire foinse, a dhéanamh compare1. Le chéile é ceart go leor. 1144 01:02:23,000 --> 01:02:25,000 Lig dom a reáchtáil compare1. 1145 01:02:25,000 --> 01:02:27,000 Beidh mé zúmáil isteach, dul isteach. 1146 01:02:27,000 --> 01:02:29,000 Abair rud éigin. Hello. 1147 01:02:29,000 --> 01:02:32,000 Beidh mé a rá rud éigin arís. Hello. 1148 01:02:32,000 --> 01:02:34,000 Agam nach raibh cinnte cineál rudaí éagsúla. 1149 01:02:34,000 --> 01:02:37,000 >> Lig dom iarracht seo arís. Slán, slán. 1150 01:02:37,000 --> 01:02:40,000 Cinnte nach bhfuil éagsúil, mar sin cad atá ar siúl anseo? 1151 01:02:40,000 --> 01:02:44,000 Bhuel, cad atá á i gcomparáid i ndáiríre ag teacht 26? 1152 01:02:44,000 --> 01:02:46,000 [Inaudible-mac léinn] 1153 01:02:46,000 --> 01:02:49,000 Sea, mar sin casadh sé amach go bhfuil teaghrán, sonraí cineál, cineál a bheidh bán. 1154 01:02:49,000 --> 01:02:53,000 Tá téad * ruabhreac, ach cad is * Char? 1155 01:02:53,000 --> 01:02:56,000 A * Char é, mar a deir siad, a pointeoir, 1156 01:02:56,000 --> 01:03:00,000 agus is pointeoir go héifeachtach seoladh, 1157 01:03:00,000 --> 01:03:05,000 suíomh suim i gcuimhne, agus má tharlaíonn tú a bheith clóscríofa i bhfocal ar nós Dia duit, 1158 01:03:05,000 --> 01:03:08,000 aisghlaoch ó plé anuas teaghráin 1159 01:03:08,000 --> 01:03:16,000 tá sé seo cosúil leis an focal hello. 1160 01:03:16,000 --> 01:03:19,000 Cuimhnigh gur féidir le focal ar nós DIA DUIT ionadaíocht a 1161 01:03:19,000 --> 01:03:22,000 mar le sraith de charachtair mar seo 1162 01:03:22,000 --> 01:03:25,000 agus ansin le carachtar speisialta ag an deireadh ar a dtugtar an carachtar nialasach, 1163 01:03:25,000 --> 01:03:27,000 mar seasann \. 1164 01:03:27,000 --> 01:03:29,000 Cad é i ndáiríre ar shraith? 1165 01:03:29,000 --> 01:03:32,000 Fógra go bhfuil an smután iolraí de chuimhne, 1166 01:03:32,000 --> 01:03:36,000 agus go deimhin, tá an deireadh sé ar eolas ach aon uair amháin tú ag féachaint tríd an teaghrán iomlán 1167 01:03:36,000 --> 01:03:38,000 lorg an carachtar nialasach speisialta. 1168 01:03:38,000 --> 01:03:41,000 Ach má tá sé seo le smután de chuimhne ó mo ríomhaire a chuimhne, 1169 01:03:41,000 --> 01:03:44,000 ligean le rá treallach go bhfuair an teaghrán seo ach t-ádh, 1170 01:03:44,000 --> 01:03:47,000 agus fuair chuir sé ag an tús mo ríomhaire RAM. 1171 01:03:47,000 --> 01:03:54,000 Is é seo an mbeart 0, 1, 2, 3, 4, 5, 6 ... 1172 01:03:54,000 --> 01:04:02,000 >> Nuair a rá liom rud éigin cosúil le GetString agus is féidir liom teaghrán s = GetString 1173 01:04:02,000 --> 01:04:04,000 cad atá ar ais i ndáiríre? 1174 01:04:04,000 --> 01:04:08,000 Ar na seachtainí anuas roinnt, tá an méid atá á stóráil i ndáiríre i s 1175 01:04:08,000 --> 01:04:13,000 nach bhfuil an teaghrán per se, ach sa chás seo go bhfuil cad atá á stóráil 1176 01:04:13,000 --> 01:04:18,000 an 0 líon mar gheall ar cad a dhéanann GetString iarbhír 1177 01:04:18,000 --> 01:04:20,000 Is é nach ndéanann sé ar ais go fisiciúil ar shraith. 1178 01:04:20,000 --> 01:04:22,000 Ní sin a dhéanamh fiú i ndáiríre chiall coincheapúil. 1179 01:04:22,000 --> 01:04:24,000 Cad a dhéanann sé ar ais é uimhir. 1180 01:04:24,000 --> 01:04:28,000 Is é sin líon an seoladh DIA DUIT i gcuimhne, 1181 01:04:28,000 --> 01:04:32,000 agus téad s ansin, má táimid ar ais craiceann an ciseal, ní teaghrán ann i ndáiríre. 1182 01:04:32,000 --> 01:04:35,000 Tá sé ach gur simpliú sa leabharlann CS50. 1183 01:04:35,000 --> 01:04:38,000 >> Tá sé seo i ndáiríre rud ar a dtugtar * Char. 1184 01:04:38,000 --> 01:04:41,000 Char ciall toisc go bhfuil an méid focal, cosúil le Dia duit? 1185 01:04:41,000 --> 01:04:44,000 Bhuel, tá sé sraith de carachtair, sraith de charachtair. 1186 01:04:44,000 --> 01:04:47,000 Ciallaíonn * Char an seoladh de chineál, 1187 01:04:47,000 --> 01:04:50,000 mar sin cad a chiallaíonn sé a thabhairt ar ais ar shraith? 1188 01:04:50,000 --> 01:04:53,000 A deas, ar bhealach simplí ar ais ar shraith 1189 01:04:53,000 --> 01:04:57,000 Is seachas iarracht a dhéanamh an figiúr amach conas mé ar ais go dtí 5 nó 6 bytes éagsúla 1190 01:04:57,000 --> 01:05:01,000 lig dom ar ais go dtí an seoladh seo a bheart? 1191 01:05:01,000 --> 01:05:03,000 An chéad cheann. 1192 01:05:03,000 --> 01:05:06,000 I bhfocail eile, lig dom a thabhairt duit an seoladh de chineál i gcuimhne. 1193 01:05:06,000 --> 01:05:10,000 Sin an méid a léiríonn * ruabhreac, seoladh amháin charachtar aonair i gcuimhne. 1194 01:05:10,000 --> 01:05:12,000 Cuir glaoch ar an s athraitheach. 1195 01:05:12,000 --> 01:05:15,000 Stóráil i s go bhfuil seoladh go háirithe, a dúirt mé treallach 0, 1196 01:05:15,000 --> 01:05:19,000 ach a choinneáil ar rudaí simplí, ach i ndáiríre tá sé de ghnáth roinnt níos mó. 1197 01:05:19,000 --> 01:05:21,000 >> Fan nóiméad. 1198 01:05:21,000 --> 01:05:23,000 Má tá tú ag tabhairt ach dom an seoladh an chéad charachtar, cén chaoi a fhios agam cad é an seoladh 1199 01:05:23,000 --> 01:05:25,000 de charachtar an dara, an tríú, an ceathrú agus an cúigiú? 1200 01:05:25,000 --> 01:05:27,000 [Inaudible-mac léinn] 1201 01:05:27,000 --> 01:05:31,000 A fhios agat ach amháin nuair atá deireadh an teaghrán trí seo a trick handy, 1202 01:05:31,000 --> 01:05:35,000 mar sin nuair a úsáideann tú rud éigin cosúil le printf, a thógann printf literally mar a argóint, 1203 01:05:35,000 --> 01:05:39,000 cuimhne go n-úsáideann muid an% s placeholder, agus ansin tú pas a fháil i 1204 01:05:39,000 --> 01:05:41,000 an athróg a tá a stóráil ar shraith. 1205 01:05:41,000 --> 01:05:47,000 Cad é go bhfuil tú ag dul i ndáiríre an seoladh an chéad charachtar den teaghrán. 1206 01:05:47,000 --> 01:05:50,000 Printf úsáid ansin le haghaidh lúb nó lúb agus nuair a fhaigheann an seoladh sin, 1207 01:05:50,000 --> 01:05:53,000 mar shampla, 0, lig sin a dhéanamh dom an anois, 1208 01:05:53,000 --> 01:06:02,000 printf ("% s \ n," s); 1209 01:06:02,000 --> 01:06:07,000 Nuair a ghlaonn mé printf ("% s \ n" s); cad mé ag fáil i ndáiríre printf le 1210 01:06:07,000 --> 01:06:13,000 Is é an seoladh an chéad charachtar i s, a bhfuil sa chás seo treallach H. 1211 01:06:13,000 --> 01:06:16,000 >> Cén chaoi a fhios printf cad go díreach a chur ar taispeáint ar an scáileán? 1212 01:06:16,000 --> 01:06:19,000 An duine a chur chun feidhme i bhfeidhm printf lúb fad nó le haghaidh lúb 1213 01:06:19,000 --> 01:06:23,000 a deir go bhfuil carachtar seo cothrom leis an carachtar nialasach speisialta? 1214 01:06:23,000 --> 01:06:25,000 Mura bhfuil, é a phriontáil. Cad é faoi an ceann seo? 1215 01:06:25,000 --> 01:06:28,000 Más rud é nach é a phriontáil, é a phriontáil, é a phriontáil, é a phriontáil. 1216 01:06:28,000 --> 01:06:32,000 Ó, an ceann seo speisialta. Stop a phriontáil agus a sheoladh ar ais chuig an úsáideoir. 1217 01:06:32,000 --> 01:06:35,000 Agus sin literally gach a bhí ar siúl thíos an cochall, 1218 01:06:35,000 --> 01:06:38,000 agus tá go bhfuil a lán a díolama ar an gcéad lá d'aicme, 1219 01:06:38,000 --> 01:06:43,000 ach anois tá sé i ndáiríre an bloc tógála de gach rud thuiscint 1220 01:06:43,000 --> 01:06:46,000 a bhí ar siúl taobh istigh dár ríomhaire a chuimhne, 1221 01:06:46,000 --> 01:06:49,000 agus ar deireadh thiar beidh muid ag tease seo amach le beagán cabhrach 1222 01:06:49,000 --> 01:06:51,000 ó cheann de na ár gcairde ag Stanford. 1223 01:06:51,000 --> 01:06:56,000 >> An tOllamh Nick Parlante ag Stanford déanta an seicheamh seo físeán iontach 1224 01:06:56,000 --> 01:06:58,000 ó gach cineál na teangacha éagsúla a tugadh isteach 1225 01:06:58,000 --> 01:07:00,000 seo Binky carachtar beag Claymation. 1226 01:07:00,000 --> 01:07:03,000 An guth bhfuil tú ar tí a chloisteáil i réamhamharc ach sneak cúpla dara 1227 01:07:03,000 --> 01:07:05,000 is é sin le ollamh Stanford, agus tú ag fáil 1228 01:07:05,000 --> 01:07:07,000 ach 5 nó 6 soicind an ceart seo anois, 1229 01:07:07,000 --> 01:07:09,000 ach is é seo an nóta ar a beidh orainn a thabhairt i gcrích sa lá atá inniu 1230 01:07:09,000 --> 01:07:11,000 agus tús a chur ar an gCéadaoin. 1231 01:07:11,000 --> 01:07:15,000 A thabhairt liom tú Spraoi phointeora le Binky, an réamhamharc. 1232 01:07:15,000 --> 01:07:18,000 [♪ Ceol ♪] [tOllamh Parlante] Hey, Binky. 1233 01:07:18,000 --> 01:07:21,000 Wake suas. Tá sé in am don spraoi pointeoir. 1234 01:07:21,000 --> 01:07:24,000 [Binky] Cad é sin? Foghlaim faoi leideanna? 1235 01:07:24,000 --> 01:07:26,000 Oh, goody! 1236 01:07:26,000 --> 01:07:29,000 >> Beidh muid a fheiceann tú ar an gCéadaoin. 1237 01:07:29,000 --> 01:07:32,000 [CS50.TV]