ROB Bowden: Hi, tá mé Rob Bowden, agus a ligean ar labhairt faoi quiz0. Mar sin, an chéad cheist. Is é seo an cheist nuair a is gá duit chun cód an uimhir 127 sna bolgáin dénártha. Má bhí tú, d'fhéadfadh tú a dhéanamh ar an comhshó rialta ó bi-- nó, ó deachúil go dénártha. Ach tá go bhfuil ag dul is dócha a ghlacadh a lán ama. Ciallaíonn mé, d'fhéadfaí tú a figiúr amach go bhfuil, OK, tá 1 i ann, tá 2 i ann, Tá 4 i ann, tá 8 i ann. Ar bhealach níos éasca, is é 128 lúide aon 127. Is é sin an bolgán solais leftmost an 128-giotán. Dá bhrí sin tá 127 i ndáiríre ach go léir de na bolgáin solais eile, ós rud é go bhfuil an leftmost bolgán solais lúide 1. Sin é do cheist sin. Ceist amháin. Mar sin, le 3 giotán féidir leat ionadaíocht 8 luachanna ar leith. Cén fáth, ansin, 7 an ceann is mó neamh-diúltach slánuimhir dheachúlach féidir leat a son? Bhuel, más féidir linn ach ionadaíocht 8 luachanna ar leith, ansin cad tá muid ag dul a bheith Tá a ionadaíonn 0 trí 7. 0 Bíonn suas ar cheann de na luachanna. Ceist a dó. Le giotán n, cé mhéad ar leith luachanna féidir leat ionadaíocht a dhéanamh? Mar sin, le giotán n, tá tú 2 luachanna féideartha le haghaidh gach giotán. Mar sin, ní mór dúinn 2 luachanna a d'fhéadfadh an chéad giotán, 2 luach is féidir a don dara, 2 féidir leis an tríú. Agus mar sin go bhfuil 2 uair 2 uair 2, agus deireadh thiar is é an freagra 2 don n. Ceist trí. Cad 0x50 i dénártha? Mar sin, cuimhnigh go bhfuil an-heicsidheachúlach comhshó simplí go dénártha. Mar sin anseo, ní mór dúinn ach chun breathnú ar an 5 agus an 0 neamhspleách. Mar sin, cad 5 i dénártha? 0101, go bhfuil an 1 giotán agus an 4 giotán. Cad 0 i dénártha? Níl sé tricky. 0000. Mar sin, ach iad a chur le chéile, agus go bhfuil an líon iomlán i dénártha. 01,010,000. Agus má raibh tú d'fhéadfaí tú éirí de thalamh go náid leftmost. Tá sé nach mbaineann le hábhar. Mar sin, ansin ina mhalairt de chás, cad é 0x50 i dheachúlach? Má bhí tú, could-- tú má tá tú níos compordaí leis an dénártha, d'fhéadfaí tú a ghlacadh go freagra dénártha agus thiontú go isteach deachúil. Nó d'fhéadfadh muid ag cuimhneamh go díreach go heicsidheachúlach. Mar sin, go bhfuil 0 san áit 0-ú, agus an 5 i 16 go dtí an chéad áit. Mar sin anseo, ní mór dúinn 5 uaire 16 go dtí an ar dtús, móide 0 uair 16 go dtí an náid, Tá 80. Agus má d'fhéach tú ar an teideal ar an gceist, bhí sé CS 80, a bhí de chineál ar leid ar an freagra ar an bhfadhb. Ceist cúig. Tá an script Scratch, a bhfuil athrá 4 huaire im peanut glóthach. Mar sin, conas a dhéanann muid anois cód gur i C? Bhuel, ní mór dúinn here-- an chuid i gcló trom tá an chuid amháin a bhí tú a chur i bhfeidhm. Mar sin, ní mór dúinn a 4 lúb go bhfuil looping 4 amanna, printf-áirítear peanut glóthach im, le líne nua mar a iarrann an fhadhb. Ceist sé, fadhb Scratch eile. Feicimid go bhfuil muid i lúb go deo. Táimid ag rá an i athróg agus ansin incriminteach mé ag 1. Anois, ba mhaith linn a dhéanamh go bhfuil i C. Tá bealaí éagsúla gur féidir linn a bheith déanta seo. Anseo a tharla dúinn chun cód an go deo lúb mar tamaill (fíor). Mar sin, a dhearbhú againn ar an athróg i, ach mar a bhí againn i athróg i Scratch. Dhearbhú go bhfuil an liom athraitheach, agus go deo cé (fíor), deirimid an athróg i. Mar sin, printf% i-- nó d'fhéadfaí tú a úsáid% d. Deirimid go bhfuil athraitheach, agus ansin incrimint é, ++ mé. Ceist seacht. Anois, ba mhaith linn rud éigin an-chosúil a dhéanamh go Mario ponc c ó fhadhb a leagtar amháin. Is mian linn a phriontáil ar na hashtags, ba mhaith linn a phriontáil cúig trí dronuilleog de na hashes. Mar sin, cé go bhfuil muid ag dul a dhéanamh sin? Bhuel, a thabhairt duit ina n-iomláine bunch cód, agus tú díreach a líonadh isteach ar an fheidhm greille cló. Mar sin, cad a dhéanann PrintGrid cuma mhaith? Bhuel tá tú anuas ar an leithead agus an airde. Mar sin, ní mór dúinn seachtrach 4 lúb, go bhfuil looping thar gach ceann de na sraitheanna seo greille gur mhaith linn a phriontáil amach. Ansin, ní mór dúinn an idir-neadaithe 4 lúb, go priontáil thar gach colún. Mar sin, le haghaidh gach as a chéile, táimid ag a phriontáil le haghaidh gach colún, a hash amháin. Ansin, ag deireadh an tsraith nua a phriontáil againn líne nua amháin chun dul go dtí an tsraith nua seo chugainn. Agus sin é don eangach ar fad. Ceist ocht. Tá feidhm mhaith PrintGrid Deirtear go a bheith i bhfeidhm taobh, ach ní ar ais luach. Mínigh an t-idirdhealú. Mar sin, ag brath seo ar cuimhneamh ort cad é i bhfeidhm taobh. Bhuel, ar ais value-- Tá a fhios againn nach bhfuil PrintGrid Tá luach ar ais, ós rud é ar dheis anseo a deir sé ar neamhní. Mar sin, rud ar bith go tuairisceáin neamhní Níl ar ais i ndáiríre rud ar bith. Mar sin, cad é an éifeacht taobh? Bhuel, is é éifeacht taobh rud ar bith go saghas fós ann tar éis deireadh an fheidhm Ní raibh go díreach ar ais, agus ní raibh sé ach as an ionchur. Mar sin, mar shampla, d'fhéadfadh muid athrú athróg domhanda. Bheadh ​​sin a bheith i bhfeidhm taobh. Sa chás áirithe seo, a bhfeidhm taobh an-tábhachtach Tá a phriontáil ar an scáileán. Mar sin, is é sin i bhfeidhm taobh Tá sin PrintGrid. Taispeáin muid na rudaí seo ar an scáileán. Agus is féidir leat smaoineamh ar gur mar bhfeidhm taobh, ós rud é go bhfuil rud éigin go mhaireann tar éis deireadh an fheidhm seo. Sin rud éigin taobh amuigh de scóip na feidhme seo a deireadh thiar á athrú, an ábhar ar an scáileán. Ceist naoi. Smaoinigh ar an gclár thíos, a bhfuil uimhreacha líne curtha leis le haghaidh ar mhaithe le plé. Mar sin, sa chlár seo tá muid ach glaoch GetString, a stóráil sa s athraitheach, agus ansin priontáil go athróg s. OK. Mar sin, a mhíniú cén fáth go bhfuil líne amháin i láthair. #include cs50 ponc h. Cén fáth a bhfuil gá dúinn a #include cs50 ponc h? Bhuel tá muid ag glaoch ar an GetString fheidhm, agus tá GetString sainithe sa leabharlann cs50. Mar sin, más rud é nach raibh againn #include cs50 ponc h, ba mhaith linn a fháil ar an dearbhú intuigthe an earráid fheidhm GetString as an Tiomsaitheoir. Mar sin, ní mór dúinn a chur san áireamh ar an library-- ní mór dúinn a chur san áireamh an comhad header, nó ní bheidh eile an tiomsaitheoir a aithint go bhfuil GetString. Mínigh cén fáth a bhfuil líne dhá láthair. Mar sin, caighdeán io ponc h. Tá sé díreach mar an gcéanna mar an fhadhb roimhe, ach amháin in ionad déileáil le GetString, tá muid ag caint faoi printf. Mar sin, más rud é nach raibh linn a rá ní mór dúinn a chur san áireamh caighdeán io ponc h, ansin ní ba mhaith linn a bheith in ann a bhaint as an fheidhm printf, mar gheall ar an tiomsaitheoir Ní bheadh ​​a fhios faoi. Why-- cad é an tábhacht ar neamhní i gcomhréir ceithre? Mar sin, ní mór dúinn anseo slánuimhir is mó (neamhní). Sin go díreach ag rá go bhfuil muid nach bhfuil ag fáil aon-orduithe argóintí to main. Cuimhnigh go bhféadfadh muid a rá slánuimhir príomh-o lúibíní argv argc teaghrán. Mar sin anseo táimid ag rá ach neamhní a rá linn ag déanamh neamhshuim ar argóintí. Mínigh, maidir le cuimhne, go díreach cén GetString ag teacht sé tuairisceáin. GetString Tá filleadh bloc chuimhne, le sraith de charachtair. Tá sé ar ais i ndáiríre pointeoir leis an chéad charachtar. Cuimhnigh go bhfuil teaghrán réalta Char. Dá bhrí sin tá s pointeoir chuig an chéad i cuma cad é an teaghrán carachtar gur tháinig an t-úsáideoir ar an méarchlár. Agus a tharlaíonn go bhfuil cuimhne a malloced, ionas go bhfuil cuimhne i gcarn. Ceist 13. Smaoinigh ar an gclár thíos. Mar sin, tá gach clár seo a dhéanamh Tá printf-áirítear 1 roinnte ar 10. Mar sin, nuair a le chéile agus chun báis, clár seo aschur 0.0, cé go 1 arna roinnt 10 Is é 0.1. Mar sin, cén fáth go bhfuil sé 0.0? Bhuel, tá sé seo mar gheall ar de roinn slánuimhir. Dá bhrí sin tá 1 slánuimhir, 10 slánuimhir. Mar sin, 1 arna roinnt 10, rud áirítear mar slánuimhreacha, agus i C, nuair a dhéanann muid roinn slánuimhir, teascadh muid aon pointe deachúil ar. Mar sin, 1 arna roinnt faoi 10 0, agus ansin tá muid ag iarraidh a phriontáil gur mar snámhphointe, mar sin náid phriontáil mar snámhphointe is 0.0. Agus sin an fáth a fháil againn 0.0. Smaoinigh ar an gclár thíos. Anois, tá muid ag priontáil 0.1. Mar sin, aon roinn slánuimhir, táimid ag priontáil ach 0.1, ach táimid a phriontáil go dtí 28 ionad de dheachúlacha. Agus a fháil againn seo 0.1000, a bunch iomlán de nialais, 5 5 5, blah blah blah. Mar sin, tá an cheist anseo cén fáth a dhéanann sé phriontáil go, in ionad go díreach 0.1? Mar sin, is é an chúis anseo anois snámh pointe imprecision. Cuimhnigh go bhfuil snámhphointe ach 32 giotán. Mar sin, is féidir linn a ionadaíocht a dhéanamh ach líon críochta ar snámh luachanna phointe leis na 32 giotán. Bhuel níl deireadh thiar infinitely go leor luachanna snámhphointe, agus níl infinitely go leor ar snámh luachanna phointe i idir 0 agus 1, agus tá muid ar ndóigh ann ionadaíocht a luachanna fiú níos mó ná sin. Mar sin, ní mór dúinn a íobairtí a dhéanamh chun a bheith in ann chun ionadaíocht a luachanna an chuid is mó. Mar sin, le luach ar nós 0.1, cosúil Ní féidir linn ionadaíocht a dhéanamh go díreach. Mar sin, in ionad a ionadaíonn 0.1 dhéanaimid an fearr is féidir linn seo a léiriú 0.100000 5 5 5. Agus sin gar go leor, ach ar a lán na n-iarratas caithfidh tú a bheith buartha faoi snámh pointe imprecision, toisc nach féidir linn a ionadaíocht a dhéanamh go díreach na pointí uile lena snámh go díreach. Ceist 15. Smaoinigh ar an cód thíos. Táimid ag priontáil ach 1 móide 1. Mar sin, níl aon trick anseo. 1 móide 1 meastóireacht a 2, agus ansin tá muid ag priontáil sin. Priontaí sé seo díreach 2. Ceist 16. Anois, tá muid ag priontáil an carachtar 1 móide an carachtar 1. Mar sin, cén fáth a dhéanann sé seo taispeáin an rud céanna? Bhuel an carachtar 1 móide an carachtar 1, tá an carachtar 1 luach ASCII 49. Mar sin, tá sé seo ag rá i ndáiríre 49 móide 49, agus deireadh thiar tá sé seo ag dul i gcló 98. Mar sin, ní hionann sin phriontáil 2. Ceist 17. Comhlánaigh an cur chun feidhme ar corr thíos ar bhealach go tuairisceáin an fheidhm fíor má Tá n corr agus bréagach más rud é go n fiú. Is é seo an cuspóir mór don oibreoir mod. Mar sin, a chur orainn ár n-argóint n, más rud é n mod 2 cothrom le 1, go maith ciallaíonn sin go n roinnte 2 Bhí fuílleach. Más n arna roinnt ar 2 Bhí fuílleach, go Ciallaíonn sé sin go bhfuil n corr, mar sin ar ais muid fíor. Eile muid ar ais bréagach. D'fhéadfá a dhéanamh freisin n mod 2 ionann náid, ar ais bréagach, eile ar ais fíor. Smaoinigh ar an fheidhm athchúrsach thíos. Mar sin, má tá n lú ná nó cothrom le 1, ar ais 1, eile ar ais n amanna f ar n lúide 1. Mar sin, cad é an fheidhm seo? Bhuel, tá sé seo ach an feidhm factorial. Tá ionadaíocht nicely seo mar n factorial. Mar sin ceist 19 anois, ba mhaith linn a an deis seo a fheidhm athchúrsach. Ba mhaith linn a dhéanamh atriallach é. Mar sin, conas is féidir linn é sin a dhéanamh? Bhuel don fhoireann réiteach, agus arís níl bealaí éagsúla a d'fhéadfadh tú a bheith déanta go, tús a chur againn leis an táirge slánuimhir comhionann 1. Agus ar fud an do lúb, táimid ag dul a bheidh le a iolrú táirge chun deireadh deireadh suas leis an factorial iomlán. Mar sin, do o comhionann i 2, tá mé níos lú ná nó cothrom le n, ++ i. D'fhéadfá a bheith wondering cén fáth go cothrom i 2. Bhuel, cuimhnigh go anseo ní mór dúinn a bí cinnte go bhfuil ár gcás bonn ceart. Mar sin, má tá n lú ná nó cothrom go 1, tá muid ar ais díreach 1. Mar sin thar anseo, tús a chur orainn ag cothrom i 2. Bhuel má bhí mé 1, ansin the-- nó dá n 1, ansin an do lúb Ní bheadh ​​a fhorghníomhú ar chor ar bith. Agus mar sin ba mhaith linn ach táirge ar ais, a bhfuil 1. Ar an gcaoi chéanna, bhí más rud é n rud ar bith níos lú ná 1-- dá mba 0, diúltach 1, whatever-- ba mhaith linn a fós a bheith ag filleadh 1, a bhfuil cad é an go díreach Tá leagan athchúrsach dhéanamh. Anois, más rud é go n níos mó ná 1, ansin táimid ag dul a dhéanamh ar a laghad ceann amháin atriall den lúb. Mar sin, a ligean ar rá go bhfuil n 5, ansin tá muid ag dul a dhéanamh amanna a táirge is ionann 2. Mar sin, anois go bhfuil a táirge 2. Anois, tá muid ag dul a dhéanamh amanna a táirge comhionann 3. Anois tá sé 6. Amanna Táirge ionann 4, anois tá sé 24. Amanna Táirge ionann 5, anois tá sé 120. Mar sin, ansin ar deireadh thiar, tá muid ar ais 120, a bhfuil i gceart 5 factorial. Ceist 20. Is é seo an ceann ina bhfuil tú a líonadh sa tábla seo aon algartam a tugadh, rud ar bith go atá feicthe againn, go n-oireann na reáchtáil algorithmic amanna na huaire reáchtáil asymptotic. Mar sin, cad é algartaim go Tá óimige de 1, ach O mór de n? Mar sin, d'fhéadfadh a bheith ann infinitely go leor freagraí anseo. An ceann go atá againn le feiceáil is dócha an chuid is mó Is minic ach cuardaigh líneach. Mar sin, sa chás is fearr cás, ar an mír táimid Tá ag lorg ar an ag tosú ar an liosta agus mar sin i óimige de 1 céimeanna, an chéad rud a sheiceáil againn, againn ach ar ais láithreach go raibh muid ar an mír. Sa chás is measa, Is é an rud ag an deireadh, nó nach bhfuil an rud ar an liosta ar chor ar bith. Mar sin, ní mór dúinn chun cuardach a dhéanamh ar an liosta ar fad, ar fad n heilimintí, agus sin an fáth go bhfuil sé o n. Mar sin, anois tá sé rud éigin go bhfuil an dá óimige n logáil n, agus O mór de n log n. Bhuel an rud is iomchuí againn le feiceáil anseo chumasadh saghas. Mar sin merge sórtáil, cuimhnigh, Tá deireadh thiar Téite de n logáil n, áit a bhfuil téite sainithe má tá óimige agus O mór araon mar an gcéanna. An dá n logáil n. Cad é rud éigin go bhfuil óimige n, agus O de n cearnógach? Bhuel, arís níl freagraí is féidir il. Anseo a tharlóidh dúinn a rá mboilgeog saghas. Bheadh ​​a chur isteach a shórtáil ag obair anseo chomh maith. Cuimhnigh go bhfuil saghas mboilgeog Tá sin leas iomlán a bhaint i gcás, má tá tú in ann a fháil tríd an liosta ar fad gan gá a dhéanamh babhtála, ansin, go maith, Is féidir linn a thabhairt ar ais láithreach go Cuireadh an liosta in eagar chun tús a chur leis. Mar sin, i an scéal chás is fearr, tá sé ach óimige n. Más rud é nach bhfuil sé ach ina nicely curtha in eagar liosta chun tús a chur leis, ansin ní mór dúinn O n cearnógach babhtálacha. Agus ar deireadh, ní mór dúinn saghas roghnaithe do n cearnógach, idir óimige agus O. mór Ceist 21. Cad slánuimhir thar maoil? Bhuel arís, cosúil leis níos luaithe, ní mór dúinn ach finitely leor giotán chun ionadaíocht a dhéanamh slánuimhir, mar sin b'fhéidir 32 giotán. Ligean le rá ní mór dúinn a slánuimhir sínithe. Ansin, ar deireadh thiar an líon is airde uimhir dheimhneach is féidir linn a son Is é 2 go dtí an 31 lúide 1. Mar sin, cad a tharlaíonn má iarracht muid a ansin incrimint go slánuimhir? Bhuel, táimid ag dul chun dul ó 2 go dtí an 31 lúide 1, léir ar an mbealach síos go dtí diúltach 2 go dtí an 31. Mar sin, tá an thar maoil slánuimhir nuair a gcoinníonn tú incriminteach, agus ar deireadh thiar ní féidir leat a fháil ar aon níos airde agus sé ach wraps léir ar an mbealach ar ais thart ar a luach diúltach. Cad mar gheall ar thar maoil maolán? Mar sin, Maolán overflow-- cuimhneamh ar cad is Maolán. Tá sé ach smután de chuimhne. Tá rud éigin cosúil le sraith Maolán. Mar sin, tá a thar maoil maolán nuair iarracht tú cuimhne a rochtain thar dheireadh na eagar. Mar sin, má tá tú sraith de mhéid 5 agus tú iarracht a dhéanamh rochtain a lúibín eagar 5 nó lúibín 6 nó lúibín 7, nó aon rud thar an deireadh, nó fiú rud ar bith lúibín eagar below-- diúltach 1-- Tá gach ceann de na overflows Maolán. Tá tú ag touching cuimhne bhealaí dona. Ceist 23. Mar sin, i gceann seo is gá duit strlen a chur i bhfeidhm. Agus muid ag insint duit gur féidir leat glacadh leis nach mbeidh s a null, mar sin ní gá duit a dhéanamh ar aon seic null. Agus tá bealaí éagsúla d'fhéadfaí tú a bheith déanta seo. Anseo táimid ag a ghlacadh ach an simplí. Tús a chur againn le cuntar, n. Tá n comhaireamh cé mhéad carachtair ann. Mar sin, táimid ag tosú ag 0, agus ansin dúinn iterate thar an liosta iomlán. An bhfuil s lúibín 0 comhionann leis an carachtar Terminator null? Cuimhnigh táimid ag lorg an carachtar terminator Eolas faoin margadh saothair chun a chinneadh cé chomh fada is é ár teaghrán. Is é sin ag dul a fhoirceannadh aon teaghrán ábhartha. Dá bhrí sin tá s lúibín 0 comhionann leis an Críochnaitheoir null? Más rud é nach bhfuil sé, ansin táimid ag dul go dtí féachaint ar s lúibín 1, s lúibín 2. Coinneoimid ag dul go dtí go againn teacht ar an Críochnaitheoir null. Chomh luath agus tá muid fuair sé, ansin n bhfuil an fad iomlán na sreinge, agus is féidir linn ar ais go díreach. Ceist 24. Mar sin, is é seo an ceann ina tú a dhéanamh ar an trádáil as. Mar sin, tá rud amháin go maith i gceann Tá bealach, ach cén dóigh a bhfuil sé olc? Mar sin anseo, merge claonadh a shórtáil go a bheith níos tapúla ná mar a mboilgeog saghas. Ag rá that-- go maith, ansin Tá freagraí il anseo. Ach tá an ceann is mó gur saghas mboilgeog Tá óimige n haghaidh liosta sórtáilte. Cuimhnigh go bhfuil an tábla chonaic muid ach níos luaithe. Mar sin, sórtálfar mboilgeog óimige de n, an scéal chás is fearr Tá sé in ann dul díreach os cionn an liosta uair amháin, a chinneadh hug is é an rud cheana curtha in eagar, agus ar ais. Cumaisc saghas, is cuma cén a dhéanann tú é, óimige n log n. Mar sin, do liosta sórtáilte, mboilgeog sórtáil ag dul a bheith níos tapúla. Anois, cad faoi liostaí nasctha? Mar sin, is féidir le liosta nasctha fás agus Laghdaigh a d'oirfeadh mar go leor gnéithe mar is gá. Ag rá that-- amhlaidh de ghnáth ar an comparáid dhíreach ag dul a bheith ina nasctha liosta le sraith. Mar sin, cé is féidir arrays go héasca ag fás agus a Laghdaigh a d'oirfeadh mar go leor gnéithe mar is gá, le liosta nasctha i gcomparáid le an array-- Tá rochtain randamach eagar. Is féidir linn innéacs isteach in aon Gné ar leith den eagar. Mar sin, le haghaidh liosta nasctha, ní féidir linn ach dul go dtí an cúigiú gné, ní mór dúinn a lean ón tús go dtí go bhfaigheann muid go dtí an cúigiú gné. Agus tá go bhfuil dul chun cosc ​​a chur chugainn ó ag déanamh rud éigin cosúil le cuardach dénártha. Ag labhairt di ar cuardaigh dénártha, cuardaigh dhénártha claonadh a bheith níos tapúla ná cuardaigh líneach. Ag rá that-- mar sin, rud amháin is féidir is é sin nach féidir leat a dhéanamh dénártha cuardach a dhéanamh ar liostaí nasctha, féidir leat a dhéanamh ach é a chur ar arrays. Ach is dócha níos tábhachtaí fós, Ní féidir leat a dhéanamh cuardach dhénártha ar sraith nach bhfuil curtha in eagar. Upfront d'fhéadfadh gá duit a shórtáil an eagar, agus gan ach is féidir ansin a dhéanann tú cuardach dénártha. Mar sin, más rud é nach bhfuil do rud sórtáilte chun tús a chur leis, ansin d'fhéadfadh an cuardach líneach a bheith níos tapúla. Ceist 27. Mar sin, mheas an clár thíos, a bheidh sa sleamhnán seo chugainn. Agus is é seo an ceann i gcás ina bhfuil muid ag dul go dtí gur mian a lua go sainráite na luachanna i gcomhair athróg éagsúla. Mar sin, a ligean ar breathnú ar sin. Mar sin, líne amháin. Tá cothrom le slánuimhir x 1. Sin an rud amháin go bhfuil a tharla. Mar sin, ag líne amháin, a fheiceann muid inár tábla, go y, a, b, agus tmp go léir blacked amach. Mar sin, cad é x? Bhuel leag muid ach sé cothrom le 1. Agus ansin líne dhá, go maith, feicimid go bhfuil y leagtha chun 2, agus is é an tábla cheana líonadh i dúinn. Dá bhrí sin tá x 1 agus y 2. Anois, líne trí, tá muid anois taobh istigh den fheidhm babhtála. Cad a rinne muid pas a mhalartú? Rith muid ampersand x le haghaidh a, agus y ampersand do b. I gcás an fhadhb níos luaithe Dúirt an seoladh x Tá 0x10, agus is é an seoladh y 0x14. Mar sin, iad a agus b cothrom le 0x10 agus 0x14, faoi seach. Anois ag líne trí, cad iad x agus y? Bhuel, tá rud ar bith a athrú faoi ​​x agus y ag an bpointe seo. Cé go bhfuil siad taobh istigh de fráma Stack mó, tá siad fós mar an gcéanna luachanna a rinne siad roimh. Ní mór dúinn a mhodhnú aon chuimhne. Dá bhrí sin tá x 1, y 2. Gach ceart. Mar sin, anois dúirt muid tmp o comhionann le réalta a. Mar sin, ag teacht ceithre, gach rud Is mar an gcéanna ach amháin i gcás tmp. Ní mór dúinn a athrú ar bith luachanna aon ní amháin i gcás tmp. Táimid ag leagan síos tmp comhionann le réalta a. Cad is réalta a? Bhuel, a pointí x, Mar réalta a ag dul a x comhionann, a bhfuil 1. Mar sin, tá gach rud a chóipeáil síos, agus tá tmp leagtha chun 1. Anois an chéad líne eile. Star a ionann réalta b. Mar sin, le líne five-- maith arís, rud Is mar an gcéanna ach amháin is cuma cad é a réalta. Cad is réalta a? Bhuel, a dúirt muid ach go bhfuil réalta a x. Mar sin, tá muid ag athrú x go comhionann réalta b. Cad is réalta b? y. pointí b a y. Dá bhrí sin tá réalta b y. Mar sin, tá muid ag leagan x cothrom le y, agus tá gach rud eile mar an gcéanna. Mar sin, a fheiceann muid sa tsraith nua seo chugainn go bhfuil x anois 2, agus an chuid eile a chóipeáil díreach síos. Anois sa chéad líne eile, is ionann réalta b tmp. Bhuel, a dúirt muid ach go bhfuil réalta b y, mar sin táimid ag leagan síos y cothrom le tmp. Tá gach rud eile mar an gcéanna, mar sin Faigheann gach rud a chóipeáil síos. Táimid ag leagan síos y cothrom le TMP, a bhfuil tá sé ar cheann, agus gach rud eile mar an gcéanna. Anois ar deireadh, an líne seacht. Táimid ar ais i an fheidhm is mó. Táimid tar éis a babhtála críochnaithe. Táimid tar éis a chaill a, b, agus TMP, ach sa deireadh thiar dúinn nach bhfuil athrú ar bith luachanna de rud ar bith ag an bpointe seo, táimid cóip amháin x agus y síos. Agus feicimid go bhfuil x agus y anois 2 agus 1 in ionad 1 agus 2. Tá an babhtála chun báis go rathúil. Ceist 28. Má ghlactar leis go a thiocfaidh tú na teachtaireachtaí earráide thíos le linn uaireanta oifige an bhliain seo chugainn mar CA nó TF. Comhairle a chur ar conas a shocrú gach ceann de na hearráidí. Tagairt sin neamhshainithe do GetString. Cén fáth go dtiocfadh leat a fheiceáil seo? Bhuel, má tá mac léinn ag baint úsáide as GetString i n-cód, siad i gceart Hash áireamh cs50 ponc h a chur san áireamh an leabharlann cs50. Bhuel, cad a dhéanann siad Ní mór a shocrú an earráid seo? Caithfidh siad a dhéanamh lcs50 Fleasc ag an -orduithe nuair a bhíonn siad a thiomsú. Mar sin, más rud é nach bhfuil siad pas a fháil lcs50 Fleasc clang, tá siad gan dul go bhfuil an iarbhír cód go gcuireann GetString. Ceist 29. Hintuigthe dhearbhú fheidhm leabharlainne strlen. Bhuel sin anois, nach bhfuil siad rinneadh an hash cuí san áireamh. Sa chás áirithe seo, an comhad header is gá iad a chur san áireamh go bhfuil teaghrán ponc h, agus lena n-áirítear téad ponc h, anois an student-- anois an tiomsaitheoir Tá rochtain ar an dearbhuithe strlen, agus a fhios sé go bhfuil do chód strlen ag baint úsáide as i gceart. Ceist 30. Tuilleadh conversions faoin gcéad ná argóintí sonraí. Mar sin, cad é seo? Bhuel cuimhnigh go bhfuil na gcéad signs-- conas tá siad ábhartha printf. Mar sin, i printf bhféadfaimis percent-- d'fhéadfadh muid a phriontáil ar rud éigin cosúil gcéad cúlslais liom n. Nó d'fhéadfadh muid a phriontáil mhaith faoin gcéad i, spás, i gcéad, spás, faoin gcéad i. Mar sin, do gach ceann de na comharthaí faoin gcéad, ní mór dúinn chun pas a fháil athróg ag deireadh na printf. Mar sin, má deirimid paren printf faoin gcéad cúlslais liom paren n dhúnadh, go maith, deirimid go bhfuil muid dul i gcló slánuimhir, ach ansin ní féidir linn a pas a fháil printf slánuimhir a phriontáil ndáiríre. Mar sin, anseo níos mó faoin gcéad conversions ná argóintí sonraí? Sin á rá go bhfuil muid a bunch iomlán de percents, agus nach bhfuil againn go leor athróg a líonadh i ndáiríre sna percents. Agus ansin cinnte, d'ceist 31, cinnte caillte 40 bytes i gceann bloic. Mar sin, tá sé seo le earráid Valgrind. Tá sé seo ag rá go áit éigin i do chód, tá leithdháileadh atá 40 beart mór mar sin malloced tú 40 bytes, agus tú riamh a freed sé. Is dócha gá duit ach a fháil ar roinnt cuimhne sceite, agus teacht ar nuair is gá duit a saor in aisce ar an bloc de chuimhne. Agus ceist 32, scríobh neamhbhailí de mhéid 4. Arís tá sé seo le earráid Valgrind. Ní bhaineann sé seo a dhéanamh le leaks cuimhne anois. Tá sé seo, an chuid is mó likely-- Ciallaíonn mé, tá sé de chineál éigin ar chearta cuimhne neamhbhailí. Agus is dócha go bhfuil sé seo roinnt saghas Maolán thar maoil. Áit a bhfuil tú le sraith, b'fhéidir sraith slánuimhir, agus a ligean a rá go bhfuil sé de mhéid 5, agus tú iarracht a dhéanamh teagmháil lúibín eagar 5. Mar sin, má tá tú iarracht a scríobh chuig a luach, ní go píosa de chuimhne go bhfuil tú i ndáiríre rochtain a fháil, agus mar sin tá tú ag dul a fháil ar an earráid seo, ag rá scríobh neamhbhailí de mhéid 4. Valgrind ag dul a aithint go bhfuil tú ag iarraidh cuimhne chun teagmháil míchuí. Agus sin é do quiz0. Tá mé Rob Bowden, agus tá sé seo CS50.