[Seinm ceoil] ROB Boden: Gach ceart. Mar sin, an chéad rud ar dtús, de físeán ó aghaidh ar an eolas. [Athsheinm físe] -Gach ceart. Is é seo an CS50, agus tá sé seo tús na seachtaine trí. Tá brón orm nach raibh mé in ann a bheith ann a bhfuil tú lá atá inniu ann, ach deis dom a thabhairt isteach Féin Rob Boden CS50 ar. [DEIREADH athsheinm físe] [Bualadh bos agus cheers] ROB Boden: An filmography i is é sin físeán iontach. Gach ceart. Mar sin, an chéad, níl lón eile. Tá sé amárach ag 01:15. Níl aon lón ar an Aoine. Tá sé le Quora. Agus nach Tommy anseo go fóill, ach ar cheann de na daoine go bhfuil iar-CF ceann, Tommy McWilliam. Mar sin, tá sé ina Guy spraoi. Ba chóir duit teacht. Gach ceart. Mar sin, an tseachtain seo caite, thosaigh muid bhriseadh óna chéile faoi ​​cad is teaghrán ndáiríre. Táimid tar éis a dtugtar ó thús go tá sé ina sraith de charachtair. Ach an tseachtain seo caite, delved muid isteach ar an bhfíric go bhfuil an méid atá i ndáiríre sraith de carachtair, go maith, ní mór dúinn anois eagair de charachtair. Agus tá a fhios againn go bhfuil teaghrán, tá sé sraith de charachtair, ag deireadh an-, ní mór dúinn an beart null speisialta, seo cúlslais 0, léiríonn go deireadh na bliana an teaghrán. Agus mar sin is teaghrán le sraith de carachtair, ach is féidir linn a bheith níos mó ná ach le sraith de charachtair, Is féidir linn a bheith le sraith de aon cineál ruda ba mhaith linn. Mar sin, má tá tú chun cuimhne ón tseachtain seo caite, an Clár Aois go David isteach i ndáiríre go tapa. Is é sin an chéad rud táimid ag dul a dhéanamh a iarraidh ar an úsáideoir le haghaidh slánuimhir, an líon na ndaoine sa seomra. Nuair a bheidh againn go slánuimhir, táimid ag dhearbhú eagar. Fógra an chomhréir lúibín. Tá tú ag dul a fháil a úsáidtear chun sin. Mar sin, tá muid ag dearbhú le sraith de slánuimhreacha ar a dtugtar aois, agus tá n slánuimhreacha sa eagar. Mar sin, an patrún seo ar dheis anseo, an 4 slánuimhir is ionann mé 0, tá mé níos lú ná n, i móide móide, is é sin ag dul chomh maith le bheith ina patrún go bhfaigheann tú an-úsáidtear chun. Toisc go bhfuil go leor i bhfad ar conas a bhfuil tú i gcónaí ag dul a iterate thar arrays. Mar sin, cuimhnigh go ionann n agus an fad ár eagar. Agus mar sin anseo, tá muid ag iarraidh arís agus arís eile chun aois i an duine sa seomra. Tar éis seo, théann muid síos, agus cibé chúis treallach, ní mór dúinn ansin a phriontáil amach cén aois a bhíonn siad ag dul a bheith ina bliain ó anois. Agus rith an gclár sin, a ligean ar aois a dhéanamh, ponc aois Slais. Mar sin, líon na ndaoine sa seomra, ligean le rá tá trí. Agus a rá, is é an chéad duine 13, Is é seo chugainn 26, agus is é an ceann deireanach 30. Mar sin, ansin beidh sé a iterate thar na trí daoine, a phriontáil amach 14, 27, agus 31. Mar sin, cuimhnigh go bhfuil nuair a dhearbhú againn sraith de mhéid n, innéacsanna sa mhéid is go eagar, tá luachanna an eagar agus innéacsanna 0, 1, 2, léir ar an mbealach suas go dtí lúide n 1. Mar sin, nuair a dúirt muid go raibh triúr sa seomra, agus chuir muid i anseo an chéad atriall tríd an lúb, tá mé ag dul a bheith 0. Mar sin, i innéacs 0. Táimid ag a shannadh ar an gcéad aois dtiocfaidh an t-úsáideoir. Ansin, sa cheann eile, tá muid ag dul isteach ar an dara n dtiocfaidh an t-úsáideoir, agus i in aice le dhá, an n seo caite. Mar sin, faoi deara go bhfuil sraith de mhéid Níl rud ar bith triúr san innéacs trí. Ní hé seo bailí. Gach ceart. Mar sin, dul ar ais anseo. Mar sin anois go atá muid ag déileáil le arrays, ní mór dúinn roinnt eolais. Anois, tá muid ag dul chun bogadh ar aghaidh go dtí ordú argóintí líne, atá ag dul a bheith go leor a bhaineann leis an bhfadhb seo a leagan síos. Mar sin, suas go dtí anois, aon uair atá tú dhearbhú do fheidhm is mó, tá muid Dúirt mó neamhní slánuimhir. Mar sin, ar neamhní Ciallaíonn sin go díreach nach bhfuil muid ag dul ar aon argóintí an fheidhm seo. Anois, tá muid ag dul a fheiceáil go phríomh- Is féidir a ghlacadh roinnt argóintí. Anseo tugaimid orthu slánuimhir argc agus lúibíní ARGV teaghrán. Na lúibíní, arís, rud a léiríonn go bhfuil muid ag déileáil le arrays. Mar sin, anseo, lúibíní ARGV téad, táimid ag déileáil le sraith de teaghráin. Mar sin argc, tá go bhfuil dul chun in iúl cé mhéad argóintí tá muid ar aghaidh chuig an gclár seo. Agus a fheiceáil cad a chiallaíonn go, a ligean ar dhúnadh an. OK. Mar sin, suas go dtí anois, tá muid ar siúl gach clár cosúil aois Slais ponc. Is féidir linn freisin, ag an líne ordaithe, am atá caite argóintí pas, dá bhrí sin an téarma, ordú argóintí líne. Mar sin, an chéad argóint, Dia duit ar domhan. Mar sin, anseo, bheadh ​​argc a trí. Tá sé an líon na n-argóintí ag an líne ordaithe. Is Argc gcónaí ar a laghad 1, ós rud é ponc aois Slais, é féin chomhaireamh, mar cheann de na na hargóintí-orduithe. Ansin tá hello a chéad. Má tá aois Slais ponc an 0ú, ansin Dia duit is é an chéad, agus is é an domhan an dara argóint ar an líne ordaithe. Mar sin, an ARGV teaghrán, táimid ag dul a fheiceáil, tá teaghráin, ponc Slais aois, Dia duit, agus an domhain. Agus, ar iarratas David, táimid ag dul a imirt físeán a thabhairt isteach go. [Athsheinm físe] -Suas go dtí anois i gcláir Tá 'againn scríofa, tá muid a dhearbhú príomh-neamhní amhail slánuimhir is mó. Agus am seo go léir, tá an neamhní ach curtha ag sonrú go raibh an Ní clár aon argóintí. I bhfocail eile, nuair a ritheann úsáideoir chlár, is féidir leis nó léi a chur ar fáil ordú argóintí trí scríobh breise focail nó frásaí i ndiaidh an chláir ainm ar an pras. Bhuel, má dhéanann tú ba mhaith leat do chlár a a ghlacadh ar argóintí, ceann amháin nó níos mó focail den sórt sin, ní mór dúinn a chur in ionad neamhní le cúpla argóintí. Mar sin, a ligean ar é sin a dhéanamh. Cuir CS50.h. Cuir io.h. caighdeánach Slánuimhir is mó. Agus anois, in ionad neamhní, Tá mé ag dul go dtí shonrú ina slánuimhir a dtugtar argc, agus sraith de teaghráin ar a dtugtar ARGV. Anois, tá argc agus ARGV ach coinbhinsiúin. D'fhéadfadh muid a bheith ar a dtugtar na hargóintí rud ar bith is mian linn. Ach cad atá tábhachtach ná go bhfuil argc ina slánuimhir toisc, de réir sainmhínithe, tá sé ag dul go dtí go bhfuil an líon argóint, an líon na bhfocal san iomlán go Tá úsáideoir clóscríofa é nó í go pras. ARGV, Idir an dá linn, is é veicteoir argóint, ag dul a bheith i ndáiríre le sraith a stóráil gach ceann de na focail go bhfuil an t-úsáideoir clóscríofa ar é nó í go pras. A ligean ar dul ar aghaidh rud éigin a dhéanamh anois le ceann amháin nó níos mó de na argóintí. Go háirithe, a ligean ar dul ar aghaidh agus a phriontáil cibé focal na cineálacha úsáideoir tar éis an t-ainm an chláir ag an pras. Lúibín Oscailte. Dún lúibín. Printf faoin gcéad s cúlslais agus camóg. Agus anois is gá dom a insint printf cén luach a breiseán isteach an placeholder. Ba mhaith liom an chéad fhocal a bhfuil an t-úsáideoir clóscríofa i ndiaidh ainm an chláir, agus mar sin tá mé ag dul a shonrú ARGV lúibín 1, gar lúibíní, Leathstad. Anois, cén fáth lúibín 1 agus ní lúibín 0? Bhuel, casadh sé amach, a stóráil go huathoibríoch i ARGV Tá 0 ag dul a bheith ar an An t-ainm iarbhír chláir. Mar sin, an chéad fhocal a na cineálacha úsáideoir tar éis an t-ainm an chláir, ag coinbhinsiún, ag dul a bheith stóráil i ARGV 1. A ligean ar chur le chéile anois agus reáchtáil an chláir seo. Déan ARGV 0, ponc ARGV Slais 0. Agus anois focal cosúil le Dia duit. Iontráil. Agus ansin ní mór dúinn é, Dia duit. [DEIREADH athsheinm físe] ROB Boden: Gach ceart. Dún go. Mar sin, cur le breathnú ar an gclár a thugamar isteach go díreach dúinn, go maith, ach a thaispeáint, má chuirimid i gcló ARGV 0, a dhéanamh, anois cad é, ARGV 0, ponc ARGV Slais 0. Mar sin, mar atá ag súil, tá sé phriontáil amach an ainm an chláir, ós rud é ARGV 0 i gcónaí ag dul a bheith ar an ainm an chláir. Ach a ligean ar rud éigin a dhéanamh ar giotán níos suimiúla. Mar sin, i tacar fhadhb, beidh tú isteach chun an fheidhm seo, atoi. Mar sin, cad a dhéanann muid úsáid as atoi do? Sin ag dul a thiontú ina teaghrán slánuimhir. Mar sin, má éiríonn mé an téad, ceann amháin dhá cheann trí, le atoi, beidh a thiontú go go dtí an tslánuimhir, ceann amháin dhá trí. Mar sin, táimid ag dul a thiontú an chéad in argóint le slánuimhir, agus ansin a phriontáil go díreach slánuimhir. Mar sin, go bunúsach, tá muid de chineál ar reimplementing getint, ach an Tá slánuimhir isteach ag an ordú línte in ionad sa chlár idirghníomhach. Mar sin, ansin, a dhéanamh ARGV 0, a ligean ar a dhéanamh ar sé i anseo, agus dún sin. Mar sin, ag rith ARGV 0, agus a ligean ar dul isteach ar an slánuimhir, ceann amháin dhá trí ceathair amháin dhá. Mar sin, beidh sé a phriontáil ar an slánuimhir, ceann amháin dhá cheann trí ceathair amháin dhá. Tá roinnt subtleties a atoi go beidh sé stop a chur ag tabhairt aire faoi rud ar bith thar carachtar uimhriúil bailí, ach ní hionann an ábhar sin. Mar sin, cad a cheapann tú a tharlaíonn má dhéanann mé é seo? Locht deighilt. Mar sin, cén fáth go bhfuil? Má fhéachann tú ar ais ar ár gclár, tá muid athrú ARGV 1, an chéad argóint tar éis an t-ainm an chláir, le slánuimhir. Ach níl aon argóint a rith tar éis an t-ainm an chláir. Mar sin, anseo, feicimid go bhfuil an bugaí clár, ós rud é, má déanaimid ár ndícheall a rith sé gan aon argóintí, Beidh sé tuairteála ach. Mar sin, patrún eile coitianta go mbainfidh tú a fheiceáil Tá rud éigin cosúil le, más rud é go argc níos lú ná dhá, rud a léiríonn nach raibh ann ar a laghad, an t-ainm chláir agus an chéad argóint, ansin beidh orainn rud éigin a dhéanamh cosúil le printf, ní leor argóintí. Sin é is dócha nach bhfuil ceann maith a phriontáil, is dócha rud éigin, cosúil le Ba chóir duit dul isteach slánuimhir ag an líne ordaithe. Feicfidh mé deireadh ach sé ann. Agus ansin ar ais 1. Mar sin, cuimhnigh go bhfuil ag an deireadh ár clár, má táimid ar ais 0, saghas sin de Léiríonn rath. Agus is mó freisin go huathoibríoch Filleann 0 mura bhfuil tú. Mar sin anseo, tá muid ag retuning 1 a chur in iúl nach go rath. Agus is féidir leat filleadh bith is mian leat, ach, léiríonn 0 rath, agus Léiríonn aon rud eile teip. Mar sin, a ligean ar siúl an leagan seo de rudaí. Mar sin anois, más rud é nach bhfuil muid ag dul isteach ar an líne ordaithe argóint, beidh sé insint i gceart dúinn, ní líne ordaithe go leor. Nár chríochnú an abairt. Eile, má táimid dul go hiarbhír sé ar cheann, Is féidir é a chur i gcrích an chláir. Mar sin, is é seo conas a d'úsáidfeá argc i d'fhonn a dheimhniú ar líon na argóintí go iad a rith i ndáiríre. Mar sin, a ligean ar a dhéanamh ar an gclár seo le beagán níos mó casta, agus breathnú ar an dara atriall de rudaí. Mar sin anois, ní bhíonn muid ag priontáil ach an an chéad argóint ar an líne ordaithe. Anseo, tá muid ag iterating ó ionann mé slánuimhir 0, tá mé níos lú ná argc, i móide móide, agus ARGV priontáil, innéacs mé. Mar sin, an patrún seo, arís, is é seo mar an gcéanna patrún mar roimh, ach amháin in ionad ghlaoch ar an athróg n, tá muid ag baint úsáide argc. Mar sin, tá sé seo iterating thar gach innéacs in eagar, agus a phriontáil gach eilimint sa eagar. Agus mar sin, nuair a reáchtáil againn ar an gclár, go maith, Ní raibh mé ag dul isteach in aon-orduithe argóintí, agus mar sin sé ach priontaí an t-ainm an chláir. Má isteach mé a bunch de rudaí, beidh sé phriontáil amháin, gach ceann ar a líne féin. OK. Mar sin a ligean ar ghlacadh an taisceadh sin amháin eile. Agus in ionad clódóireachta gach argóint ar a líne féin, a ligean ar a phriontáil ar gach thréithe gach argóint ar a líne féin. Mar sin, cuimhnigh go bhfuil ARGV le sraith de teaghráin. Mar sin, cad é teaghrán, ach le sraith de charachtair? Mar sin, ciallaíonn sé sin go bhfuil ARGV ndáiríre sraith de le sraith de charachtair. Mar sin, leas a bhaint as sin, a ligean ar neamhaird seo le haghaidh anois. A ligean ar a mheas ach an teaghrán ARGV 0. Mar sin, más mian linn a thabhairt ar gach carachtar ar ARGV 0 ar a líne féin, ansin ba mhaith liom a dhéanamh ar an patrún táimid a úsáidtear chun, tá mé níos lú ná an fad an eagar, a anseo, tá strlen de, go ní cad ba mhaith liom a dhéanamh, teaghrán s ionann ARGV 0. Mar sin, tá mé níos lú ná an fad ar ár eagar, a bhfuil sa chás seo eagar de charachtair, i móide móide. Agus mar sin, mar a chonaic muid an tseachtain seo caite, tá sé oiriúnach má bhogann go strlen lasmuigh an coinníoll seo, beidh ós rud é n cur an strlen s gach uair a théann muid tríd an lúb, agus tá sé nach bhfuil ag dul a bheith ag athrú. Mar sin, beidh orainn a leag sé cothrom le n thar anseo. OK. Mar sin anois, tá muid ag iterating thar gach innéacs sa eagar. Agus mar sin, más mian linn a phriontáil ar gach Tá carachtar sa eagar, faoin gcéad c an bhratach mhaith linn a úsáid do charachtair. Agus anois tá mé ag dul a bheith ar an lúibín teaghrán, carachtar innéacs mé, mar sin má tá an Bhí teaghrán Dia duit. ansin s 0 ag dul a bheith h, lúibín s Beidh 1 a chur trí ríomhphost, agus mar sin de. Mar sin, anois, ba mhaith linn a chur le chéile na dhá rud. Is mian linn a phriontáil gach carachtar gach argóint ar an líne ordaithe. Mar sin, tá muid ag dul a bheith acu le neadaithe do lúb. Agus conventionally, an chéad gcuntar Tá mé, an chéad cheann eile ag dul a bheith j, n Beidh an strlen ar ARGV i, i Tá níos lú ná n, i móide móide. Agus anois in ionad clódóireachta ARGV i, mar sin ARGV lúibín mé ag dul go dtí innéacs - go bhfuil ag dul a bheith ar an líne ordaithe i-ú argóint, ARGV i, j ag dul chun a bheith ar an carachtar jth de an i-ú argóint. Feicfidh mé fáil réidh le seo suas anseo anois ó chuir muid sé i lúb. Mar sin, is comhionann le teaghrán s ionann ARGV mé, agus ansin j s lúibín. Bhuel, ní mór dúinn a dhearbhú an s athraitheach. Ina áit sin, beidh orainn a chur le chéile ach na dhá cheann i cad a bhí againn, ARGV i, j. Cainteoir 1: [inaudible]. ROB Boden: Dea-glaoch. Mar sin, tá sé seo briste. Má Rith mé i ndáiríre é, ba mhaith linn realized seo. Mar sin, ar an gcuntar cúram mé faoi sa chás áirithe seo do Tá lúb j, an iterator. Mar sin, go mbeadh tú a bheith ar siúl ar shaincheisteanna, is dócha lúb gan teorainn, má táimid Ní raibh socraithe sin. Sin an fáth a bhfuil muid ag caint freisin faoi ​​debugging lá atá inniu ann. OK. Mar sin, a ligean ar reáchtáil an chláir seo. Agus a ligean ar add iarbhír printf ar leith ar dheis anseo a phriontáil díreach líne eile, ós rud é ciallaíonn sé seo nuair a muid reáchtáil an clár, beidh a bheith ann ina bán líne i idir gach carachtar ar gach argóint ar an líne ordaithe. Bhuel, beidh orainn a fheiceáil cad a chiallaíonn go. Oop. Fuair ​​roinnt bug. Earráid hintuigthe dhearbhú fheidhm leabharlainne strlen. Mar sin, dul ar ais isteach inár gclár, mé dearmad a hash áireamh string.h. Mar sin, tá string.h ag dul a bheith ar an comhad header go ndearbhaíonn an fheidhm strlen. OK, cuireann sé le chéile. Anois, a ligean ar rith sé. Mar sin, ach sin. Tá sé ag dul a phriontáil amach ár ainm an chláir, Dia duit ar domhan. Tá sé ag dul i gcló ar gach rud, gach charachtar, ar a líne féin. OK. Mar sin, a ligean ar a chur i ndáiríre seo céim amháin eile. Agus in ionad a úsáid string.h, a ligean smaoineamh ar conas ba mhaith linn a chur i bhfeidhm ár gcuid féin a fheidhm strlen. Mar sin, beidh mé a thabhairt láithreach síniú feidhm. Mar sin, a ligean ar glaoch i my_strlen, agus tá sé ag dul a ghlacadh ar shraith mar argóint, agus táimid ag súil a thabhairt ar ais ar an fad na sreinge sin. Mar sin, i gcás ina tá go Guy? Tá. OK. Mar sin, cuimhnigh as an sleamhnán níos luaithe go Ba freisin ón tseachtain seo caite, go sraith de charachtair, go maith, ar shraith, mar sin a ligean le rá é seo ár teaghrán í. Mar sin, má tá sé ar an teaghrán, Dia duit, ansin, H-E-L-L-O, i gcuimhne, tá go bhfuil dul chun a bheith, agus ansin an cúlslais 0 carachtar. Mar sin, conas is féidir linn a fháil ar an fad s? Bhuel, tá an cleas ag lorg seo backlash 0 carachtar, an Eolas faoin margadh saothair Críochnaitheoir. Mar sin, An bhfuil an algartam dul a bheith rud éigin cosúil le cúpla go leor carachtair sin - a ligean ar a bheith an láimh ionadaíocht a dhéanamh ar roinnt gcuntar, a ligean ar glaoch ar an fad slánuimhir. Mar sin, ag tosú ó thar anseo, tá muid ag dul a iterate thar ár teaghrán. Mar sin, an chéad charachtar, tá sé H, agus nach bhfuil sé ar ais Slais 0, mar sin Is é an fad 1. Iterate leis an carachtar seo chugainn, E, agus nach bhfuil sé cúlslais 0. Tá Fad 2. L, 3. L, 4. O, 5. Agus ar deireadh, a bhaint amach againn cúlslais 0, agus mar sin go bhfuil acmhainn, go maith, Tá an teaghrán os a chionn. Mar sin, a ligean ar ais 5. Mar sin, a chur chun feidhme iarbhír go, an chéad, is ionann mo n fhad 0, mo lámh dheas. Agus táimid ag dul a iterate - Cainteoir 1: [inaudible] ROB Boden: Ó, shoot. Dea-glaoch. Boom. Mar sin, is ionann n fhad 0. Mar sin anois, ní cé go s fad cothrom agus ansin, cúlslais 0. Mar sin, cuimhnigh, an cúlslais 0, tá sé carachtar iarbhír, agus léiríonn sé an deireadh an teaghrán. Díreach cosúil le, chomh maith, cúlslais Is n carachtar iarbhír. Tá cúlslais 0 ag dul a chur in iúl an deireadh ár teaghrán. Níl mé ag iarraidh a chur ar go bhfuil. Agus cé nach bhfuil s innéacsú faoi fhad comhionann leis an Críochnaitheoir nialasach, ansin táimid ag dul díreach fad a incrimint. Mar sin, ansin, ag an deireadh ár gclár, Tá fad ag dul faoi dheireadh go dtí a bheith 5 sa chás seo. Agus beidh muid ar ais díreach fad. OK. Mar sin anois síos anseo, ní féidir liom dhéanamh my_strlen. A ligean ar a thiomsú d'fhonn a chinntiú Ritheann gach rud réidh. An raibh mé ag déanamh i 2? Nó bhí go 1? Ba chóir é sin a dhéanamh. Gach ceart. Mar sin, is é seo ARGV 2. Oibreacha mar a ceapadh, cé go ná go raibh mé an ceann é i? Tá. OK. Ní raibh an leagan seo na rudaí a bhfuil an líne nua tar éis printf, ach tá sé ní a dhéanamh ar aon difríocht. OK. Mar sin, d'oibrigh mar a bhí súil. Anois, is féidir linn a chur le chéile, fiú seo céim amháin tuilleadh, i gcás fógra anseo, go maith, chéad, tá muid ag grabbing an strlen an ARGV i, agus ansin tá muid iterating thar gach carachtar sa téad. Mar sin, in ionad a dhéanamh sin, cad má táimid ach le chéile an loighic feithimh go dtí go bhuail muid cúlslais 0 ceart isteach anseo nó lúb? Mar sin, cé go bhfuil iterate ARGV i, j cúlslais cothrom 0. Mar sin, a ligean ar siúl ar dtús. Gach ceart. Mar sin anseo, tá an coinníoll seo ag rá - a ligean ar ghlanadh go. Mar sin anois, a ligean seo a bheith ar ár ARGV. Mar sin, nuair a bhí ar siúl mé díreach tar éis an clár sin roimh, Is ARGV le sraith de teaghráin. Agus mar sin, má ritheann liom é le ARGV Slais ponc 2, Dia duit ar domhan, ansin an ARGV Tá féin fad 3, le haghaidh ARGV náid, Dia duit, agus an domhain. Agus taobh istigh de gach ceann de na hinnéacsanna is, féin eagar, i gcás ina mbainfidh sé seo a bheith ponc, beidh sé seo a bheith Slais, níl a fhios agam más rud é go raibh an treo ceart, mé Ní shílim go raibh sé. A-R-V Fleasc, is gá níos mó spáis. A ligean ar gearrtha isteach sa eagar. A-R-V Fleasc 0, agus ansin cúlslais 0. Agus ansin beidh i disarray a bheith hello. Ligean le rá, H-E cúlslais 0. Agus ar deireadh, W-O cúlslais 0. Mar sin, an algartam gur scríobh againn ach, an neadaithe do lúb, cad tá siad ag déanamh é, ní mór dúinn an chéad an i ngleic i agus ansin j. Bheadh ​​sé seo a bheith níos éasca le cód ar an scáileán, A ligean ar dul ar ais go dtí seo. OK. Mar sin, faoi deara go bhfuil mé an iterator go iterating thar gach ordú argóint ar an líne. Agus is é j an iterating iterator thar gach carachtar sa mhéid is go in argóint. Mar sin, cad é an printf innermost dhéanamh is é sin, ní mór dúinn printf ARGV 0 0, printf ARGV 0 1, ARGV printf 0 2, 0 3, 0 4, 0 5, 0 6, ach anois, ARGV 0 7 ag dul chun cúlslais comhionann 0. Mar sin, ansin dúinn scoir gur le haghaidh lúb, agus anois béim arís mé go dtí 1. Agus anois táimid ag dul chun cló ARGV 1 0, ARGV 1 1 - go maith, anois, ós rud é gearrtha mé hello gearr, ARGV 1 2 ag dul arís a bheith cúlslais 0. Agus mar sin, incrimint i agus leanúint ar aghaidh, agus mar sin de, nó go bpriontálann muid amach gach ceann de na Tá domhan, agus na trí líne a ordú argóintí, agus beidh muid ag scoir as an lúb is forimeallaí, agus a chríochnú ar ár gclár. OK. Mar sin, a ligean ar teacht ar ais anseo. Mar sin, beidh tú fháil ar roinnt eolas a bheith acu argóintí ar an fadhb ar leith a leagan síos. Anois, debugging. Mar sin, agat is dócha a bhí cheana féin a dhéanamh roinnt debugging le do roimhe seo fhadhb a leagan síos. Agus ceann bhealach an-éasca ar debugging, an chéad, a ligean ar breathnú ar chlár Buggy. Bhuel, ag siúl tríd an gclár seo, táimid ag dul a iarraidh ar an úsáideoir le haghaidh slánuimhir, slánuimhir grab go, agus ansin, go treallach, ní mór dúinn a lúb tamaill go ag dul ach a decrement i go dtí go bhfuil sé comhionann le 10. A ligean ar glacadh leis go díreach Tá mé ag dul isteach slánuimhir mó ná 10. Mar sin, decrement mé go dtí sé comhionann le 10. Agus ansin ní mór dúinn lúb tamaill eile go, cé go bhfuil mé nach bhfuil comhionann 0, tá muid dul chun decrement i faoi 3. Mar sin, má fheiceann tú an intinn an fabht anseo, tá sé go mbainfidh sé seo decrement liom 10, agus ansin an mbeidh lúb fad decrement mé ó 10, 7, 4, 1, go diúltach 2, go diúltach 5, agus mar sin de, go Infinity diúltach, ós rud é beidh mé Riamh cothrom iarbhír 0. Agus ansin ag deireadh an chláir, ní mór dúinn an fheidhm foo atá ag dul ar phriontáil amach go i. Mar sin, tá sé seo le clár gearr agus fánach, agus is é an fabht soiléir, go háirithe tar éis mé díreach tar éis Dúirt an méid a bhí an fabht. Ach tá an rún anseo, go maith, d'fhéadfadh sé seo cuma iarbhír cosúil le cuid de do réitigh ó greedy as an ceann deireanach fhadhb a leagtar, agus b'fhéidir gá duit roinnt lúb gan teorainn i do chlár, agus tá tú aon smaoineamh cad is cúis leis. Mar sin, mar theicníc debugging an-úsáideach is é a chur leis ach printfs gach cearn do chód. Mar sin, anseo Ba mhaith liom printf lasmuigh lúb chéad tamaill. Agus anseo Ba mhaith liom printf, agus beidh mé a phriontáil díreach i. Feicfidh mé a dhéanamh fiú chéad agus lúb, i. Lasmuigh de, an dara agus lúb. Arís eile, a phriontáil taobh istigh anseo, an luach i. Agus a ligean ar seo a reáchtáil. Debug Slais sin ponc. Cuir isteach slánuimhir. A ligean ar a dhéanamh 13. Agus borradh. Feicimid go bhfuil muid looping gan teorainn taobh istigh de na dara lúb fad. Mar sin anois a fhios againn cad é an fabht. Ach tá debugging printf breá mór, ach nuair a fháil do chláir níos faide agus níos casta, tá réitigh níos sofaisticiúla a dul rudaí ag obair. Mar sin, a ligean ar bhaint go léir na printfs. Agus a ligean ar a dhéanamh cinnte nach raibh mé rud ar bith a bhriseadh. OK. Mar sin, an clár táimid ag dul a thabhairt isteach ar a dtugtar GDB, le haghaidh GNU Debugger. Bhuel, i ndáiríre, a ligean ar bhaint dífhabhtaithe do an dara, agus dífhabhtaithe a dhéanamh arís. Bhuel, i ndáiríre an chéad, ceacht maith i argóintí. Fógra go go bhfuil an ordú Clang thiomsú tá gach rud a bheith tugtha ag an líne ordaithe, na argóintí. Mar sin, go cruinn conas a bhfuil tú ag dul a bheith ag baint úsáide argóintí, mar atá muid raibh roimh, agus mar a bheidh tú i PSET 2, go conas atá Clang baint úsáide as dóibh. Mar sin, faoi deara go bhfuil an bratach ar dtús, Fleasc ggdb3, cad a rá is é sin, Clang, ba chóir duit a thiomsú comhad seo leis an an intinn beidh muid ar deireadh thiar Ní mór a debug é. Mar sin, chomh fada agus a bhfuil tú go bratach, ansin is féidir linn GDB dífhabhtaithe. Agus beidh sé ar oscailt suas an Debugger GNU. Mar sin, tá a lán na n-orduithe gur gá duit a fháil a úsáidtear chun. An chéad cheann a Feicfidh tú dócha Is gá láithreach Rith. Mar sin, cad é Rith ag dul a dhéanamh? Tá sé ag dul chun tús a chur ar ár gclár. Mar sin, rith, ag tosú clár, an clár Iarrann linn le haghaidh slánuimhir, 13. Agus ansin tá sé looping gan teorainn mar ag súil leis, ach amháin a bhaint mé an printfs, mar sin ní féidir linn a fheiceáil fiú go. Sendmail de ghnáth. Ó. Tá sé indéanta go fillte sé ar fad an bhealach a dhéanamh timpeall, ar ais go dtí - ag déanamh neamhshuim sin. Glac leis nach raibh sé de ghnáth scoir. Níl freagra casta sin. Mar sin anois, ní go an-úsáideach. Mar sin, ach a shíneann ár gclár taobh istigh de Ní hionann sin dífhabhtóir cabhrú linn in aon bhealach, ós rud é gur féidir linn a bheith déanta díreach ponc Slais debug ó lasmuigh GDB. Mar sin, an t-ordú amháin a beidh tú is dócha - agus beidh mé éirí as an tobac seo. Rialú-d nó scor, an dá obair. Mar sin, a ligean ar é a oscailt suas arís. Ordú eile a mbainfidh tú is dócha láithreach ag iarraidh a fháil a úsáidtear chun é Sos. Mar sin, beidh muid ag briseadh ar mó do anois, agus ansin beidh mé a mhíniú go. Bhuel, anseo a fheicimid a leag muid a brisphointe ag an líne seo sa debug.c. Mar sin, cad a chiallaíonn sos é sin nuair mé cineál reáchtáil, tá an clár ag dul go dtí leanúint ar aghaidh ag rith go dtí go Bhuail mé brisphointe. Mar sin, nuair a bhuail mé reáchtáil, a thosaíonn an clár, agus ansin bhriseann sé chomh luath agus is é dtiocfaidh an fheidhm is mó. Briseadh mó ag dul a bheith rud éigin leat a dhéanamh go leor coitianta. Agus anois, a thabhairt isteach tú le roinnt orduithe níos mó. Fógra anseo, go bhfuil sé ag rá againn bhris ar líne 11, a bhfuil printf, dul isteach slánuimhir. Mar sin, an t-ordú atá Aghaidh ag dul a bheith conas a théann muid go dtí an chéad líne eile de chód. Tá sé seo ag dul chun ligean dúinn chun dlús a chur tríd ár gclár líne le líne. Mar sin, seo chugainn. Anois líne 12, táimid ag dul a fháil ar an tslánuimhir. Ar Aghaidh. Agus má bhuail tú díreach isteach arís, beidh sé Athdhéan an rud deireanach a rinne tú. Mar sin, ní féidir liom gá le cineál chugainn gach uair. Mar sin, dul isteach slánuimhir, 13. Mar sin anois, líne 14, cé go bhfuil mé níos mó ná 10, agus beidh mé a dhéanamh amach romhainn. Agus feicimid táimid ag dul a decrement i. Mar sin, táimid ag dul a decrement i arís. Mar sin anois, úsáideach eile Tá ordú Priontáil. Mar sin, tá Priontáil dul a phriontáil amach luach an athróg. A ligean ar thabhairt amach an luach de i athróg. A ligean ar a phriontáil i. Tá sé ag dul a rá go bhfuil mé 11. Anois táimid Aghaidh arís cé go Tá mé níos mó ná 10. Mar sin, tá mé fós níos mó ná 10, ó tá sé 11. i lúide lúide. A ligean ar a phriontáil mé arís. Mar súil leis, tá sé 10. Mar sin anois, in aice. Tá sé ag dul ar ais go dtí an riocht, tá mé níos mó ná 10, ach tá mé anois 10, mar sin nach bhfuil sé níos mó ná 10, mar sin táimid ag súil sé ag titim amach as an lúb fad. Agus anois tá muid faoi bhun an líne de chód. Agus ordú eile, Liosta, ag dul díreach a chur ar taispeáint roimhe sin agus seo chugainn cúpla línte de chód, i cás chaill tú féin. Mar sin, sendmail muid ach an lúb fad, agus anois ní mór dúinn isteach seo cé lúb, líne 18. Mar sin, cé go bhfuil mé nach bhfuil comhionann 0. Agus, in aice, is ionann mé mé lúide 3, agus beidh muid faoi ​​deara, beidh sé seo a choinneáil ach ag dul. Agus is féidir linn a phriontáil liom. Gach ordú saghas tá aicearraí. Dá bhrí sin tá p gearr ar Print. Mar sin, is féidir linn p i. Just a choinneáil shealbhú n, nó a choinneáil ag déanamh Aghaidh. Priontáil agam arís. Féach leat anois tá sé diúltach 167. Mar sin, beidh sé seo dul ar aghaidh go deo, ach ní i ndáiríre go deo, ós rud é a chonaic tú díreach, sé Beidh deireadh iarbhír ag pointe éigin. Mar sin, go bhfuil Tosú GDB. Ach a ligean ar a dhéanamh ach rud amháin níos mó i GDB. Uh, dífhabhtaithe. Mar sin, sa chás áirithe seo, an lúb gan teorainn a tharla a bheith taobh istigh de an fheidhm is mó. Agus do anois, ach glacadh leis go bhfuil mé ag dul chun bogadh an lúb gan teorainn isteach an fheidhm foo. Just cuimhnigh go, ag deireadh an clár, go maith, ba é seo dtosach ag glaoch foo, a bhí díreach ag dul i gcló i. Ach anois tá muid ag iarraidh foo, atá dul mé a decrement dtí go bhfuil sé 0, agus ansin a phriontáil go athraitheach. OK. Sábháil sin. Déan dífhabhtaithe. Agus anois, dífhabhtaithe gdb. OK. Mar sin, má Rith mé díreach ansin nach bhfuil mé ag dul go dtí a bheith in ann a céim i ndáiríre trí mo Clár líne-ar-líne. Mar sin, a ligean ar bhriseadh ag mó, agus ansin cineál reáchtáil. Mar sin, dul trí seo, printf, dul isteach slánuimhir, a fháil ar an slánuimhir, 13. Mar sin, táimid ag dul decrementing a choinneáil go dtí go bhfuil mé níos mó ná 10. Ansin, táimid ag dul chun titim tríd an cé lúb, agus a fháil chun an líne - a ligean ar é a oscailt suas i bhfuinneog ar leith. Mar sin, decremented muid go dtí go raibh mé a thuilleadh níos mó ná 10, agus ansin dúinn ar a dtugtar an fheidhm, foo. Mar sin, cad a tharla chomh luath agus bhuail mé fheidhm foo, go maith, ar a dtugtar mé foo, agus ansin a thuilleadh go raibh mé smacht GDB. Mar sin, chomh luath agus a bhuail mé ag an Aghaidh líne seo, Leanadh ar aghaidh go dtí rudaí a tharla seo, nuair a d'fhág an gclár nuair a - glacadh leis nach raibh sé ann ar deireadh thiar. Chonaic tú é sos ar feadh beagán cé. Mar sin, cén fáth go raibh mé chailleann smacht an clár ag an bpointe sin? Bhuel, nuair a scríobhann mé seo chugainn, a théann le an chéad líne eile litriúil de chód go Beidh fhorghníomhú. Mar sin, tar éis líne 21, an chéad líne eile de chód a fhorghníomhú bhfuil líne 22, a bhfuil, ag teacht amach ó is mó. Mar sin, níl mé ag iarraidh dul díreach go dtí an chéad líne eile de chód. Ba mhaith liom dul isteach ar an fheidhm, foo, agus ansin céim freisin trí na línte de chód. Mar sin, le sin, ní mór dúinn rogha eile. A ligean ar scor go arís. Briseadh mó. Uh, 1, in aice, in aice, 13, in aice, seo chugainn, seo chugainn, go cúramach, roimh bhuail muid foo líne. OK. Mar sin anois, tá muid ag líne 21, i gcás ina tugaimid foo. Nílimid ag iarraidh a chlóscríobh amach romhainn, ós rud é go Beidh glaoch díreach an foo fheidhm, agus téigh go dtí an chéad líne eile de chód. Cad ba mhaith linn a úsáid go bhfuil Céim. Mar sin, níl difríocht idir Céim agus na Chéad, i gcás ina céimeanna Céim isteach sa feidhmiú, agus téann Ar Aghaidh thar an fheidhm. Fhorghníomhú sé ach an iomláine an fheidhm agus coimeádann ag dul. Mar sin, tá Céim ag dul a thabhairt dúinn isteach ar an fheidhm, foo. Agus a fheicimid anseo, anois, tá muid ar ais ar an lúb cé go bhfuil, go teoiriciúil, dul chun leanúint ar aghaidh go deo. Agus má bhuaileann tú Céim, nuair nach bhfuil sé fiú feidhm a ghlaoch, ansin tá sé comhionann le Aghaidh. Mar sin, tá sé ach amháin nuair a bhíonn tú ag líne a ag glaoch feidhm a Céim ag dul a bheith éagsúil ó Aghaidh. Mar sin, beidh Céim thabhairt dúinn anseo. Céim, céim, céim, céim, céim, céim, agus Feicfidh muid díreach lúb gan teorainn go deo. Mar sin, go dtiocfadh leat a fháil a úsáidtear chun go mar do Is bealach lúb gan teorainn a aithint, ach a bhfuil an eochair Enter fheiceáil nuair a fhaigheann tú bhfostú. Tá bealaí níos fearr a dhéanamh sin, ach do anois, is é sin breá leor. Agus na stíle de, chun cloí le Stíl 50, ba chóir dom a bheith déanta seo. OK. Mar sin, ordú ceann deireanach a thabhairt isteach. Bhuel, a ligean ar GDB dífhabhtaithe isteach Mar sin, in ionad a bhriseadh ar mó, má tá mé fhios ag an fheidhm foo é freisin an fhadhb, ansin d'fhéadfadh liom a bheith díreach dúirt, bris ag foo, ina ionad. Ligean le rá briseadh mé ag príomhghníomhaíochta agus foo. Mar sin, is féidir leat a leagtar go leor Brisphointí agus is mian leat. Nuair a cineál mé reáchtáil, tá sé ag dul a stopadh ag an - ooh, a ligean ar recompile, ós rud é Athraigh mé rudaí. Feicfidh tú a fheiceáil seo líne, Rabhadh, foinse Tá comhad níos déanaí ná inrite. Mar sin, ciallaíonn sé sin go ndeachaigh mé díreach i anseo agus d'athraigh sin chun cloí le Stíl 50, ach ní raibh mé recompile an chláir. Mar sin, déanann GDB ar an eolas dom sin. Feicfidh mé éirí as an tobac, dífhabhtaithe a dhéanamh arís, bhuail dífhabhtaithe gdb. OK. Mar sin anois, ar ais leis an méid a bhí á dhéanamh agam. Briseadh mó, foo sos. Anois, má ritheann liom ar an gclár, mar sin tá sé dul chun leanúint ar go dtí go amas brisphointe. Sin a tharlaíonn brisphointe a a bheith ar an chéad cheann ag is mó. Anois, in ionad a dhéanamh amach romhainn, seo chugainn, seo chugainn, seo chugainn, seo chugainn, go dtí go bhuail mé foo, mé Is féidir le cineál leanúint ar aghaidh, a leanfaidh go dtí go bhuail tú an brisphointe eile. Tá mé chun dul isteach ar an slánuimhir ar dtús. Leanfaidh sé ar aghaidh go dtí go bhuail mé an Leanúint ar aghaidh brisphointe seo chugainn, is é sin fheidhm foo. Mar sin, beidh Rith ar siúl go dtí go bhuail tú ar brisphointe, ach tú a reáchtáil cineál ach amháin nuair a tú ag tosú ar an gclár, agus ansin, as sin ar aghaidh, tá sé ar aghaidh. Má rinne mé ach é a bhriseadh mó agus ansin bhí ar siúl, beidh sé sos ag is mó, agus ansin leanúint ar aghaidh. Ós rud é nach dóigh liom go bhfuil pointe sos ag foo, dul isteach ar an slánuimhir, ansin anois tá mé nach bhfuil ag dul a bhriseadh ag foo. Tá sé ag dul díreach a gan teorainn lúb go dtí sin. OK. Mar sin, go bhfuil Intro le GDB. Ba chóir duit tús a úsáid i do Leagann fhadhb. Is féidir é a bheith an-cabhrach go bugs a shainaithint. Má tá tú i ndáiríre ach, líne-ar-líne, téigh trí do chód, agus a chur i gcomparáid cad é i ndáiríre ag tarlú leis an méid a bhfuil súil agat a tharlóidh, ansin tá sé deas deacair a chailleann do bugs. OK. Mar sin, an tseachtain seo caite David thabhairt suas seo stuif cripteagrafaíochta rúnda-tábhachtacha le haghaidh an den chéad uair, i gcás nach bhfuil muid ag iarraidh pasfhocail a stóráil go díreach ar ár ríomhaire i roinnt gcomhad téacs plain, i gcás ina Is féidir le duine éigin teacht os cionn agus díreach oscailt suas agus iad a léamh. Go hidéalach, bheadh ​​siad a bheith criptithe ar bhealach éigin. Agus i Socraigh Fadhb 2, beidh tú a bheith ag déileáil le modh amháin de criptithe, nó, go maith, dhá mhodh, ach nach bhfuil siad chomh mór sin. Má dhéanann tú an t-eagrán hacker, tá tú chomh maith ag dul a bheith ag déileáil le decrypting roinnt rudaí. Mar sin, tá an cheist anois, go maith, fiú má táimid tar éis an criptithe is láidre algartam ar fud an domhain, má roghnaíonn tú pasfhocal háirithe bocht, ansin é a Ní bheidh cabhrú leat go mór, ós rud é daoine a bheith fós in ann a figiúr sé amach. Fiú má féachaint ar an teaghrán criptithe agus tá sé cosúil le praiseach de truflais Ciallaíonn sé aon rud dóibh, má tá siad fós ach is gá chun iarracht cúpla focal faire chun an figiúr sé amach, ansin tú Nach bhfuil an-slán. Mar sin, breathnú ar fhíseán a Déanann an bpointe sin. [Athsheinm físe] -Clogad, fiend tú. Cad atá ar siúl? Cad atá ar siúl agat le mo 'níon? -Cead dom a thabhairt isteach ar an iontach Máinlia plaisteach óg, an Dr Phillip Schlotkin, an srón mó fear post san iomlán Cruinne, agus Beverly Hills. -Do Mhórgacht. -Srón phost? Ní féidir liom a thuiscint. Tá sí go raibh post srón cheana féin. Bhí sé milis i láthair déag. -Ní. Níl sé cad a cheapann tú. Tá sé i bhfad, i bhfad níos measa. Más rud é nach bhfuil tú a thabhairt dom an teaglaim a an sciath aer, an Dr Schlotkin beidh thabhairt do iníon ar ais a srón d'aois. -Ní. Cá bhfuair tú é sin? -Gach ceart. Inseoidh mé. Inseoidh mé. Uimh, daidí. No, ní mór duit. -You're ceart, mo daor. Feicfidh mé chailleann do shrón nua. Ach ní bheidh mé in iúl dó an teaglaim, is cuma cén. -An-maith. Dr Schlotkin, a dhéanamh do ba mheasa. -Mo pléisiúir. [Uirlisí faobhar á] -Ní. Fan. Fan. Inseoidh mé. Inseoidh mé. -I Bhí a fhios go mbeadh sé ag obair. Gach ceart. É a thabhairt dom. -Is é an meascán amháin. -One. -One. -Dhá. -Dhá. -Dhá. -Trí. -Trí. -Trí. -Ceithre. -Ceithre. -Ceithre. -Cúig. -Cúig. -Cúig. -Mar sin, is é an meascán amháin, dhá, trí, ceithre, cúig. Sin an teaglaim stupidest Chuala mé riamh i mo shaol. Sin an saghas ruda a leathcheann bheadh ​​ar a chuid bagáiste. -Go raibh maith agat, le do Mhórgacht. -Cad a rinne tú? -I casta as an bhalla. -Ní nach raibh tú. Chas tú as an scannán ar fad. -Thuairimse, ní mór a bheith brúite an cnaipe mícheart. -Bhuel, é a chur ar ais ar. Cuir an scannán ar ais ar. -Sea, a dhuine uasail. Sea, a dhuine uasail. -A ligean ar dul, Arnold. Come, Gretchen. Ar ndóigh, tá a fhios agat beidh mé fós Tá a bhilleáil tú do seo. [DEIREADH athsheinm físe] ROB Boden: Gach ceart. Mar sin anois go bhfuil muid ag caint cheana féin faoi slándála i roinnt bealaí, deas beag póstaer scannán, mar sin le blianta beaga anuas lá, na ceisteanna seo leis an NSA monatóireacht a dhéanamh ar gach rud. Is féidir go mbeadh sé deacair a bhraitheann mhaith leat bheith de chineál éigin príobháideachta i domhan ar líne, cé nach raibh mé in ann a insint tú an chuid is mó de na sonraí PRISM. Mar sin, ag bogadh níos faide ná PRISM, ní táimid ag dul a bheith ag caint faoi sin, anois smaoineamh ar do ríomhaire glúine. Mar sin suas anseo, ba mhaith liom a athrú le mo chuntas iarbhír, le mo Penguin beag. Mar sin, tá mé sraith phasfhocal, agus go Is phasfhocal cuma cad ba mhaith liom é a bheith. Ach cuimhnigh go bhfuil an méid Tá mé ag logáil i le, mar sin an logáil isteach pras é, roinnt clár. Tá sé roinnt clár a raibh scríofa ag duine éigin. Agus mar sin, an duine sin, má tá siad go háirithe mailíseach, d'fhéadfadh siad Tá sé ráite, gach ceart, mar sin má tá an focal faire go bhfuil dul isteach mé Macasamhail mo d 'fhocal faire, nó tá sé comhionann le roinnt pasfhocal speisialta - Is é David uamhnach nó rud éigin - ansin lig dóibh isteach Mar sin, d'fhéadfadh Ríomhchláraitheoir mailíseach a bheith rochtain ar gach ceann de do Macs, nó Windows, nó rud ar bith. Mar sin, nach bhfuil go leor den ábhar imní, ós rud é, Ciallaíonn mé, clár logáil é seo go bhfuil shipped le OS X, na céadta nó a bhfuil na mílte daoine athbhreithniú cód seo. Agus mar sin, más rud é, i do chód áit éigin, tá tú a rá más ionann an teaghrán ionann Is é David uamhnach, logáil isteach, ansin tá duine éigin ag dul a bheith, cosúil le, fan. Ní hé seo an ceart. Níor chóir é seo a bheith anseo. Mar sin, go bhfuil bealach amháin a fháil againn rudaí a bheith de chineál ar slán. Ach smaoineamh faoi chláir fiú gur scríobh tú. Ligean le rá a scríobh tú an clár logáil isteach. Mar sin, an clár logáil gur scríobh tú, mar sin ar ndóigh, tá tú go maith Ríomhchláraitheoir. Nach bhfuil tú ag dul a chur ar aon mailíseach más ionann x ionann é David uamhnach isteach i do cód. Ach an clár seo, cad a dhéanann tú úsáid a bhaint as an gclár seo a chur le chéile? Rud éigin cosúil le Clang. Mar sin, cad má tá an duine a tharla a scríobh Clang speisialta cased i Clang rud éigin cosúil le, má tá mé a thiomsú clár logáil isteach, ansin cuir isteach an cód isteach sa chlár logáil a deir, má x ionann ionann é David uamhnach? Mar sin, nach bhfuil fós go leor, ach ní mór dúinn an gcéanna eisiúint anseo, i gcás ina Clang, go maith, na mílte, más rud é nach mílte agus na mílte de daoine, d'fhéach sé ar Clang, tá d'fhéach sé ar a chuid línte de chód agus dúirt sé, gach ceart, níl aon rud dona anseo. Ar ndóigh, níl aon duine ag déanamh aon rud seo mailíseach. Ach cad é clang féin, cosúil le, cad má mé a thiomsú Clang? Cad a tharlaíonn má tá mé tiomsaitheoir éigin go Tiomsaíonn Clang go gcuirtear isteach Clang seo a hack speisialta a deir, gach ceart, nuair a thiomsú mé Clang, ansin an inrite a fháil, ba chóir breathnú go speisialta taobh istigh den chlár logáil isteach agus cuir isteach pasfhocal seo is ionann, ionann É Dave uamhnach? Mar sin, cuimhnigh go bhfuil do tiomsaitheoir féin Ní mór a bheidh le tiomsú ag pointe éigin. Mar sin, má cad a roghnaíonn tú a chur le chéile Clang le, é féin mailíseach, ansin tú D'fhéadfaí a screwed an t-iomlán bhealach síos ar an líne. Mar sin, anseo, ní mór dúinn Ken Thompson agus Dennis Ritchie. Mar sin, is é seo an grianghraf íocónach. Tá Dennis Ritchie ar dheis. Tá sé ina mór - go leor i bhfad Scríobh C. Mar sin, is féidir leat buíochas a ghabháil leis as an rang seo. Ken Thomson atá ar thaobh na láimhe clé. An bheirt acu scríobh bunúsach UNIX. Bhuel, bhí siad ranníocóirí móra i UNIX. Bhí roinnt daoine eile. Mar sin, Ken Thompson, ag pointe éigin, Bhuaigh sé an Gradam Turing. Agus an dámhachtain Turing, chuala mé i gcónaí tagairt é an mbealach seo, tá sé an Duais Nobel na heolaíochta ríomhaireachta. Mar sin, ag an Gradam Turing, tá sé a a thabhairt óráid a thug sé glacadh. Agus tugann sé seo óráid an-cháiliúil anois, ar a dtugtar Machnamh ar a hiontaoibh Iontaobhas, a bhfuil againn nasctha a íoc, a ar an láithreán gréasáin chúrsa. Agus sa chaint, a deir sé, ceart go léir, mar sin scríobh mé UNIX, agus anois go léir de tú daoine ag baint úsáide UNIX. Anois, cuimhnigh lá atá inniu ann go bhfuil Linux dírshliochtach de UNIX. OS X úsáidí díreach UNIX. Ní dhéanann Windows oiread sin, ach tá a lán smaointe a bhí tógtha ó UNIX. Mar sin, téann sé suas go dtí an chéim agus a deir, gach ceart, scríobh mé UNIX. Agus díreach mar sin tú guys fhios, tá mé in ann a logáil isteach i ngach ceann amháin de do ríomhairí. Ó chuir mé ar cheann de na speisialta más x ionann is ionann é Ken Thomson uamhnach, ansin mé cead a logáil isteach. Mar sin, tá daoine cosúil, go maith, how'd a dhéanann tú sin? D'fhéachamar ar an gclár logáil isteach agus tá aon rud ann. Tá sé cosúil le, maith, mhodhnú mé an tiomsaitheoir a logáil isteach ar an gclár logáil isteach ionas go mbeidh an clár logáil beidh anois tá cothrom le x cothrom le Ken Thompson Tá uamhnach. Agus deir siad, go maith, ní go fíor. Táimid ag féachaint ar an Tiomsaitheoir, agus an Níl tiomsaitheoir bhfuil aon línte Cód mar sin. Tá sé cosúil le, OK, ach cad tá tú ag tiomsú an tiomsaitheoir leis? Agus a cheapann siad, agus tá sé, cosúil le, maith, Tá mé an ceann a thug tú an tiomsaitheoir bhfuil tú ag baint úsáide as a thiomsú ar an Tiomsaitheoir, mar sin tá tú ag a thiomsú tiomsaitheoir, go é féin mailíseach, agus beidh bhriseadh an clár logáil isteach. Mar sin, go bunúsach, ag an bpointe sin, níl aon bhealach d'fhéadfaí tú ag féachaint ar an bhfoinse cód an chláir logáil isteach a fheiceáil cad atá mícheart. Ní fhéadfaí tú breathnú fiú i cód foinse an tiomsaitheoir a fheiceáil cad atá mícheart. Bheadh ​​ort chun breathnú ar an meaisín cód, an dénártha iarbhír an tiomsaitheoir thiomsú a fheiceáil, fan, na Níor chóir línte de chód a bheith anseo. Ach thóg Ken Thompson sé céim amháin tuilleadh agus dúirt sé, go maith, tá na cláir speisialta i ndáiríre cabhrú léann tú an dénártha na gclár, agus mar sin má úsáidtear duine éigin go clár a léigh an dénártha, bheadh ​​siad a fheiceáil ar na línte de chód. Mhodhnú sé na cláir sin a rá, gach ceart, má tá tú ag lorg ar an tiomsaitheoir, ach nach léiríonn an áirithe sraith de dénártha. Mar sin, ansin is gá duit a ghlacadh go céim thuilleadh agus go bunúsach, d'fhéadfadh go mbeadh leibhéil éagsúla a glacadh de indirection, agus ag pointe éigin, tá aon duine i ndáiríre ag dul a bheith a sheiceáil. Mar sin, is é an mhorálta an scéal, tá tú nach bhfuil ag dul a bheith a scríobh Clang sa rang seo. Tá tú ag dul a bheith ag baint úsáide dreapadóireachta Clang a lán sa rang seo. I gcás gach a fhios agat, tá Clang ina mailíseach clár atá sabotaging gach chlár aonair atá thiomsaigh tú riamh. Agus a fhágann tú ar an ominous an- faoi ​​deara, a fheiceann tú ar an gCéadaoin. [Bualadh bos] Cainteoir 2: Ag an CS50 eile. Cainteoir 3: Ná leomh tú a rá go bhfuil. Is féidir leat é seo a dhéanamh. Tá tú é seo roimh, is féidir leat é seo a dhéanamh lá atá inniu ann, is féidir leat é seo a amárach. Tá tú ag déanamh seo ar feadh na mblianta. Just dul suas ann agus é seo a dhéanamh. Is féidir leat é seo a dhéanamh. [Seinm ceoil]