[Seinm ceoil]
>> DAVID J. MALAN: Gach ceart.
Is é seo an CS50.
Agus is é seo an tús na seachtaine 5.
Agus mar a fhéadfadh a bheith agat faoi deara, cuid den ábhar
ag fáil beagán níos mó casta, an denser beag.
>> Agus tá sé an-éasca, go háirithe má atá tú a bhí sa nós le tamall,
a bheith ag iarraidh a Scribble síos an chuid is mó aon rud a dhéanann muid, tá muid ag rá sa rang.
Ach a bhaint amach, nach bhfuil b'fhéidir an gcur chuige oideolaíoch idéalach
chun foghlaim den chineál seo ábhar, agus ábhar níos ginearálta.
Agus mar sin tá áthas orainn a fhógairt go CS50 ar Gheng féin
Tá tús curtha Gong a ullmhú sraith Canonical de nótaí
don chúrsa, an dóchas a mbeidh, ar cheann, na
freastal, ní hamháin mar tagartha agus acmhainn
haghaidh ábhar a athbhreithniú agus ag dul ar ais trí ábhar a d'fhéadfadh a bheith
éalaigh tú an chéad uair timpeall, ach freisin ionas gur féidir le do cinnirí bheith níos
suas ná síos, nuair a sé Tagann an t-am chun léacht,
ionas go dtiocfadh leat a bheith páirteach níos thoughtfully, mar
i gcomparáid le níos scribbly.
>> Leis sin ráite, cad a gheobhaidh tú ar Is é an láithreán gréasáin doiciméid den sórt sin mar seo.
Agus fógra, ar chlé barr, níl Ní amháin go bhfuil an clár ábhair,
ach freisin cóid am go Beidh léim láithreach tú
leis an chuid iomchuí sa líne físeáin.
Agus cad Chang anseo atá déanta Tá, go bunúsach, a dhoiciméadú
an méid a tharla sa léacht ar leith.
Agus tá go leor de na léachtaí cheana féin ar líne anois leis an URL seo.
Agus beidh muid ag leanúint ar aghaidh go dtí an iar an chuid eile díobh siúd faoi dheireadh an tseachtain seo,
mar sin, ná leas a bhaint as an acmhainn sin.
>> Mar sin, gan a thuilleadh moille, thosaigh muid a craiceann ar ais
an ciseal a bhí teaghrán ar feadh tamaill.
Agus cad a rinne linn a rá ar shraith Tá i ndáiríre an tseachtain seo caite?
Réalta sin Char.
Agus réalta ruabhric, go maith, cad a raibh a chiallaíonn i ndáiríre?
Bhuel, ar fad an t-am seo, más rud é tá muid curtha ag glaoch feidhm,
cosúil le getString, agus a stóráil an tuairisceán sin ar a dtugtar
luach getString i variable-- tá sé ar a dtugtar
s cineál string-- tá muid ag scríobh an líne de chód suas ann thuas.
Agus tá sé ach amháin nuair a fheiceann mé mo peannaireacht magnified anseo
dhéanamh a bhaint amach mé díreach cé atrocious é seo.
>> Mar sin féin, a ligean ar glacadh leis go bhfuil, ar thaobh na láimhe deise
is é, mar sin féin, a réasúnta Léiriú cad
dul ar seo go léir am le getString.
getString, ar ndóigh, faigheann, ar shraith.
Ach cad a chiallaíonn i ndáiríre?
Ciallaíonn sé go bhfaigheann sé le smután de cuimhne as an córas oibriúcháin
trí ghlaoch feidhm, ar a dtugtar malloc.
Ach níos mó ar an níos déanaí.
Agus ansin populates sé go smután de chuimhne
leis na litreacha ag an úsáideoir clóscríofa i, agus ina dhiaidh, ar ndóigh,
carachtar nialasach, nó cúlslais nialas ag an deireadh an-.
>> Idir an dá linn, ar an thaobh na láimhe clé den scéal seo, am seo go léir,
tá muid dhearbhú athraitheach, ar nós s.
Agus is é sin an méid athróg anois Beidh tús a ghlaoch ar pointeoir.
Níl sé bosca taobh istigh de chuir muid ar an téad, Daven, per se,
ach chuir muid sa chearnóg bosca ar an taobh clé cad é go díreach?
Yeah?
>> LUCHT ÉISTEACHTA: D'fhéadfadh an seoladh ar áit a bhfuil sé suite i gcuimhne.
>> DAVID J. MALAN: Go díreach.
D'fhéadfadh an seoladh ar an áit Daven Tá sí suite i gcuimhne.
Agus ní i gcás gach ceann de Daven suite, per se, ach go háirithe an seoladh
ar cad é?
Yeah?
>> LUCHT ÉISTEACHTA: An chéad charachtar.
>> DAVID J. MALAN: an chéad charachtar i Daven, a, sa chás seo,
Proposed mé treallach agus ró 1, OX1,
rud ach ciallaíonn an líon heicsidheachúlach de 1.
Ach tá sé ag dul is dócha a bheith ina líon i bhfad níos mó
go bhféadfaimis a tharraingt le 0x mar réimír,
a léiríonn carachtar heicsidheachúlach.
Agus ós rud é nach mór dúinn a fhios áit an chuid eile de na carachtair de Daven
Tá, mar gheall ar cad a dhearadh simplí Rinneadh cinneadh go blianta fada ó shin?
Yeah?
>> LUCHT ÉISTEACHTA: Cúlslais 0.
DAVID J. MALAN: Yeah, go díreach.
Ceadaíonn an cúlslais 0 tú, cé gur i am líneach, a lean an teaghrán,
siúlóid ó chlé go deas, le haghaidh lúb, nó ar feadh tamaill
lúb, nó rud éigin mar sin, agus a chinneadh, ó, anseo
Is é an deireadh an teaghrán ar leith.
Mar sin, a bhfuil ach an seoladh ag tús an teaghrán,
is féidir linn rochtain a fháil ar an iomlán é, mar gheall ar fad le linn sin,
Tá ar shraith bhí díreach réalta Char.
>> Mar sin, tá sé cinnte fíneáil chun leanúint ar aghaidh ag baint úsáide as an leabharlann CS50 agus an astarraingt,
mar a déarfá, ach beidh muid ag tús a fheiceáil go díreach
cad atá ag dul ar thíos an-am ar fad.
Mar sin, is féidir leat a thabhairt chun cuimhne an sampla seo, freisin, ó uair dheireanach, i gcomparáid 0,
nach raibh a chur i gcomparáid i ndáiríre.
Ach thosaigh muid chun an fhadhb seo.
>> Ach mar b'fhéidir athnuachana, d'fhéadfadh mé suim duine éigin
i eilifint bándearg lá atá inniu ann, chomh maith déanta ag Chang?
Cad é faoi tú os? [Inaudible].
Teacht ar bun.
>> Agus idir an dá linn, mar a thagann tú suas, a ligean ar
mheas le haghaidh nóiméad ach cad Cuireadh cód seo a dhéanamh i ndáiríre.
Tá sé seo á dhearbhú dhá athróg suas barr, s agus t, agus ag glaoch getString.
Ní hé seo an clár atá éasca le húsáid an-, toisc nach bhfuil sé a insint duit cad atá le déanamh.
Ach a ligean ar glacadh leis go díreach go bhfuil muid ag díriú ar an chuid juicy.
Agus ansin a dhéanann muid, más ionann í ionann t, ba chóir é a rá printf,
chlóscríobh tú an rud céanna.
Dia duit.
Cad is ainm duit?
>> Janelle: Janelle.
DAVID J. MALAN: Janelle, Is deas liom bualadh leat.
Mar sin, le do dúshlán ag láimh don eilifint
Is é a tharraingt ar dtús dúinn pictiúr de cad á ionadaíocht sna chéad dhá
línte.
Mar sin, d'fhéadfadh s agus t a ionadaíocht ar conas ar an scáileán?
Agus is féidir leat a tharraingt ach é le do mhéar ar an scáileán mór.
>> Mar sin, níl dhá leath go gach taobh den chothromóid.
Mar sin, níl s ar thaobh na láimhe clé, agus ansin getString ar dheis.
Agus ansin níl t ar thaobh na láimhe clé, agus ansin getString ar dheis.
Mar sin, conas a d'fhéadfadh muid tús a chur ag tarraingt pictiúr a
Léiríonn cad atá ar siúl anseo i gcuimhne, ba mhaith leat a rá?
Agus lig dom a lig tú a mhíniú cad atá tú a dhéanamh mar a théann tú.
>> Janelle: OK.
Bhuel, ar an gcéad, go mbeadh sé a bheith ag iarraidh tú a fháil ar an teaghrán ionchur.
Agus bheadh ​​sé store-- OH, tá brón orainn.
DAVID J. MALAN: OK.
Dea.
Agus is é seo ar a dtugtar cad é?
Ó, ceart go leor.
Coinnigh ag dul.
Ní raibh mé chiallaíonn cur isteach.
Janelle: Tá brón orm.
Mar sin, bheadh ​​sé ionchur sé isteach Ní of-- an seoladh cinnte.
Ní féidir liom cuimhneamh go díreach ar an líon, ach creidim go raibh sé ag tosú le 0.
>> DAVID J. MALAN: Sin ceart go léir, mar rinne mé na huimhreacha ar bun,
mar sin níl aon freagra ceart.
>> Janelle: Ag tosú leis an 0 stua.
>> DAVID J. MALAN: OK, mar sin eilimint 0.
Cinnte.
>> Janelle: Agus ansin má bhí cosúil le ach dhá letter--
>> DAVID J. MALAN: OK, ar ais chugat.
>> Janelle: Mar sin eilimint 0, agus ansin eilimint 1 nó eilimint 2.
DAVID J. MALAN: Agus a píosa an pictiúr ag tarraingt ceart agat anois?
An glao a getString?
Nó an dearbhú s?
>> Janelle: an dearbhú d's, creidim.
Ó, an getString, toisc go mbeadh sé a ionchur isteach i ngach [? cheantar. ?]
>> DAVID J. MALAN: Maith.
Go díreach.
Cé sin go héifeachtach tuairisceáin eagar, cuimhne,
nuair a fhaigheann muid ar ais ar shraith, is féidir linn Innéacs isteach teaghrán ag baint úsáide as 01 agus 2.
Go teicniúil, is iad seo is dócha ionadaíocht ag seoltaí aonair,
ach sin fíneáil.
>> Mar sin, is dócha, más féidir liom ach go tapa ar aghaidh chuig nuair a d'fhág muid amach
uair dheireanach, más rud é ar cheann de na Bhí na teaghráin g a b e,
cúlslais 0, rud a ionadaíonn Gabe ar ionchur, conas a d'fhéadfaimis ionadaíocht s anois?
Más é seo an chuimhne go curtha ar ais ag getString?
>> Janelle: An mbeadh sé ionadaíocht ag stua?
>> DAVID J. MALAN: De réir stua?
Bhuel, uimh.
Ligean ach a rá, go pictiúrtha, lig dom dul díreach ar aghaidh
agus molfaidh sé go, más rud é go bhfuil an s, seo Is é an luach ar ais getString.
Agus tá tú tharraingt seo mar 0, 1, 2, a Is breá réasúnta, mar gheall orainn
Is féidir innéacs isteach sa teaghrán, mar shampla.
Ach ach a bheith ag teacht le uair dheireanach, lig dom dul ar aghaidh
agus molfaidh treallach go bhfuil an Tá suíomh 1, is é an seoladh 2,
tá an seoladh 3, agus mar sin de.
Agus mar sin, ach a bheith Super soiléir, tá cad ag dul
dul i mar thoradh ar an chéad líne de chód, ba mhaith leat a rá?
>> Janelle: Seoladh 1?
>> DAVID J. MALAN: Go díreach.
Mar sin, aghaidh a thabhairt ar 0x1.
Agus Idir an dá linn, lig dom dul ar aghaidh agus dúblach i bhfad ar an méid atá déanta agat
agus cuir mo T féin anseo.
Má bhí mé a cineál i Gabe arís, an dara huair,
nuair a spreag le getString, más rud é, ar ndóigh, tá Gabe dul chun dul?
Bhuel, presumably--
>> Janelle: Cosúil ar anseo?
DAVID J. MALAN: Yeah.
Janelle: Nó tá sé chomh maith sna boscaí céanna?
DAVID J. MALAN: Lig dom a mholadh, yeah, go díreach, mar sin sna boscaí breise.
Ach cad eochair anois is é sin, fiú amháin cé go bhfuil mé a tharraingt ar na gar go leor
together-- 0x1, seo Tá 0x2-- i ndáiríre,
D'fhéadfadh sé seo a bheith anois seoladh 0x10, mar shampla, agus 0x11, agus 0x12,
agus mar sin de.
Agus mar sin, más rud é go bhfuil an cás, cad atá ar siúl go dtí deireadh suas anseo in t?
>> Janelle: 0x10?
DAVID J. MALAN: Go díreach.
Mar sin, 0x10.
Agus mar sin anois, ceist deiridh.
Tá tú, le fada, bhí a bheith ag obair leis an deacra do eilifint go dtí seo.
Faoin am seo, má tá mé ag tarraingt suas an cód arís, nuair is féidir liom, ag teacht trí,
más ionann í ionann t, cad tá mé i ndáiríre Comparáid a dhéanamh go atá againn a tharraingt anseo?
>> Janelle: an dá seoltaí?
DAVID J. MALAN: Go díreach.
Mar sin, tá mé ag rá go bhfuil s ionann agus cothrom go t?
I bhfocail eile, tá, 1 is comhionann cothrom le 10?
Agus ar ndóigh, an Is é an freagra soiléir anois, uimh.
Agus mar sin is é an clár seo ar deireadh thiar dul i gcló cad, ba mhaith leat a rá?
>> Janelle: An mbeadh sé, chlóscríobh tú an rud céanna?
>> DAVID J. MALAN: Mar sin, más rud é s 1 agus t 10?
>> Janelle: chlóscríobh tú rudaí éagsúla.
>> DAVID J. MALAN: Go díreach.
Chlóscríobh tú rudaí éagsúla.
Gach ceart.
Mar sin, babhta de bualadh bos, más rud é go raibh muid ábalta, anseo.
[Bualadh bos]
Go raibh painful.
Tá a fhios agam.
Nicely déanta.
Mar sin anois a ligean ar a fheiceáil más rud é nach féidir linn tease seachas an méid a bhí an shocrú.
Agus ar ndóigh, nuair a seasta muid this-- a beidh mé ionadaíocht a dhéanamh anois i green--
rinne muid cúpla feabhsúchán anseo.
Gcéad dul síos, ach mar sanity sheiceáil, Tá mé ag seiceáil ar dtús
más ionann í agus Eolas faoin margadh saothair is ionann t null.
Agus díreach a bheith soiléir, nuair a d'fhéadfadh s nó t bheith Eolas faoin margadh saothair sa chód mar seo?
Nuair a d'fhéadfadh s nó t bheith null.
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: Go díreach.
Má tá an teaghrán go bhfuil an t-úsáideoir clóscríofa i go bhfuil ar bhealach ró-fhada
a d'oirfeadh i gcuimhne, nó cuid cás cúinne aisteach mar sin,
getString, mar beidh orainn a fheiceáil, literally lá atá inniu ann, ina doiciméadú,
deir beidh sé ar ais faoin margadh saothair mar luach fairtheora speisialta,
nó díreach saghas siombail speisialta go ciallaíonn rud éigin a chuaigh mícheart.
Mar sin, ba mhaith linn a sheiceáil le haghaidh go bhfuil, mar gheall ar casadh sé amach
is é sin null luach an-chontúirteach.
>> Go minic, má tá tú iarracht rud éigin a dhéanamh leis an Eolas faoin margadh saothair a raibh function-- rith sé
mar ionchur, chun instance-- an fheidhm sin D'fhéadfadh go mbeidh timpiste an-agus, leis,
a chur síos do chlár ar fad.
Mar sin, is é seo an tríú líne anois ach sanity sheiceáil, seiceáil earráid, más maith leat.
Sin nós maith anois le haghaidh linn a fháil i am ar bith againn
iarracht a úsáid le luach a D'fhéadfaí, d'fhéadfadh, a bheith null.
>> Anois, sa cheathrú líne anseo, "Má strcmp (s, t)," go maith,
cad é sin a thagraíonn do?
Bhuel, a dúirt muid go raibh sé seo an-gonta feidhm ainmnithe le haghaidh comparáide teaghrán.
Agus is é a chuspóir i saol a chur i gcomparáid a chéad argóint i gcoinne é an dara,
ach ní i dtéarmaí a seoltaí, mar a rinne muid unintentionally nóiméad
ó shin leis an gcód dearg, ach in áit chun comparáid a dhéanamh idir an dá
teaghráin sa iomasach humanly bhealach trí chomparáid sin, i gcoinne an,
i gcoinne seo, i gcoinne seo, agus ansin stopadh má bhíonn agus nuair a ceann
nó an dá mo mhéara amas cúlslais 0.
Strcmp Mar sin, bliain ó shin duine éigin i bhfeidhm a chur i bhfeidhm le linn an fheidhmiúlacht
go raibh súil againn ba mhaith linn a gotten ag díreach a chur i gcomparáid dhá luach simplí.
>> Anois, frankly, a choinneáil mé ag tarraingt gach ceann de na huimhreacha éagsúla.
Ach tá an réaltacht, Bainim a dhéanamh ar na suas an t-am ar fad.
Agus mar sin in iúl dom dul díreach ar aghaidh agus Scribble na amach
a dhéanamh pointe go bhfuil, ag an deireadh ar an lá agus ag bogadh ar aghaidh,
ní táimid ag dul i ndáiríre le cúram faoi cad seoltaí tá rudaí i ndáiríre
i gcuimhne.
Mar sin, níl mé ag dul a tharraingt ar na cineál na huimhreacha sin i bhfad níos mó,
Tá mé díreach tar achomaireacht seo ar shiúl le beagán níos cairdiúla le díreach saigheada.
>> I bhfocail eile, má tá s pointeoir, go maith, a ligean ar a tharraingt ach é, literally,
mar pointeoir, saighead dírithe as féin chun rud éigin eile,
agus bíodh imní ort iomarca níos mó faoi an minutia de na seoltaí
a, arís, rinne mé suas ar aon nós.
Ach beidh orainn a fheiceáil na seoltaí, uaireanta, nuair a debugging cód.
>> Anois, Idir an dá linn, an clár seo suas anseo Ceartúcháin, ar ndóigh,
go bhfuil fadhb trí chomparáid a dhéanamh dá teaghráin.
Ach bhí ar siúl againn i fadhb eile.
Bhí sé seo as an chóip cláir uair dheireanach,
trína, bhí mé ag iarraidh a Cás Uachtair ach an chéad charachtar i teaghrán.
Ach cad a bhí ar an symptom chonaic muid uair dheireanach a
úsáideoir clóscríofa i luach, ar nós Gabe i litreacha beaga, d's,
ansin sannadh muid s i t, mar atá sa tríú líne ann,
agus ansin rinne mé a leas a t lúibín 0?
Cad é an éifeacht athrú t lúibín 0 anseo?
>> LUCHT ÉISTEACHTA: D'athraigh sé saor.
>> DAVID J. MALAN: Yeah, Athraigh mé s, chomh maith.
Mar gheall ar an méid a bhí ag dul i ndáiríre ar?
Bhuel, lig dom féach an féidir liom a ghlanadh suas an pictiúr, mar seo a leanas.
>> Má tá s, arís, an focal g, a, b, e, cúlslais, 0, agus s
beidh muid ag leanúint ar líníocht mar bosca anseo, ach seoltaí nach mó.
A ligean ar stop rudaí a dhéanamh suas.
A ligean ar a tharraingt ach pictiúr a shimpliú ar fud an domhain.
>> Nuair Dearbhaím T le téad t, a chruthaíonn go bhfuil smután de chuimhne.
Cearnóg tharlaíonn a bheith 32 giotán i bhformhór na ríomhairí.
Go deimhin, má tá tú ag éisteacht riamh de ríomhaire a bhfuil ailtireacht 32-giotán,
i ndáiríre mhaisiúil-labhairt, go díreach ciallaíonn baineann sé úsáid seoltaí 32-giotán.
Agus mar teicniúla leataobh, má tá tú wondered riamh
cén fáth ríomhairí níos sine, má tá tú i ndáiríre iarracht anraith iad suas le go leor de RAM,
D'fhéadfadh go mbeadh ar a mhéad ach amháin de cheithre ghigibheart de RAM,
maith gur mar gheall ar, literally, D'fhéadfadh do ríomhaire d'aois amháin
áirítear mar hard 4 billiún, 4 billiún bytes,
mar gheall ar é go raibh ag baint úsáide as 32-giotán uimhreacha do seoltaí.
>> Ach in aon chás, sa Mar shampla, scéal i bhfad níos simplí.
Tá t ach pointeoir eile, nó i ndáiríre réalta ruabhric, aka teaghrán.
Agus conas is féidir Ba mhaith liom an pictiúr suas chun dáta anois leis an dara líne de chód,
tar éis an ponc, ponc, ponc?
Nuair is féidir liom teaghrán t ionann í Leathstad, conas a dhéanann an pictiúr a athrú?
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: Yeah.
Go díreach.
Chuir mé díreach tar saighead ó t bhosca ar an seoladh céanna,
an chéad litir céanna i thug.
Nó go teicniúil, más rud é seo Bhí Guy fós 0x1,
tá sé mar cé go raibh mé 0x1 anseo agus 0x1 anseo.
Ach arís, a cares faoi ​​na seoltaí?
Tá sé díreach an smaoineamh go bhfuil cúrsaí anois.
Mar sin, is é seo cad atá ag tarlú anseo.
Mar sin, ar ndóigh, má dhéanann tú lúibín t 0, a bhfuil nodaireacht eagar,
de course-- agus frankly, tá sé mar níl eagar thar anseo,
ach anois níl an rud aisteach.
Know go bhfuil an teanga cláir, C, cuireann tú an ghné seo,
trína, fiú amháin más rud é go t ar pointeoir, nó go bhfuil s pointeoir,
Is féidir leat é a úsáid go fóill go eolas, lúibín cearnach compordach
nodaireacht chun dul go dtí an chéad eilimint, nó an dara gné, nó aon eilimint
go bhfuil pointeoir dírithe a toisc, is dócha, tá sé
Tá, mar atá sa chás seo, ag cur in iúl ar roinnt eagar.
>> Mar sin, conas is féidir linn a shocrú seo?
Frankly, tá sé seo nuair a fuair sé beag mór ar an gcéad amharc.
Ach tá anseo leagan nua agus feabhsaithe.
>> Mar sin, an chéad, tá mé ag dul réidh leis an leabharlann CS50,
ach a nochtadh go s atá, go deimhin, réalta ruabhric, ach synonym.
Agus is t chomh maith le réalta Char.
Ach cad atá ar siúl ar an thaobh na láimhe deise den líne
áit a bhfuil t sannta luach?
>> Cad é malloc?
Cad é a strlen?
Cad é Is uimhir (Char)?
Cén fáth a dhéanann an heck seo breathnú ar líne chomh casta?
Cad é a dhéanamh ag leibhéal ard?
Cad a stóráil in t?
Yeah?
LUCHT ÉISTEACHTA: Tá sé seo leithdháileadh ar méid áirithe de spás chuimhne.
Tá sé a stóráil, buille faoi thuairim mé, litreacha [inaudible].
>> DAVID J. MALAN: foirfe.
Foirfe.
Tá sé seo leithroinnt áirithe méid spáis chuimhne
a stóráil, is dócha, litreacha sa todhchaí.
Agus go háirithe, malloc dá bhrí sin, ag filleadh cad é?
>> LUCHT ÉISTEACHTA: Ag filleadh ar an [inaudible]?
DAVID J. MALAN: Go díreach.
Ag filleadh ar an seoladh an chuimhne, a bhfuil ar bhealach mhaisiúil de rá,
tuairisceáin an seoladh an chéad bheart den chuimhne.
Tá sé de dhualgas orm a mheabhrú cé mhéad cuimhne mé i ndáiríre
leithdháileadh nó malloc iarrtar.
>> Anois, cé mhéad é sin?
Bhuel, cé níl a lán de na lúibíní anseo,
Bíonn malloc ach argóint amháin.
Agus tá mé ag sonrú strlen ar s, mar sin a thabhairt dom mar go leor beart mar tá i s,
ach cuir ceann.
Cén fáth?
Yeah?
>> LUCHT ÉISTEACHTA: An cúlslais 0.
DAVID J. MALAN: Go díreach.
Táimid agam a dhéanamh ar tí beag.
Mar sin, mar níl a cúlslais 0, ba mhaith linn a mheabhrú níos fearr go.
Seachas sin, táimid ag dul a chruthú ar shraith go
Níl go terminator speisialta.
>> Idir an dá linn, ach a bheith Super anal, tá mé Is uimhir (Char),
ach i gcás ritheann duine éigin mo cód nach bhfuil ar an fearas CS50,
ach b'fhéidir ar ríomhaire difriúil ar fad i gcás carachtair
Tá beart amháin, de réir an ghnáis, ach dhá bytes, nó rud éigin níos mó ná sin.
Tá sé ach a bheith Super, Super averse chun earráidí.
Cé go, i ndáiríre, tá sé is dócha ag dul a bheith ina 1.
>> Anois, Idir an dá linn, mé ag dul ar aghaidh agus a chóipeáil an teaghrán, lúibín t cothrom i lúibín t s.
Agus beidh mé ag a chur siar go dtí an tseachtain seo caite cód foinse a fheiceáil cad atá ar siúl.
Ach an takeaway eochair, agus an chúis Chuir mé an cód anois i glas,
mar gheall ar an líne an-seo caite, t lúibín 0 cothrom le cos,
Tá an éifeacht caipitliú a teaghrán?
t agus / nó s?
Go líne dheiridh cód.
>> Díreach t, ​​mar gheall ar cad tharla an am seo,
má tá mé Cealaigh beagán go chéim dheireanach, cad a tharla é sin, nuair a ghlaonn mé malloc,
Liom a fháil go bunúsach le smután de chuimhne go bhfuil an méid céanna leis an bunaidh,
mar gheall ar go bhfuil an uimhríocht a rinne mé.
Tá mé ag a stóráil in t an seoladh den smután de chuimhne.
Cé go Breathnaíonn sé seo deas agus go leor, deas agus bán,
Is é an réaltacht atá ann, an méid beidh orainn choinneáil ag glaoch, luachanna truflais i anseo.
D'fhéadfadh sin smután de chuimhne an- go maith a bheith in úsáid cheana,
cúpla soicind, cúpla nóiméad ó shin.
Mar sin, d'fhéadfadh a bheith ann go hiomlán uimhreacha nó litreacha ann, ach de thimpiste.
Ach nach bhfuil siad bailí, go dtí mé mé féin populate an smután de chuimhne
le carachtair iarbhír, mar atá mé dhéanamh gur le haghaidh lúb ann.
Gach ceart?
>> Mar sin anois, an climax de na trí shampla
go Bhí briste cosúil gcruthaíonn uair dheireanach, an sampla Babhtáil, an fheidhm seo
d'oibrigh sa chiall gur Mhalartaigh sé a agus b.
Ach ní raibh sé ag obair i cén chiall eile?
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: Go díreach.
Má bhí mé a ghlaoch an fheidhm seo as another-- mar shampla,
as feidhm mar is mó, i gcás ina Tá mé athraitheach, x agus y, mar atá mé
Rinne an tseachtain seo caite, cód céanna, agus pas mé in x agus y
a Babhtáil, agus ansin glaoch Swap-- seo, ar ndóigh, tá an leagan ceart
Tá an méid a tá muid ar tí é a see-- ní raibh sé ag obair.
Mar sin, cad é an shocrú?
>> Bhuel, mar sin ach a bheith soiléir, lig dom dul ar aghaidh
and-- a thabhairt dom ceann an dara anseo, agus féach más féidir liom a thaispeáint duit an ceann deireanach, a
Beidh in-- ligean ar a fheiceáil más féidir liom teacht ar seo OK fast-- fíor, [inaudible].
OK, tá sé.
Mar sin, neamhaird a dhéanamh ar orduithe mé ag clóscríobh díreach.
Ba mhaith liom é a fháil ar an nóiméad deireanach, mar shampla
ó uair dheireanach, a ar a dtugtar anois aon Babhtáil.
>> Mar sin, níl aon Babhtáil áit D'fhág muid amach uair dheireanach,
trína, túsaithe mé x go 1 agus y go 2.
Mé glaoch ansin Babhtáil, ag dul i 1 agus 2.
Agus ansin an fheidhm seo d'oibrigh sé i roinnt chiall,
ach ní raibh aon buan bhfeidhm ar x agus y.
Mar sin, tá an cheist ar láimh, conas anois dhéanaimid a shocrú an fhadhb seo i ndáiríre?
Cad é an réiteach ar láimh?
>> Bhuel, i swap.c, atá nua lá atá inniu ann, faoi ​​deara cúpla difríochtaí.
Is iad x agus y an gcéanna.
Ach cad é go soiléir éagsúla faoi líne 25?
Cad atá nua ann, más cuimhin leat cad a d'fhéach sé cosúil le dara ó shin?
>> LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: Yeah.
Mar sin, tá na ampersands píosa nua comhréire, ní hamháin sa chlár seo,
ach freisin níos ginearálta i CS50.
Go dtí seo, ní dóigh liom go againn le feiceáil ar aon samplaí
nó i ndáiríre Labhair mar gheall orthu in aon mion, seachas, b'fhéidir, preemptively
in alt, ar ampersand mar seo.
Bhuel, casadh sé amach go bhfuil ampersand amháin de na píosaí deiridh de chomhréir nua
táimid ag dul a fhoghlaim.
Gach ciallaíonn sé go bhfuil an seoladh ar roinnt athróg.
Cén seoladh dhéanann x beo?
Ach cad seoladh dhéanann y chónaí?
Toisc más rud é an fhadhb bhunúsach roimh
raibh x agus y a bhí á chur ar aghaidh cóipeanna díobh, cad ba mhaith linn i ndáiríre a dhéanamh
Tá fáil Babhtáil le nós stór léarscáil sin mar thoradh ar áit a bhfuil x agus y iarbhír
i RAM, ionas go Is féidir le Babhtáil leanúint go léarscáil
agus téigh go dtí cibé áit x nó y marcanna an bhfód agus athrú ar na luachanna iarbhír 1 agus 2
ann.
>> Mar sin, ní mór Babhtáil a athrú beagán freisin.
Agus ar an gcéad amharc, d'fhéadfadh seo Is cosúil go cosúil leis beag a réalta Char.
Agus go deimhin, tá sé.
Mar sin, tá súil le pointeoir a cén cineál na sonraí, bunaithe ar an chuid suntais?
Mar sin, tá sé slánuimhir.
>> Mar sin, tá a thuilleadh slánuimhir, tá sé an seoladh ar slánuimhir.
Agus mar an gcéanna, tá b ag dul anois a bheith ar an seoladh ar slánuimhir.
Mar sin, nuair a ghlaonn mé anois Babhtáil ó Main, Níl mé ag dul Babhtáil 1 agus 2 a thabhairt.
Tá mé ag dul a thabhairt dó mar Damh-rud éigin agus damh-rud éigin,
dhá seoltaí a bheidh mar thoradh Babhtáil ar a suíomhanna iarbhír
i gcuimhne ar mo ríomhaire.
>> Mar sin anois, mo cur chun feidhme atá fágtha Ní mór a athrú ar tad.
Cad is léir difriúil anois sna trí líne de chód?
Níl na réaltaí diabhal go léir ar fud na háite, ceart go leor?
Mar sin, cad atá ar siúl anseo?
Yeah?
>> LUCHT ÉISTEACHTA: Tá sé ar ndóigh [inaudible].
>> DAVID J. MALAN: Go díreach.
Mar sin, sa context--, agus ní raibh sé seo an cinneadh dearadh is fearr, admittedly,
bliain ó shin.
Sa chomhthéacs seo, i gcás ina tá tú díreach le réalta,
agus nach bhfuil tú i ndáil le cineál sonraí, cosúil le slánuimhir, díreach ar an taobh clé,
ina ionad sin go bhfuil tú comhartha comhionann, go soiléir, sa chomhthéacs sin, nuair a deir tú réalta ar,
ciallaíonn sin téigh go dtí an suíomh go bhfuil i.
Lean an léarscáil taisce, mar a déarfá.
>> Agus Idir an dá linn, ag teacht 37, ciallaíonn sé an rud céanna.
Téigh go dtí an seoladh ar, agus a chur ar cad atá ann?
Cibé rud a bhfuil ag an suíomh a shonraíonn b.
I bhfocail eile, téigh go dtí b.
Faigh an luach.
Téigh go dtí a agus, de réir an comhionann shíniú, an t-oibreoir sannadh,
a chur ar an luach sin ann.
>> Mar an gcéanna, tá teocht o ach slánuimhir.
Ní dhéanfaidh aon ní mór a athrú faoi teocht.
Tá sé ach gloine spártha ó Annenberg do roinnt bainne nó sú oráiste.
Ach gá dom a rá, téigh go dtí b.
Téigh go dtí go ceann scríbe agus a chur ar an luach i teocht ann.
Mar sin, cad atá ag tarlú ansin?
Nuair a ghlaonn mé i ndáiríre Babhtáil an am seo, más rud é anseo is ionann an chéad tráidire seo Main,
léiríonn sé seo an dara tráidire Babhtáil, nuair Pas mé ampersand x agus y ampersand
ó Main go Babhtáil, ach a bheith soiléir, cad é an chairn fráma fháil?
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
DAVID J. MALAN: Go díreach.
D'fhéadfadh an seoladh x agus an seoladh y.
Agus is féidir leat smaoineamh ar na cosúil le seoltaí poist.
33 Sráid Oxford agus 35 Sráid Oxford, agus tú
ag iarraidh a bogadh an dhá fhoirgneamh atá ag na suímh.
>> Tá sé saghas smaoineamh ridiculous, ach sin go léir i gceist againn le seoladh.
Cén áit sa domhan is féidir leat teacht ar na dhá ints?
Cén áit sa domhan is féidir leat teacht ar na dhá fhoirgneamh?
Mar sin, más rud é ar deireadh, tar éis go léir an t-am seo mé dul i lae inniu cód foinse agus a chur le chéile
Babhtáil agus a reáchtáil ./swap, ar deireadh, do na chéad uair a dhéanann muid a fheiceáil i ndáiríre go
Tá mo chuid luachanna deimhin curtha Mhalartaigh go rathúil.
Agus anois, is féidir linn a ghlacadh fiú nóta de seo, a rá, gdb.
>> Mar sin, lig dom dul isteach sa chomhad céanna.
Lig dom dul ar aghaidh agus gdb an ./swap reáchtáil.
Agus anois, i Babhtáil, tá mé ag dul chun dul ar aghaidh agus a shocrú le pointe sos i Príomhleathanach.
Agus anois tá mé ag dul chun dul amach romhainn agus a reáchtáil ar an gclár.
Agus anois a fheicimid mo cód shos ag an líne.
>> Má théim ar aghaidh agus a phriontáil x, cad ba chóir dom a fheiceáil anseo?
Tá sé ceist.
Abair arís?
>> LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: Mar sin, uimhreacha randamacha, b'fhéidir.
B'fhéidir a fháil t-ádh orm, agus tá sé deas agus simplí, cosúil le 0.
Ach b'fhéidir go bhfuil sé roinnt uimhir randamach.
Sa chás seo, fuair mé an t-ádh.
A tharlaíonn sé ach a bheith 0.
Ach tá sé go deimhin Ádh mór, mar ní go dtí mé
cineál seo chugainn agus ansin tá cló x go líne de chód, líne 19, curtha chun báis.
>> Idir an dá linn, más rud é mé cineál seo chugainn arís, agus anois a phriontáil amach y, tá mé ag dul a fheiceáil 2.
Anois, más rud é mé cineál seo chugainn, tá sé ag dul go dtí fháil mearbhall beag, mar anois,
Is é an t printf ag dul a bheith ar an scáileán, mar a rinne sé. Tá x 1.
>> A ligean ar é seo a dhéanamh arís.
Agus anois, a anseo i gcás ina rudaí a fháil suimiúil.
Sula Glaoim Babhtáil nó fiú céim isteach ann, a ligean ar ghlacadh peek beag.
Tá x, arís, 1.
Is é Y, ar ndóigh, sanity tapaidh sheiceáil, 2, mar sin ní crua ann.
Ach cad é ampersand x?
Freagair, tá sé ag lorg chineál ar funky.
Ach tá an réalta slánuimhir i lúibíní díreach Is bealach OTI ar a rá seo seoladh.
Níl sé ina slánuimhir, tá sé ina pointeoir le o, nó ar shlí eile mar sheoladh.
>> Cad é an rud dÚsachtach?
Riamh tá muid le feiceáil rud éigin go leor mar sin roimhe seo.
Mar sin, is é seo an seoladh i mo ríomhaire gcuimhne nuair a tharlaíonn x chun maireachtáil.
Tá sé damh-rud éigin.
Agus is é sin, frankly, cén fáth Thosaigh mé saigheada a tharraingt,
in ionad na n-uimhreacha, mar gheall ar a cares i ndáiríre
go bhfuil do slánuimhir ar leith seoladh sin go mór.
Ach bffff0c4, is iad seo go léir go deimhin digití heicsidheachúlach,
a bhfuil 0 trí f.
>> Mar sin, ní táimid ag dul ar lár freisin fada ar cad iad na rudaí.
Ach má phriontáil mé amach y, ar ndóigh, féach mé 2.
Ach y ampersand, féach mé an seoladh.
Agus fógra, do na aisteach, cé chomh fada agus atá óna chéile x agus y?
Is féidir leat neamhaird a dhéanamh ar an chuid is mó ar an seoladh.
Ceithre bytes.
Agus sin ag teacht lenár níos luaithe éileamh go cé chomh mór is slánuimhir?
Ceithre bytes.
Mar sin, tá sé cosúil le gach rud ar líneáil suas nicely, d'fhéadfadh mar tá súil agat, i gcuimhne.
>> Mar sin anois, a ligean ach go tapa ar aghaidh go dtí deireadh an scéil.
A ligean ar dul ar aghaidh agus clóscríobh ar chéim, chun Léim isteach ar an bhfeidhm Babhtáil.
Anois, faoi deara, más rud é go cineál mé, tá sé comhionann leis an seoladh an x.
Má chlóscríobhann mé b, tá sé comhionann chuig an seoladh y.
Mar sin, cad ba chóir dom a fheiceáil má mé rá, téigh go dtí an seoladh seo a?
Mar sin, a phriontáil réalta a.
Mar sin, ciallaíonn réalta dul ann, sa chomhthéacs seo.
Ciallaíonn ampersand cad é an seoladh ar.
Mar sin, réalta mhodh 1.
Agus tugann réalta cló b dom 2.
>> Agus lig dom a glacadh leis, le haghaidh na huaire, go bhfuil ar a laghad, an cód sin
fáltais a fhorghníomhú anois is féidir a bheith réasúnaithe trí i ar an mbealach sin.
Ach beidh muid ag chaitheamh ar an smaoineamh seo roimh i bhfad.
Mar sin, an leagan seo den Babhtáil Is ceart anois agus is féidir
dúinn a mhalartú ar an gcineál sonraí a leith.
>> Mar sin, aon cheist ansin ar Babhtáil?
Ar réalta?
Ar seoladh an?
Agus beidh tú a fheiceáil, a bhfuil fhadhb atá leagtha 4, saghas,
ach fadhb a leagtar 5, cinnte, conas na Tá rudaí úsáideacha agus a fháil i bhfad níos mó
compordach leo, mar thoradh air.
Rud ar bith ar chor ar bith?
Gach ceart.
Mar sin, tá malloc, arís, an fheidhm seo go leithdháiltear ach chuimhne, cuimhne
leithdháileadh.
Agus cén fáth go bhfuil seo úsáideach?
Bhuel, ar fad an t-am seo, atá tú ag baint úsáide as malloc.
Má mheasann tú anois conas oibreacha getString, is dócha, tá sé
á cur ceiste ar dhuine ar feadh smután de chuimhne, ag am ar bith ar na cineálacha úsáideoir teaghrán
i, mar gheall orainn cinnte Ní raibh a fhios, mar bhaill foirne CS50,
cé chomh mór leis na teaghráin sin duine teacht ag dul le cineál a d'fhéadfadh a bheith.
>> Mar sin a ligean, don chéad uair, tús a chur chun craiceann ar ais conas a oibríonn an leabharlann CS50,
trí cúpla samplaí a bheidh mar thoradh againn ann.
Mar sin, má osclaíonn mé suas gedit agus oscailt suas scanf 0,
táimid ag dul a fheiceáil ar an cód seo a leanas.
Scanf 0, atá ar fáil ar an láithreán gréasáin le haghaidh lá atá inniu ann, tá línte réasúnta beag de chód
anseo, 14 tríd 20.
Agus a ligean ar a fheiceáil cad é a dhéanamh.
Dearbhaíonn sé slánuimhir, ar a dtugtar x.
Deir sé rud éigin cosúil le, líon le do thoil.
Agus anois, a deir sé, scanf% i, & x.
Mar sin, níl a bunch de rudaí nua ann.
>> Ach scanf, is féidir leat de chineál ar smaoineamh ar de réir mar an os coinne na printf.
printf, ar ndóigh, priontaí ar an scáileán.
saghas scanf na scanadh as an úsáideora rud méarchlár bhfuil sé nó sí a chlóscríobh.
>> Tá% i díreach cosúil le printf.
Ciallaíonn sé seo ag súil leis an úsáideoir a chlóscríobh ar slánuimhir.
Agus anois, cén fáth a cheapann tú liom d'fhéadfadh a bheith ag dul scanf & x?
Má tá an cuspóir i saol na scanf Tá rud éigin a fháil ón úsáideoir,
cad é an bhrí rith sé, agus x, anois?
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
DAVID J. MALAN: Go díreach.
Cibé mé, an duine, cineál i, mo ionchur ag dul a shábháil ag an suíomh sin.
Níl sé go leor, chun cuimhne, go díreach pas a fháil in x, mar atá feicthe againn cheana féin,
am ar bith a théann tú ach athróg amh, cosúil le slánuimhir, a fheidhm éigin eile,
cinnte, is féidir é a athrú go athraitheach, ach ní buan.
Ní féidir é a bhfuil tionchar acu ar Príomhleathanach.
Is féidir é a athrú ach a chóip áitiúil féin.
Ach más rud é, ina ionad sin, ní gá duit a thabhairt dom o 'iarbhír,
ach a thabhairt duit dom treoracha chun go slánuimhir, mé anois, a bheith scanf,
surely, is féidir liom a leanúint go aghaidh a thabhairt agus a chur ar roinnt ann
ionas go mbeidh tú rochtain air chomh maith.
>> Mar sin, nuair a ritheann mé an clár seo, a ligean ar a fheiceáil.
Déan scanf 0 ponc Slais, scanf 0.
Agus má tá mé cineál anois ar roinnt cosúil le 50, a bhuíochas do na 50.
Má tá mé cineál anois ar roinnt mhaith diúltach 1, do na diúltach 1.
I chlóscríobh anois ar roinnt mhaith 1.5, hm.
Cén fáth go raibh mo chlár neamhaird a dhéanamh dom?
Bhuel, mar gheall ar go simplí, dúirt mé é a bheith ag súil le slánuimhir amháin.
Gach ceart.
Mar sin, go bhfuil leagan amháin de seo.
A ligean ar rudaí a chur suas notch agus mholadh go nach bhfuil sé seo go maith.
Agus luíonn anseo sampla an-simplí den chaoi ar féidir linn tús cód scríbhinn
gur féidir le daoine eile leas a bhaint as, nó comhréiteach ag déanamh rudaí dona.
Mar sin, líne 16, mar sin den chineál céanna i spiorad le roimh,
ach níl mé a dhearbhú go slánuimhir an am seo.
Tá mé ag á dhearbhú é a réalta ruabhric, aka teaghrán.
>> Ach cad a chiallaíonn i ndáiríre?
Mar sin, más rud é nach féidir liom a shonrú address-- agus Tá mé ag iarraidh é treallach, Maolán,
ach d'fhéadfadh mé glaoch sé, a bheith simple-- agus ansin is féidir liom seo, a mhíniú dom,
más d'fhéadfaí tú, atá bunaithe ar an mbliain roimhe sin loighic, an méid atá á dhéanamh scanf i líne 18,
más rud é pas% s agus Maolán, atá ina seoladh?
Cad é scanf, má dhéanann tú iarratas ar an loighic chéanna cruinn mar an leagan 0,
ag dul chun iarracht a dhéanamh anseo, nuair a an rud cineálacha úsáideoir i?
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: Go díreach.
Scanf, ag an loighic níos luaithe, ag dul a chur ar an teaghrán
go bhfuil an clóscríofa daonna in-- tá sé anois ar shraith,
nach bhfuil sé a PO, is dócha, má tá sé nó sí cooperates--
agus tá sé ag dul chun iarracht a dhéanamh a chur go teaghrán i gcuimhne ag cibé seoladh
Sonraíonn Maolán.
Agus é seo go hiontach, mar gheall ar Maolán Tá i gceist go deimhin a bheith ina seoladh.
>> Ach éileamh go bhfuil an clár Buggy i ar bhealach an-tromchúiseach, mar gheall ar cad é luach
Maolán mar réamhshocrú?
Cad a initialized mé isteach?
Cén smután de chuimhne?
Nach bhfuil mé, ceart?
>> Mar sin, cé mé a leithdháileadh mé réalta char go bhfuil a thuilleadh ar a dtugtar s,
sé ar a dtugtar ionad sin, buffer-- sin a ligean ar a tharraingt ainm an athróg a
anois is buffer-- más rud é nach bhfuil mé ar a dtugtar getString nó malloc anseo,
ciallaíonn sin go héifeachtach go Tá an maolán ach roinnt luach truflais.
>> Anois, cad a chiallaíonn?
Ciallaíonn sé go bhfuil mé in iúl scanf bheith ag súil le teaghrán ón úsáideoir.
Agus tá a fhios agat cad é?
Cibé tá sé an rud atá dírithe to-- agus a tharraingt mé comhartha ceiste,
ach i ndáiríre, tá sé ag dul a bheith rud éigin cosúil le OX1, 2, 3, ceart?
Tá sé roinnt luach bréagach go díreach tharlaíonn a bheith ann ó roimh.
Mar sin, a chur ar bhealach eile, tá sé mar cé go bhfuil Maolán ach
dírithe ar rud éigin i gcuimhne.
Tá mé aon smaoineamh cad.
>> Mar sin, más rud é go cineál mé i Gabe anois, tá sé ag dul chun iarracht a dhéanamh a chur g-a-b-e / 0 ann.
Ach a bhfuil aithne aige cad é sin?
Agus san am atá caite, ar aon am againn iarracht chun teagmháil
cuimhne nach mbaineann le linn, tá cad a tharla?
Nó beagnach gach uair.
Locht deighilt, ceart?
>> Seo arrow, tá mé aon smaoineamh áit a bhfuil sé dírithe. tá sé ach roinnt luach randamach.
Agus ar ndóigh, má tá tú a léirmhíniú luach randamach mar sheoladh,
bhfuil tú ag dul chun dul go dtí roinnt ceann scríbe randamach.
Mar sin, d'fhéadfadh Gabe go deimhin tuairteála mo chlár sa chás seo anseo.
>> Mar sin, cad is féidir linn a dhéanamh go bhfuil beagnach chomh dona?
Smaoinigh ar seo an tríú agus Sampla breá de scanf.
Tá an leagan seo níos fearr i cén chiall?
Má tá tú compordach leis an fadhb roimhe, is é seo níos fearr.
Cén fáth?
>> LUCHT ÉISTEACHTA: [inaudible].
DAVID J. MALAN: Maith.
Mar sin, an cás seo de líne 16 Is fearr, sa chiall
go bhfuil muid go sainráite leithdháileadh roinnt chuimhne.
Ní Táimid ag baint úsáide as malloc, táimid ag baint úsáide as an seachtain 2
cur chuige díreach a dhearbhú eagar.
Agus tá muid a dúirt roimh an teaghrán ach le sraith de charachtair,
mar sin tá sé seo go hiomlán dlisteanach.
Ach tá sé, ar ndóigh, mar a tú faoi deara, méid seasta, 16.
>> Mar sin, tá an clár seo go hiomlán sábháilte, más rud é go cineál mé
i teaghráin carachtar amháin, dhá charachtar teaghráin, 15 teaghráin carachtar.
Ach chomh luath agus a thosaíonn mé ag clóscríobh 16, 17, 18, 1000 teaghráin carachtar,
áit a bhfuil go teaghrán ag dul go dtí deireadh suas?
Tá sé seo ag dul go dtí deireadh suas go páirteach anseo.
Ach ansin a fhios cad eile é thar na teorainneacha
ar an eagar ar leith?
>> Tá sé mar cé tá mé dhearbhú 16 boscaí anseo.
Mar sin, seachas a tharraingt amach gach 16, beidh muid ag ach ligean go bhfuil mé a tharraingt 16.
Ach má tá mé iarracht ansin a léamh ar shraith go i bhfad níos faide, cosúil le 50 carachtair,
Tá mé ag dul chun tús a chur a, b, c, d, x, y, z.
Agus tá sé seo is dócha roinnt deighleog cuimhne eile
sin, arís d'fhéadfadh, faoi deara mo chlár a tuairteála,
toisc nach bhfuil mé d'iarr rud ar bith níos mó ná 16 bytes.
>> Mar sin, a cares?
Bhuel, tá anseo an leabharlann CS50.
Agus is é an chuid is mó de seo ach cosúil le treoracha suas barr.
An leabharlann CS50, am seo go léir, Bhí an líne seo ag teacht 52.
Againn atá le feiceáil typedef, nó feicfidh tú typedef
i pset 4, a chruthaíonn ach synonym inar féidir réalta char a bheith níos
ach dá ngairtear teaghrán.
Mar sin, tá sé seo ar cheann de na rothaí oiliúna beag
táimid Bainim úsáid rúnda thíos an cochall.
>> Idir an dá linn, tá anseo an fheidhm, getchar.
Anois, is cosúil, níl aon chomhlacht dó.
Agus go deimhin, más rud é go mé a choinneáil scrollaigh, ní féidir liom i ndáiríre
a fheiceáil ar bith implementations de na feidhmeanna seo.
Mar seiceáil sanity, cén fáth go bhfuil sin?
>> LUCHT ÉISTEACHTA: [inaudible].
DAVID J. MALAN: Yeah.
Mar sin, is é seo an comhad header.
Agus go bhfuil comhaid header fréamhshamhlacha, móide roinnt rudaí eile, is cosúil,
cosúil typedefs.
Ach i CS50.c, ina tá muid riamh thug tú thar barr amach,
ach bhí sé i an fearas CS50 go léir an am seo, go domhain istigh ar a fillteáin,
faoi ​​deara go bhfuil ina n-iomláine bunch feidhmeanna i anseo.
>> Go deimhin, a ligean ar scrollú síos.
A ligean ar neamhaird a dhéanamh an chuid is mó acu, le haghaidh anois.
Ach scrollaigh síos go dtí getInt agus a fheiceáil conas a oibríonn getInt.
Mar sin, tá anseo getInt.
Agus más rud é riamh cúram tú i ndáiríre conas a fháil Oibríonn o, anseo is é a doiciméadú.
Agus i measc na rudaí deir sé go bhfuil a insíonn sé leat
cad iad na raonta luachanna is féidir a sheoladh ar ais.
Tá sé go bunúsach diúltach 2 billiún go dearfach 2 billiún, a thabhairt nó a thógáil.
>> Agus casadh sé amach, seo go léir am, cé go riamh tá muid
Bhí tú ag seiceáil ar sé, má théann rud éigin mícheart,
tharlaíonn sé go raibh gach an am seo, tá getInt
curtha ar ais ar leith tairiseach, ní null,
ach int_max, a bhfuil ach Ríomhchláraitheoir ar choinbhinsiún.
Ciallaíonn sé anseo tá súil le luach speisialta.
Bí cinnte a sheiceáil le haghaidh seo, ach i gcás théann rud éigin mícheart.
Ach ní tá muid bothered leis sin go dtí seo,
mar gheall ar arís, atá i gceist a shimpliú.
>> Ach conas a dhéanann getInt fháil i bhfeidhm?
Bhuel, ceann amháin, a thógann sé aon argóintí.
Tá a fhios againn go.
Tuairisceáin sé slánuimhir.
Tá a fhios againn go.
Mar sin, conas a oibríonn sé faoi bhun an cochall?
>> Mar sin, tá an teorainn ann cosúil lúb, ar a laghad, an chuma ar amháin.
Fógra go bhfuil muid ag baint úsáide as getString.
Mar sin tá go suimiúil. getInt glaonna ár bhfeidhm féin, getString.
Agus anois cén fáth a d'fhéadfadh sé seo a bheith ar an cás?
Cén fáth a bhfuil mé a bheith cosanta anseo ag teacht 165?
Cad a d'fhéadfadh tarlú ag teacht 164, ach a bheith soiléir?
Tá sé an freagra céanna is a bhíodh.
D'fhéadfadh a bheith díreach amach as an chuimhne.
Théann rud éigin cearr leis getString, tá muid fuair a bheith in ann a láimhseáil go.
Agus an chúis nach féidir liom a thabhairt ar ais go bhfuil Eolas faoin margadh saothair sin, go teicniúil, is nialasach pointeoir.
getInt Tá a thabhairt ar ais ar slánuimhir.
Mar sin, Tá mé treallach Chinn, go bunúsach,
go 2 billiún, a thabhairt nó a thógáil, ag dul a bheith ina luach speisialta riamh is féidir liom
a fháil iarbhír ón úsáideoir.
Tá sé ach an luach amháin Tá mé ag dul le dramhaíl chun ionadaíocht a dhéanamh ar cód earráid.
>> Mar sin anois, a fháil rudaí mhaisiúil beag.
Agus nach bhfuil sé go maith leis an fheidhm chéanna mar a rinneadh cheana, ach tá sé an-chosúil.
Mar sin, faoi deara, Dearbhaím anseo, ag teacht 172, araon o n agus Char c.
Agus ansin a úsáid mé an líne funky, sscanf, a casadh sé amach
Ní scanadh ar shraith ón méarchlár.
Seasann sé teaghrán atá ann cheana féin a Tá an t-úsáideoir clóscríofa cheana féin.
Mar sin, d'iarr mé cheana getString, a Ciallaíonn Tá mé ar shraith i gcuimhne.
Tá sscanf cad gur mhaith leat glaoch feidhm parsáil.
Féachann sí ar an téad Tá mé clóscríofa i, carachtar le carachtar,
agus a dhéanann rud éigin úsáideach.
Tá an teaghrán stóráilte ag teacht.
Agus tá a fhios agam go bhfuil ach amháin ag dul ar ais go dtí anseo agus ag rá, ó, OK,
Iarr mé é ní í an am seo, ach líne.
>> Agus anois tá sé seo le beagán difriúil.
Ach ciallaíonn sé seo go héifeachtach, ar chúiseanna beidh muid ag tonn beagán ár lámha ag an lae inniu,
go bhfuil muid ag seiceáil go fheiceáil má chlóscríobh an t-úsáideoir in
agus slánuimhir agus b'fhéidir charachtar eile.
Má tá an t-úsáideoir clóscríofa i slánuimhir, tá sé ag dul a stóráil i n, mar go bhfuil mé
a rith seo ag seoladh, an cleas nua againn le feiceáil sa lá atá inniu.
Má tá an t-úsáideoir clóscríofa freisin i 123x mhaith, x sin
ag dul go dtí deireadh suas le litir i c carachtar.
>> Anois, tharlaíonn sé go raibh sscanf Beidh inis dom, intelligently,
cé mhéad athróg a bhí sscanf go rathúil in ann a líonadh.
Mar sin, ag an loighic, más rud é an fheidhm Tá mé ag cur chun feidhme á getInt,
ach tá mé ag seiceáil, d'fhéadfadh a bheith, don úsáideoir
a bheith clóscríofa i slánuimhir le leanúint ag rud éigin eile,
cad a dhéanann mé ag iarraidh sscanf s luach ar ais go fírinneach a bheith?
Más é an cuspóir a fháil ach o ón úsáideoir?
>> Mar sin, má sscanf tuairisceáin 2, cad a chiallaíonn?
An t-úsáideoir clóscríofa i rud éigin cosúil le, literally,
123x, a bhfuil ach nonsense.
Tá sé an coinníoll earráid, agus Ba mhaith liom a sheiceáil le haghaidh sin.
>> Mar sin, má tá na cineálacha úsáideoir seo, ag loighic, cad a dhéanann sscanf ar ais,
ba mhaith leat a rá?
Mar sin, tá sé ag dul a thabhairt ar ais 2, mar gheall ar an 123 ag dul chun dul i anseo,
agus is é an x ​​ag dul go dtí deireadh suas i anseo.
Ach níl mé ag iarraidh an x ​​a fháil líonadh.
Ba mhaith liom a sscanf chun cinn ach amháin i líonadh an chéad cheann dá athróg.
Agus mar sin tá sin an fáth mé mhaith sscanf ar ais 1.
>> Agus má tá sé seo le beagán níos mó ná an ceann le haghaidh na huaire, go hiomlán fíneáil.
Realize, áfach, go bhfuil ceann de na luachanna getInt agus getString
is é go bhfuil muid ag déanamh heck de a lán de na earráid a sheiceáil mar seo mar sin
go bhfuil, go dtí seo, is féidir leat go leor i bhfad cineál rud ar bith ar do mhéarchlár,
agus beidh muid ag teacht air.
Agus muid cinnte, an fhoireann déanamh, cinnte nach
a bheith ar an fhoinse fabht i do Clár, toisc go bhfuil muid defensively
seiceáil do gach ceann de na dúr rudaí a d'fhéadfadh d'úsáideoir a dhéanamh,
cosúil le clóscríobh teaghrán, nuair bhí tú i ndáiríre slánuimhir.
Mar sin, do now-- beidh muid ag teacht ar ais go dtí seo sula long--
ach go léir an t-am sin, getString agus getInt tá
curtha faoi bhun an cochall baint úsáide as an smaoineamh bhunúsach de seoltaí de chuimhne.
>> Mar sin anois, a ligean ar rudaí a dhéanamh beag níos so-úsáidte.
Mar is féidir leat a thabhairt chun cuimhne, ó Binky seo caite time-- más rud é go mbeidh mo luch cooperate-- sin
bhí againn an cód, a frankly é, go cothrom nonsensical.
Baineann an cód seo aon rud úsáideach, ach bhí sé ar an sampla
go ollamh Parlante a úsáidtear chun ionadaíocht a
cad a bhí ar siúl i Clár a bhaineann le cuimhne.
>> Mar sin, a ligean ar a athinsint seo scéal go hachomair Super.
Tá na chéad dá líne, i Béarla, a dhéanann cad, ba mhaith leat a rá?
Díreach i réasúnta an duine, ach beagán téarmaí teicniúla, a chur le stab.
LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: OK, tá tú ag bunú seoltaí do do x agus athróga y.
Ní leor, mar gheall ar x agus y nach bhfuil athróg sa chiall thraidisiúnta.
Is iad x agus y seoltaí nó a stóráil seoladh.
Mar sin, a ligean ar iarracht seo níos mó uair amháin.
Gan tús olc, cé.
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
DAVID J. MALAN: Maith.
Sílim go bhfuil níos glaine beag.
Ag dearbhú dhá leideanna, dhá slánuimhreacha.
Agus tá muid ag iarraidh iad x agus y.
Nó más rud é go raibh muid a tharraingt seo mar pictiúr, arís,
cuimhne go leor ach go bhfuil gach táimid ag déanamh leis an chéad líne
Is ag tarraingt bosca mar seo, le roinnt luach truflais ann,
agus ag iarraidh é x, agus ansin bosca eile mar seo,
le roinnt luach truflais ann, ag iarraidh é y.
Táimid tar éis a dhearbhú dhá leideanna go deireadh thiar
Beidh stóráil an seoladh ar slánuimhir.
Mar sin tá go léir ann.
>> Mar sin, nuair a rinne Binky seo, an cré d'fhéach sé díreach mar seo.
Agus Nick díreach de chineál ar fillte suas na saigheada,
mar cé nach bhfuil siad ag cur in iúl in áit ar bith go háirithe, toisc go bhfuil siad díreach
Luachanna truflais.
Ní bhíonn siad ag initialized go sainráite áit ar bith ach go háirithe.
>> Anois, an chéad líne eile de cód, cuimhne, ba é seo.
Mar sin, i réasúnta éasca le húsáid, ach Béarla beagán teicniúil,
cad é an líne seo de chód a dhéanamh?
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible].
>> DAVID J. MALAN: foirfe.
Tá sé ag leithdháileadh ar smután de na cuimhne go bhfuil an méid de d'o.
Agus sin leath an freagra.
Fhreagair an ceart agat leath den abairt.
Cad atá ag tarlú ar an taobh na láimhe clé an comhartha comhionann?
Yeah?
LUCHT ÉISTEACHTA: Agus sannaithe sé leis an x ​​athróg?
>> DAVID J. MALAN: Agus sannaithe sé leis an x ​​athróg.
Mar sin, chun recap, leithdháileann thaobh na láimhe deise leor cuimhne a stóráil ar slánuimhir.
Ach malloc go sonrach Filleann an seoladh
den smután de chuimhne, a atá tú molta ach faigheann stóráil in x.
>> Mar sin, cad a rinne Nick uair dheireanach le Binky é dragged sé go pointeoir amach, an cré,
a chur in iúl anois ag smután bán de chuimhne is é sin comhionann leis an méid ar slánuimhir.
Agus go deimhin, tá go bhfágfadh chun ionadaíocht a dhéanamh ar cheithre bytes.
>> Anois, an chéad líne eile de chód raibh seo, faigheann réalta x 42.
Mar sin, tá 42 simplí ar an thaobh na láimhe deise, bhrí na beatha.
Taobh Clé-láimh, ciallaíonn réalta x cad é?
D'fhéadfadh sin a bheith ró-gone-- go ceart go leor.
OK.
>> LUCHT ÉISTEACHTA: Go bunúsach, téigh go dtí an [inaudible]
DAVID J. MALAN: Maith.
LUCHT ÉISTEACHTA: [inaudible].
DAVID J. MALAN: Go díreach.
Ciallaíonn taobh clé téigh go dtí x.
Tá x seoladh.
Tá sé cosúil le 33 Sráid Oxford, nó OX1.
Agus ciallaíonn réalta x téigh go dtí sin aghaidh a thabhairt agus a chur ar cad atá ann?
42.
>> Mar sin, go deimhin, go díreach an rud a rinne Nick.
Thosaigh sé le trí, go bunúsach, meabhrach
ag cur in iúl a finger ag x, tar éis an arrow
go dtí an bosca bán ar an láimh dheis taobh, agus a chur ar an uimhir 42 ann.
Ach ansin fuair rudaí a beag contúirteach, ceart?
Binky ar tí é a chailleadh a cheann.
>> Star y ionann 13, droch-luck, ciallaíonn cad é?
Mar sin, ciallaíonn réalta y téigh go dtí an seoladh ar y.
Ach cad é an seoladh ar y?
Gach ceart, tá sé luach truflais, ceart?
Tharraing mé é mar comhartha ceiste.
Tharraing Nick sé mar arrow cuachta suas.
Agus chomh luath agus a iarracht tú a dhéanamh y réalta, ag rá dul ann,
ach nach bhfuil dlisteanach suíomh, tá sé roinnt suíomh bréagach,
Tá an clár ag dul a tuairteála.
Agus is é ceann Binky ag dul a eitilt amach anseo, mar a rinne sé.
>> Mar sin, sa deireadh, an clár seo bhí díreach locht amach cothrom.
Bhí sé clár Buggy.
Agus is gá é a bheith seasta.
Agus an t-aon bhealach, i ndáiríre, a dheisiú bheadh, mar shampla, an líne seo,
rud nach raibh againn a fháil fiú do, mar gheall ar crashed an clár ró-luath.
Ach má bhí muid a shocrú seo, cén dhéanann éifeacht ag déanamh go bhfuil x cothrom y?
Bhuel, pointí sé go bunúsach y ag cibé luach x Tá dírithe ar.
>> Mar sin, i scéal Nick s, nó scéal Binky ar, an dá
x agus y a bhí dírithe ar an smután bán de chuimhne,
ionas go mbeidh, ar deireadh, nuair a dhéanann tú a dhéanamh réalta y ionann 13 arís,
deireadh tú suas a chur 13 i an suíomh cuí.
Mar sin, tá gach ceann de na línte breá dlisteanach, ach amháin i gcás an gceann seo,
nuair a tharla sé roimh tú sannadh iarbhír y roinnt luach.
>> Anois, buíochas le Dia, ní gá duit a chúis trí gach
de na cineálacha saincheisteanna ar do chuid féin.
Lig dom dul ar aghaidh agus a oscailt suas fuinneog críochfort anseo
agus a oscailt suas, ar feadh nóiméad ach, clár Super gearr go
chomh maith go bhfuil saghas pointless.
Tá sé gránna.
Ní chuireann sé aon rud úsáideach a bhaint amach.
Ach a dhéanann sé le saincheisteanna a léiriú de chuimhne, mar sin a ligean ar ghlacadh le breathnú.
>> Príomh, Super simplí.
Iarrann sé cosúil feidhm, f, agus ansin ar ais 0.
Tá sé de chineál ar deacair a praiseach suas seo.
Mar sin, tá Príomh maith go leor, go dtí seo.
>> Mar sin, tá f fadhbanna.
Agus ní raibh a chur i bhfad iarracht isteach a ainmniú é
anseo, a choinneáil ar an fócas ar an cód.
f Tá dhá líne.
Agus a ligean ar a fheiceáil cad atá ar siúl anois ar.
Mar sin, ar an taobh amháin here-- agus lig dom a dhéanamh
seo ag teacht leis an roimhe sin example-- ar an taobh amháin,
Is é an taobh na láimhe clé ag déanamh an méid, i mBéarla?
Is-- sé
LUCHT ÉISTEACHTA: Ag cruthú pointeoir.
DAVID J. MALAN: Ag cruthú pointeoir le slánuimhir agus ag glaoch x sé.
Mar sin, tá sé a chruthú ar cheann de na boscaí Coinneoidh mé ag tarraingt ar an scáileán tadhaill.
Agus anois, ar an láimh dheis taobh, malloc, ar ndóigh,
Tá leithdháileadh le smután de chuimhne.
Agus díreach a bheith soiléir, conas a Tá cuimhne i bhfad é cosúil
leithdháileadh, má tá tú díreach tar de chineál ar dhéanamh ar an mata anseo?
>> Mar sin, tá sé 40 bytes.
Agus tá a fhios agam go bhfuil ach amháin mar tá a fhios agam ar o, ar an fearas CS50, ar a laghad,
Tá ceithre bytes.
Tá 40 Mar sin, 10 uair 4.
Mar sin, tá sé seo a stóráil ar x, an seoladh an chéad as 40 ints a
a leithdháileadh spás ar ais, ar ais, ar ais, go dtí ar ais.
>> Agus sin cad eochair faoi malloc.
Ní chuireann sé a ghlacadh cuimhne beag anseo, beag anseo, beag anseo.
Tugann sé tú smután amháin de chuimhne, contiguously, as an oibriúcháin
chórais.
>> Anois, cad faoi seo, x lúibín 10 cothrom le 0?
Líne treallach de chód.
Ní chuireann sé aon rud úsáideach a bhaint amach.
Ach tá sé suimiúil, mar gheall ar x lúibín 10--?
Yeah?
>> LUCHT ÉISTEACHTA: [inaudible]?
>> DAVID J. MALAN: x lúibín Níl 10 a bheith null.
Tagann an mion null amháin i spraoi le teaghráin, ag deireadh an teaghrán.
Ach a shíl go maith.
>> Cé chomh mór is atá an eagar, fiú cé atá leithdháilte agam 40 bytes?
Tá sé 0 trí naoi, ceart?
Tá sé 10 ints, san iomlán.
40 bytes, ach 10 ints, innéacsaithe 0 trí 0.
>> Mar sin, cad é go bhfuil x lúibín 10?
Tá sé i ndáiríre ar roinnt luach truflais anaithnid.
Tá sé cuimhne nach a bhaineann le dom.
Níor chóir dom a bheith touching go Uimhir 41, 42, 43, 44 beart.
Tá mé ag dul beagán i bhfad ró.
>> Agus go deimhin, má ritheann liom seo clár, d'fhéadfadh sé tuairteála go han-mhaith.
Ach uaireanta, beidh orainn a fháil t-ádh.
Agus mar sin ach a léiriú this-- agus frankly,
tú riamh a fhios agat roimh duit dhéanann it-- ligean ar seo a reáchtáil.
Ní raibh sé tuairteála i ndáiríre.
>> Ach má athraíonn mé seo, le haghaidh Mar shampla, a bheith cosúil 1,000,
chun seo a dhéanamh i ndáiríre d'aon ghnó, a ligean ar a fheiceáil
más féidir linn a fháil a tuairteála an am seo.
OK, ní raibh sé tuairteála.
Cad é faoi 100,000?
A ligean ar remake é, agus anois rerun air.
OK.
Phew.
Gach ceart.
Mar sin, is cosúil, arís, leis na codanna de chuimhne, mar a déarfá,
atá réasúnta mór, mar sin is féidir linn a fháil t-ádh arís agus arís eile.
Ach sa deireadh, a luaithe a gheobhaidh tú ridiculous agus i ndáiríre théann i bhfad amach ar an scáileán,
tú teagmháil cuimhne go i ndáiríre, nach gur mbaineann a thabhairt duit.
>> Ach frankly, na cineálacha bugs ag dul
a bheith níos deacra agus níos deacra chun an figiúr amach ar do chuid féin.
Ach buíochas le Dia, mar ríomhchláraitheoirí, ní mór dúinn uirlisí a ligfidh dúinn a dhéanamh dúinn.
Mar sin, tá sé seo, b'fhéidir, ar cheann de na cláir ugliest,
fiú níos uglier ná aschur gdb s.
Ach tá sé i gcónaí ar líne nó dhá atá Super úsáideach.
>> Is Valgrind clár a chuidíonn Ní debug tú clár, per se,
ach a aimsiú cuimhne a bhaineann fadhbanna, go háirithe.
Beidh sé ar siúl go huathoibríoch do cód le haghaidh tú, agus táim ar feadh ar a laghad dhá rud.
Amháin, a rinne tú rud éigin a thaisme cosúil le cuimhne dteagmháil
Ní raibh a bhaineann le leat?
Beidh sé cabhrú leat teacht ar na cásanna sin.
>> Agus dhá, beidh sé cabhrú fhaigheann tú rud ar a dtugtar
leaks cuimhne, a bhfuil againn go hiomlán neamhaird, naively,
ar feadh tamaill agus blissfully.
Ach casadh sé amach, go léir an uair seo, aon uair a
atá tú a dtugtar getString i an oiread sin dár gclár,
bhfuil tú ag iarraidh ar an oibriúcháin córas chun cuimhne,
ach tá aon chuimhne thabhairt i gcónaí é
ar ais, ag déanamh unalloc, nó saor in aisce, mar tá sé ar a dtugtar.
Níl, mar ní tá muid iarr tú é sin a dhéanamh.
>> Ach go léir an t-am seo, na cláir atá tú a scríobh i C
tar éis sceitheadh ​​cuimhne, ag iarraidh ar an oibriúcháin
córas níos mó agus níos mó cuimhne do teaghráin agus whatnot,
riamh ach fuair tú ar ais.
Agus anois tá sé seo le beagán de oversimplification,
ach má tá tú riamh a reáchtáil ar do Mac nó do ríomhaire ar feadh go leor roinnt ama, a oscailt
go leor de na cláir, b'fhéidir cláir a dhúnadh,
agus cé do Nach bhfuil ríomhaire crashed,
tá sé ag éirí i bhfad níos moille, mar cé go bhfuil sé i ndáiríre
ag baint úsáide as a lán de na cuimhne nó acmhainní, cé,
más rud é nach bhfuil tú fiú touching an méarchlár,
d'fhéadfadh a be-- ach nach bhféadfaí always-- a bheith go bhfuil na cláir a bhfuil tú ag rith
iad féin leaks cuimhne.
Agus a choimeád siad ag iarraidh ar an OS ar feadh níos mó agus cuimhne níos mó, ach dearmad faoi,
nach n-úsáideann ndáiríre é, ach dá bhrí sin, ag cur cuimhne ar shiúl
ó chláir eile a d'fhéadfadh gur mhaith é.
Mar sin, go bhfuil míniú coiteann.
Anois tá anseo nuair a Valgrind ar Tá aschur go hiomlán
atrocious dóibh siúd is lú agus níos araon compordach.
Ach an suimiúil Tá stuif ceart suas anseo.
Tá sé ag insint dom scríobh neamhbhailí Tarlaíonn méid ceathrar sa chlár,
go háirithe, ar líne 21 de memory.c.
>> Má théim go dtí an líne 21, hm, go deimhin Is scríobh neamhbhailí de mhéid cheithre.
Cén fáth méid ceathair?
Bhuel, seo number-- agus é a D'fhéadfadh a bheith anything-- is slánuimhir.
Mar sin, tá sé ceithre bytes.
Mar sin, tá mé ag cur ceithre bytes i gcás nach bhfuil siad mbaineann.
Sin an méid Valgrind Tá ag insint dom i ndáiríre.
Thairis sin, beidh sé chomh maith inis dom, mar beidh orainn a fheiceáil,
mar a ritheann tú é seo i pset amach anseo, más rud é, agus nuair atá tú cuimhne, a go deimhin leaked
Tá mé, mar tá mé ar a dtugtar malloc, ach nach bhfuil mé i ndáiríre
a thugtar air, sa chás seo, saor in aisce, a beidh orainn a fheiceáil sa deireadh
Is é an os coinne na malloc.
>> Mar sin anois, dar liom, sampla deiridh.
Mar sin, tá an ceann seo beagán níos mó arcane, ach tá sé b'fhéidir
an chúis is mó a a bheith cúramach le cuimhne,
agus ar an gcúis go leor de na cláir agus / nó freastalaithe gréasáin, fiú ar an lá,
Tá tógtha ar láimh ag guys dona áit éigin ar an idirlíon a bhfuil ar bhealach
sheoladh paicéid bréagach ar do fhreastalaí ag iarraidh a chomhréiteach do chuntais,
nó a ghlacadh do shonraí, nó díreach ginearálta a ghlacadh ar láimh meaisín.
Mhaoláin thar maoil, mar an Tugann an t-ainm, ciallaíonn
ag cur thar maoil nach slánuimhir, ach maolán.
Agus is é maolán ach ar bhealach mhaisiúil a rá tá sé a bunch de chuimhne.
>> Agus go deimhin, d'iarr mé ar shraith roimh Maolán, in ionad í.
Toisc má tá sé ina Maolán, cosúil sa chiall YouTube,
nó aon uair a bhfuil tú ag breathnú ar fhíseán, a bheadh ​​agat le feiceáil ar an focal buffering,
ponc, ponc, ponc.
Tá sé thar a bheith annoying.
Agus ciallaíonn sin go díreach go bhfuil do imreoir físeán
ag iarraidh a íoslódáil go leor na bearta, go leor de na bearta
ó físeán ón idirlíon.
Ach tá sé mall, mar sin tá sé ag iarraidh a íoslódáil a bunch acu
a líonadh maolán, coimeádán, ionas go mbeidh Tá go leor beart agat gur féidir é sin
léiríonn tú an físeán, gan stad i gcónaí.
Ach casadh sé amach, is féidir leat Tá maolán a ghabhann leis an mór.
Ach iarracht a chur ar sonraí seo i bhfad i sé, agus an-is féidir rudaí olc a tharlóidh.
Mar sin, mar shampla, a ligean ar breathnú ar an teaser deiridh shampla.
Tá an clár eile sin, ag an gcéad amharc,
Níl aon ní Super úsáideach a dhéanamh.
Baineann sé le Fuair ​​Príomh fheidhm go bhfuil gá an fheidhm sin, f.
Agus an fheidhm sin, f, suas anseo, tá sraith ruabhric, ar a dtugtar c, de mhéid 12.
Agus ansin tá sé ag baint úsáide as an feidhm nua ar a dtugtar strncpy.
>> Tharlaíonn sé go raibh, leis an simplí, líne simplí de chód, ach dhá líne,
ní mór dúinn a mo chlár ar fad, agus dá bhrí sin, mo ríomhaire ar fad,
agus mo chuntas úsáideora, agus mo crua tiomáint d'fhéadfadh a bheith i mbaol do dhuine ar bith
a bhfuil aithne aige agus tá sé maith go leor chun a reáchtáil an clár seo le líne ordaithe áirithe
argóint.
I bhfocail eile, má tá an Guy dona cuireann taobh istigh de argvargv [1] ag clóscríobh
ag an méarchlár an-speisialta crafted teaghrán, ní abc, 123, ach go bunúsach,
siombailí dénártha a léiríonn inrite cód, clár a scríobh sé nó sí,
leis an gclár seo simplí, a bhfuil ionadaíoch ar na mílte de chláir
atá leochaileach mar an gcéanna, daresay, sé nó is féidir léi a scriosadh deireadh thiar go léir
na comhaid ar mo tiomáint crua, a fháil blinking pras ionas gur féidir leis nó léi
orduithe cineál ar a gcuid féin, gach comhad ríomhphost go féin.
Rud ar bith is féidir liom a dhéanamh, sé nó is féidir léi a dhéanamh leis an gcód seo.
>> Ní bheidh muid a réiteach go leor seo go fóill.
Agus go deimhin, tá sé ag dul go dtí gceist pictiúr beag
mar seo, a beidh muid ag teacht go luath a thuiscint go léir an níos fearr.
Ach do lá atá inniu ann, a ligean ar deireadh ar an cad, tá súil againn, a beagán níos mó
intuigthe XKCD joke, go dtí go n-atosóidh muid an chéad uair eile.
Gach ceart.
Féach tú ar an gCéadaoin.
>> [Seinm ceoil]
>> Cainteoir: Agus anois, go domhain smaointe, ag Daven Farnham.
Tá Cuimhne cosúil le léim isteach i gcarn de duilleoga órga ar tráthnóna Dé Domhnaigh.
Ghaoth ag séideadh, tossing ar do hair-- OH, fada liom uaim na laethanta when--
>> [Gáire]