[Powered by Google Translate] DAVID J. MALAN: Ceart go leor, is é seo CS50, agus seo é an tús na seachtaine a dó. Go raibh maith agat. Lig dúinn tús a chur anseo le glaoch teileafóin. Tá mé ar tí é a dhiailiú 617-FABHT-CS50. CS50: Tá sé seo CS50. Chun Boy Shuttle, brúigh 1. Chun tús a chur os a chionn, brúigh 9. DAVID J. MALAN: Mar sin, dúirt sé le haghaidh Boy Shuttle, brúigh 1. Mar sin, táimid ag dul i gcló 1. CS50: Cad é do thionscnamh? Chun quad, brúigh 1. Mather, brúigh 2. Boylston, preas 3. Lamont, brúigh 4. Bhallstáit Hall, preas 5. Chun tús a chur os a chionn, brúigh 0. DAVID J. MALAN: Beidh muid brúigh 1 le haghaidh quad. CS50: fágann tointeála Aghaidh an nóiméad an-ag 1:10 PM, agus ansin ag 01:20, 01:30, 01:40. Is é seo an CS50. DAVID J. MALAN: Mar sin, tá an guth CS50 ar. Agus tá sé ina shampla de na cineálacha tionscadal deiridh, le haghaidh Mar shampla, is féidir leat bite uaire i dtreo deireadh an tseimeastair. Mar shampla ann, go shuttleboy.cs50.net - iarbhír tionscadal gur scríobh mé an chéad tar éis CS51 ar ais nuair a bhí mé fochéime. Agus bhí an inspioráid anseo ar ais ansin, bhí gach a bhí acu Ba é an gcló sceidil bus tointeála, agus níl aon coincheap de rudaí ag breathnú suas ar líne. Agus mar sin mé saghas chol in aon deireadh seachtaine, a dhoirteadh tríd an clóite sceideal, agus Leagan sé le clár ríomhaire. Ag an am, a tharla an clár ríomhaire a bheith scríofa i C. Agus bhí ar siúl tú i ndáiríre é ag Boy Shuttle clóscríobh ag caochadh leid mhaith tá muid ag déanamh go dtí seo. Ach thar na blianta, tá sé tagtha i ar an toirt teachtaireachtaí bot. Tá sé tagtha chun cinn le déanaí i suíomh gréasáin seo, isteach i SMS-bhunaithe uirlis, chomh maith le i an uirlis guth-bhunaithe. Agus é seo chun leid ar an cineál rudaí gur féidir leat a dhéanamh duit féin trí seimeastar deireadh na bliana. Mar shampla, tá a tharlaíonn, an leagan SMS Boy Shuttle chun feidhmiú mar seo a leanas. Más rud é, ar do ghuthán cille, a sheolann tú teachtaireacht téacs go 41,411 agus ansin a sheoladh chuig an sboy siombail speisialta, mar Boy Shuttle, Is le leanúint ag A agus B, i gcás gurb é an bunús agus B ceann scríbe - mar shampla, Boylston Spás Quad - cad ba cheart duit a fháil ar ais laistigh de chúpla soicind téacs teachtaireacht ó Boy Shuttle insint duit go díreach nuair a Tá eiteáin amach romhainn, ón bpointe A ag dul chuig an pointe B. Agus é seo sampla níos ginearálta ar cad atá ar a dtugtar ag baint úsáide as API. Mar sin, mar shampla, is é seo anseo ach shuttleboy.cs50.net, an iarbhír bunaithe ar an ngréasán incarnation seo. Ach na sonraí go bhfuil béim ar apps seo agus eile a CS50 Tá forbairt faoi bhagairt go léir do gach duine anseo i bhfoirm APIs, Comhéadain cláir iarratas. Agus sin ach ar bhealach mhaisiúil de rá gur mhaith le daoine againn ar an Idirlíon agus daoine eile a chaith roinnt ama a chruthú bogearraí gur féidir leat é a úsáid chun sonraí a grab ó dúinn agus ansin a thógáil do iarratas féin ar an mbarr den tacar sonraí. Mar sin, mar shampla, an Shuttle leathanach API Boy anseo, a tharlaíonn a bheith sa lámhleabhar CS50, go bunúsach doiciméid conas is féidir leat dul faoi ag iarraidh ar CS50 freastalaithe le haghaidh sonraí. Mar shampla, má tá tú eolach ar CSV comhad, le camóga scartha luachanna, is iad seo ach saghas tapaidh agus salach Excel-mhaith comhaid. Mar sin, is féidir leat a iarraidh Boy Shuttle do gach ceann de na sonraí ar gach ceann de na tithe agus a gcuid comhordanáidí GPS, agus beidh tú a fháil ar ar ais, go bunúsach, scarbhileog mar sin go is féidir leat léamh ansin isteach i gclár de do chuid féin agus ansin torthaí a ghiniúint, ar nós Boy Shuttle féin tharlaíonn a bheith ag déanamh. Dóibh siúd níos mó eolas, níos nua-aimseartha uiríll sonraí I measc JSON, Nodaireacht Réad JavaScript. Beidh rud éigin i dteagmháil leat i dtreo deireadh an tseimeastair. Ach arís, tá sé seo ach ceann amháin de roinnt de APIs féin CS50 ar. Agus is é an rud is spreagúla anois, na laethanta, Facebook agus Twitter agus Google agus go leor i bhfad gach suíomh gréasáin tóir amach ann go bhfuil de chineál éigin API, rud a chiallaíonn má léigh tú an doiciméadú ar a láithreán gréasáin, tá tú clárú le haghaidh áireamh, is féidir leat tosú ansin a scríobh bogearraí ar bharr is cuma cad uirlisí nó sonraí cuideachta sin ar fáil ann. Agus mar sin ar ár comhaltaí teagaisc féin le cúpla bliain ar ais Scríobh leagan Mac de seo. Mar sin, ag an nasc dar teideal Mac anseo ag barr ar clé, is féidir leat i ndáiríre íoslódáil Mac OS widget a ritheann ar do Mac féin a dhéanamh ar an cineálacha céanna na rudaí. Mar sin, tá sé ar fad faoi thógáil ar bharr tacair sonraí mar seo. Ach níos mó ar an dtreo deireadh an tseimeastair. Mar sin a ligean ar Léim i tapa fíor a bug, ach a fháil de chineál ar rudaí a théamh suas lá atá inniu ann, agus smaoineamh ar ais ar roinnt de na rudaí a d'fhéachamar ar an tseachtain seo caite. Go háirithe, lig dom dul ar aghaidh agus tarraingt suas, a rá, sampla seo anseo. Buggy1.c, is é seo ar fáil ar an gcúrsa ar shuíomh gréasáin más rud é gur mhaith leat Is maith chun é a íoslódáil agus breathnú thart duit féin. Ach a ligean ar súmáil isteach anseo ag an gclár seo go cothrom gearr, agus gan ach recap Super-tapa ar roinnt de na bloic tógála bhunúsach ar fáil a againn i ndáiríre ag dul chun tús a chur díreach a ghlacadh chun a dheonaítear. Mar sin, an stuif gorm, i línte 1 trí 9, a bhfuil ach ceisteanna softball. Mar sin, is iad seo ach tuairimí. Tá siad aon bhrí feidhme. Ach tá siad tuairimí sa chiall go bhfuil siad faoi deara gur Dearbhaímse, an duine, arna dhéanamh chun mé féin ionas gur i léacht agus tar éis léacht, is féidir liom cuimhneamh i ndáiríre cad a gclár seo Ní gan a bheith a léamh tríd líne ar líne agus athchruthú stair i mo intinn. Thairis sin, má tá mé an clár seo ar láimh don duine éigin eile cosúil le tú, tá sé i bhfad níos soiléire a thabhairt duit, mar gheall ar tuairimí mar seo, cad an clár a dhéanamh i ndáiríre, nó ar a laghad an méid an clár ceaptha a bheith á dhéanamh. Cibé acu atá nó nach bhfuil sé ceart ábhar eile ar fad. Anois, i C, le il-líne tuairimí, cuimhne gur ar líne tá sé ar cheann anseo an tsiombail draíochta, / *. Ciallaíonn sé anseo a thagann an tús a comment. Agus nithe rud ar bith eile go dtí go sroicheann tú an deireadh terminator, a bhfuil * /, os coinne. Mar sin, ar an bhfíric go bhfuil mé 80-roinnt réaltaí corr anseo ó chlé go deas i ndáiríre ach mion aeistéitiúil. Tá sé aon bhrí feidhme. Anois, conas mar gheall ar líne 11? Cad a dhéanann seo a dhéanamh i layman théarmaí? Cad é sin? Áirítear leis an gcaighdeán: LUCHT ÉISTEACHTA. DAVID J. MALAN: OK, maith. Mar sin, áiríonn sé an leabharlann stdio.h. Mar sin, cad a chiallaíonn? Bhuel, taobh istigh go comhad, tá stdio.h, a bunch iomlán de dearbhuithe fheidhm - is é sin, cód a scríobh duine éigin eile. Agus sampla foirfe feidhm a s dhearbhú i stdio.h é - a is fearr leat ag anois? Mar sin, printf, ar cheann de na cinn is coitianta a úsáid, cinnte go luath, is ón leabharlann ann. Má eisiamh go líne de chód, tá clang ag dul a yell ag dom rud éigin faoi úsáid a bhaint as siombail neamhdhearbhaithe. Rud neamhdhearbhaithe dócha go bhfuil an eochairfhocal, mar gheall ar Ní mór dúinn in iúl don tiomsaitheoir cad Breathnaíonn printf Is maith mura áireamh againn an líne sin. Agus níos mó síos go dtí na Cruinne, i ndáiríre, is éard atá an líne ag rá oscailt suas go comhad, stdio.h, cibé áit a bhfuil sé ar an fhreastalaí tiomáint crua, nó an fearas tiomáint crua, agus cóip-greamaigh sé ceart ann i mo chomhad, gan mo bhfuil a dhéanamh sin de láimh. Anois, nuair a fhaigheann muid síos anseo chun an mó, roimh i bhfad beidh muid tús a chur chuimil amach cad slánuimhir agus cad é neamhní. Ach do anois, a ligean ar breathnú ar na trí líne laistigh de 15 tríd 17. Seo anseo éileamh mé mar Buggy. Deir Líne 7 i mo chuid tuairimí chóir "taispeáin 10 asterisks ach ní. "Cén fáth sin ná taispeáin, i ndáiríre, 10 réaltaí den sórt sin? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: díreach. Mar sin, faoi deara go bhfuil muid ag tosú a chomhaireamh ó 0. Agus é seo i ndáiríre coinbhinsiún i gcláir agus eolaíocht ríomhaireachta níos ginearálta, ag tosú a chomhaireamh ó 0 in ionad 1. Agus tagann i ndáiríre ach as an bhfíric go bhfuil, le haghaidh Mar shampla, nuair a bhí againn ocht daoine suas ar an stáitse, nuair a aon duine a bhí ag tógáil a lámh, bhí siad gach nialais go héifeachtach. Agus mar sin tá sé ach de chineál ar choinbhinsiún ríomhaire sin, Dá bhrí sin, chun tús a chur comhaireamh ó 0. Má tá go bhfuil an líon is ísle is féidir leat a léiriú i dénártha. Mar sin anseo tá muid tús initializing mé 0. Táimid tar éis a leagtar cothrom mé 0. Ach ansin a rinne mé botún seo anseo, ag rá go bhfuil mé níos lú ná nó comhionann le 10. Ach má cheapann tú go tríd, má thosaíonn mé ag 0 agus ansin mé ag dul suas go dtí 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, tá mé ag dul iarbhír a phriontáil amach 11 réaltaí ar an scáileán, mar tá mé imithe suas go dtí agus cothrom le 10. Dá bhrí sin tá an shocrú éasca anseo ansin cad? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Díreach é a athrú go dtí níos lú ná. Más mian leat, is féidir leat é seo a dhéanamh. Ach go ginearálta, tá go frowned. Agus is é sin ag tosú a chomhaireamh ó 0 ach rud éigin ba chóir duit fháil a úsáidtear de ghnáth chun. Anois, cad faoi seo thógáil ar fad i agus de féin? Seo 15 líne demarks a d'lúb. Mar sin, nach bhfuil do feidhm. Tá sé ach ráiteas. Is thógáil looping, cosúil le chonaic muid i Scratch. Agus tá sé trí chuid. Fógra go bhfuil an chéad chuid le na láimhe clé den leathstad. Níl an chuid lár i idir an dá semicolons. Agus ansin níl an chuid na láimhe deise chun an ceart an leathstad dara. Anois, a dhéanann an chéad cheann de na cad é? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Ar ais ansin? Yeah? LUCHT ÉISTEACHTA: Initialization. DAVID J. MALAN: Initialization. Mar sin, cad a chiallaíonn sé? Táimid tar éis a dhearbhú athróg ar a dtugtar i. Tá sé de slánuimhir cineál, mar tá mé sonraithe slánuimhir i. Agus tá mé ag initializing mé go dtí an luach 0. Mar sin, tá cad a rá i ndáiríre? Tá sé seo ag rá go héifeachtach go dtí an ríomhaire hug, a thabhairt dom go leor cuimhne, RAM go leor, a d'oirfeadh do roinnt, agus ansin a chur ar an Uimhir 0 sa smután de RAM. Agus mar leataobh, tá cé chomh mór ina slánuimhir de ghnáth, ar a laghad taobh istigh an fearas? LUCHT ÉISTEACHTA: 32 giotán. DAVID J. MALAN: 32 giotán. Mar sin, ciallaíonn sé a thabhairt dom 32 giotán, a dtugtar 4 bytes, agus a chur ar an 0 Luach ann, a bhfuil éasca go leor mar gheall ar ciallaíonn sé ach a leagtar ar fad an giotán chun 0. Mar sin, anois, tá an dara cuid anseo an riocht. Agus an coinníoll, mar a léiríonn an t-ainm, cad é a sheiceáil arís agus arís agus arís eile maidir le cibé an bhfuil sé fíor nó bréagach. Mar sin, tá sé seo ag rá go díreach a dhéanamh ar an línte seo a leanas de chód - eadhon líne 16, mar gheall ar go bhfuil an ceann amháin bearnach thíos - chomh fada is atá i níos lú ná 10. Agus tar éis gach leagan tríd an lúb, a dhéanamh ar an incrementation, atá sa chás seo i + +. Anois, ní chuireann sé a bheith i + +. D'fhéadfadh sé a bheith i -. Ach má rinne mé é seo, tá cad é an iompar ag dul a bheith ar an gclár? LUCHT ÉISTEACHTA: Tá sé ag dul a bheith ina lúb gan teorainn. DAVID J. MALAN: Tá sé ag dul a bheith de shaghas éigin lúb gan teorainn, mura bhfaigheann muid ádh i ndiaidh 2 diúltach billiún nó mar sin. B'fhéidir go mbeidh rudaí a timfhillteach, ach de réir cineáil an críochta líon na n-giotán go bhfuil muid ar fáil le haghaidh slánuimhir. Ach tá sé ag dul cinnte a iterate bhfad níos mó ná 10 agus cinnte níos mó ná 11 uair anseo. Agus anois, díreach mar leataobh, a thuiscint go i + + agus i - Tá i ndáiríre ach shiúcra syntactic. Tá sé díreach nodaireacht luathscríbhinne ar cad atá beagán níos mó go sainráite i scríbhinn mar seo a leanas: i = i + 1. Is é sin comhionann leis i + +. Breathnaíonn sé díreach de chineál ar prettier a rá i + +. Tá sé níos gonta, níos inléite. Agus mar sin a dhéanann daoine is mó a ionad. Ach tá sé seo comhionann feidhmiúil go méid a chonaic muid ach. Mar sin, i mbeagán focal, tá an shocrú mear anseo ach a rá iterate i ó 0 bealach ar fad suas go dtí níos lú ná 10. Agus ansin beidh orainn a fháil go deimhin, 10 réaltaí. Mar sin a ligean iarracht seo. Lig dom a oscailt suas an teirminéal ag bun an leathanaigh. Lig dom dul isteach ar an eolaire go bhfuil sé seo isteach Agus tá mé ag dul a chur le chéile de láimh le clang do anois. Agus tá mé ag dul a chur le chéile mar seo buggy1.c, isteach. Agus anois buggy1, cén fáth nach bhfuil aon comhad den sórt sin nó eolaire ar a dtugtar buggy1? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Yeah. Mar sin, tá sé ar a dtugtar i ndáiríre a.out. Mar sin, chun cuimhne má ritheann tú díreach clang, áit a bhfuil clang an Ní Tiomsaitheoir, agus tú a shonrú an t-ainm is mian leat a a thabhairt do do chlár, tá sé ag dul a default chun a.out. Mar sin, go deimhin, má dhéanaim LS - Oops. Agus didn't I - an cheist dubh-agus-bán ar roinnt de os comhair tú go bhfuil socraithe. Ach lig dom an. Tá ní mór dúinn a.out ar thaobh na láimhe clé ann. Mar sin, ní mór dúinn a.out a reáchtáil in ionad buggy1. Mar sin, lig dom dul ar aghaidh agus é seo a dhéanamh. . / A.out, isteach. Agus mé nach cosúil raibh a dhéanamh cad é? LUCHT ÉISTEACHTA: Sábháil. DAVID J. MALAN: Sábháil mo chomhad. Dá bhrí sin tá a réiteach go héasca ag bualadh S Rialú, nó ag dul go dtí File, Sábháil, cosúil le cláir is mó. Lig dom dul síos anseo, ar an scáileán soiléir, sé ar siúl arís. Agus tá fós a bug. Mar sin, cad ag dul - LUCHT ÉISTEACHTA: Ní raibh tú a thiomsú. DAVID J. MALAN: Ah, go maith. Ní raibh mé a thiomsú é. Cosúil le leathcheann, tá mé ag breathnú ar an cód a fheiceáil cad atá cearr. Buggy1.c clang Mar sin, anois a.out. Agus Phew, shábháil. Mar sin, tá sé beagán ghránna mar níl aon líne nua áit ar bith sa chlár. Ach arís, go díreach mion aeistéitiúil. Agus ar a laghad má táimid comhaireamh sin amach, ba chóir dúinn anois féach 10 réaltaí den sórt sin. Bhuel, cad faoi seo, mar shampla an dara te-suas? Mar sin, i buggy2, éilím go bhfuil an leagan, freisin, beidh phriontáil 10 réaltaí, ceann sa líne. Mar sin, an uair seo, tá mé carachtar líne nua, ach a dhéanamh rudaí a bhí beagán prettier. Ach ina ionad sin méid a fhaigheann mé é seo. Mar sin, lig dom buggy2.c clang, isteach. Anois, tá sé ar a dtugtar arís a.out. Cuir isteach. Liom a fheiceáil ach líne amháin nua, ach an líne go deireanach nua Bogann mo pras chuig an chéad líne eile. Agus fós go soiléir tá mé ag priontáil *, ansin ar líne nua, *, Agus ansin ar líne nua. Tá Ach cad é an fabht anseo? Yeah? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: díreach. Mar sin, murab ionann agus roinnt teangacha, cosúil le Python, áit a eangú i ndáiríre tá brí feidhme, i teanga mar C - mar beidh orainn a fheiceáil, PHP, Javascript - Is é an eangú i ndáiríre ach maidir leis an duine 'sochar. Mar sin, tá an bhfíric go bhfuil mé bearnach líne 16 agus 17 go hiontach, ach tá sé aon bhrí feidhme anseo. Más mian liom an dá líne a fhorghníomhú mar chuid den haghaidh lúb, ansin caithfidh mé faoi iamh leo braces gcuach trí é seo a dhéanamh. Is féidir leat a ghearradh ach amháin go cúinne agus na braces gcuach má fhágáil ar lár cad é an cás? LUCHT ÉISTEACHTA: Just líne amháin. DAVID J. MALAN: Just líne amháin. Mar sin, go díreach saghas saghas deas na mionsonraí comhréire ionas go ní gá duit dramhaíola am scríobh trí líne, dhá cheann a bhfuil braces gcuach, ach a scríobh líne amháin de chód. Ach má tá tú dhá cheann nó níos mó línte, táimid ag go deimhin, is gá é seo a dhéanamh. Mar sin a ligean anois dom a shábháil seo. Lig dom dul ar aghaidh agus ath-reáchtáil clang. Ansin lig dom rerun a.out, agus anois mé ceann a fháil in aghaidh an líne iad. Anois, tá a.out arís de chineál ar ainm balbh do chlár. Conas is féidir liom a insint clang a thabhairt i ndáiríre dom ainm an chomhaid go bhfuil níos éasca le húsáid, cosúil le buggy2 féin? A beag níos soiléire? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: OK, mar sin is féidir liom a ghlacadh i ndáiríre an- éasca le húsáid aicearra agus díreach a scríobh a dhéanamh buggy2. Ní féidir liom a shonrú. C sa chás seo, agus bhuail isteach. Agus is é cad a dhéanamh a dhéanann cuireann sé le chéile buggy2.c dom ag iarraidh clang é a dhéanamh. Go sonrach, iarrann sé clang, ritheann sé clang ag baint úsáide as ar bhealach níos orduithe-líne argóintí nó lasca ná mar is gá mé i ndáiríre. I am, beidh muid ag teacht ar ais leis an méid gach ceann de na éagsúla téarmaí hyphenated cryptic ciallaíonn. Ach do anois, tá go shábháil ach dom an deacracht ag cuimhneamh agus a bhfuil le cineál amach gach ceann de na téarmaí hyphenated éagsúla. Agus is é an upside é ar deireadh thiar go anois tá mé buggy2. Más mian liom é seo a dhéanamh de láimh, áfach, I Is féidir le ionad é seo a dhéanamh - clang-o buggy2 agus ansin buggy2.c. Agus a thabhairt dom an gcéanna comhad a dtugtar buggy2. Mar sin, i mbeagán focal, tá clang an tiomsaitheoir. Is é a dhéanamh ach uirlis éasca le húsáid go beidh orainn a bheith ag baint úsáide as níos mó agus níos mó, mar a thosaíonn sé ach a rudaí a shimpliú dúinn. Agus seol ar ais muid 0, ar deireadh. Chun anois, mar gheall ar go díreach, ach beidh muid tús a chuimil an chuid sin lá atá inniu ann agus ar an gCéadaoin. Ceisteanna ar bith ar aon cheann de seo? Yeah? LUCHT ÉISTEACHTA: [INAUDIBLE] LS i Sleachta ann? DAVID J. MALAN: OK. Nuair a bheidh mé LS clóscríofa idir comharthaí athfhriotail, a bhí á dhéanamh dom roinnt draíochta taobh thiar de na pictiúir a shocrú a bug. Rinne mé dearmad, mar tá muid ag insint go leor de tú ar an boird plé, a dhéanamh - beidh orainn é seo a dhéanamh anois - sudo yum-y cothrom le dáta appliance50. Whoops, go bhfuil s litrithe i gceart. Mar sin, tá an fearas cosúil le córas oibriúcháin. Tá sé ag rith an córas oibriúcháin ar a dtugtar Fedora. Agus anois mar gheall ar mo nasc Idirlín mall, tá mé i ndáiríre hosed é. Mar sin, ag rith suas chun dáta yum sudo, mar a insint duit a dhéanamh i leagtar bhfadhb, cosúil le go bunúsach ag rith nuashonruithe uathoibríoch i Mac OS nó Windows. Agus an chúis reáchtáil an ag tús an-an Tá sraith fhadhb mar nuair a cruthaíodh muid ar an fearas, I messed suas, agus rinne mé de thaisme ar fad do na cláir breathnú dubh ar scáileán dubh, agus sin an fáth nach bhfuil tú ag féachaint ar iad a de réir réamhshocraithe. Ach Socraíonn an leagan is déanaí den fearas seo. Agus beidh mé a shocrú le linn sos nuair a tá mé an Idirlíon nascacht. Mar sin, seithí na comharthaí athfhriotail díreach tar éis mo botún, an-discréideach, cosúil. Ceisteanna eile? Tá? LUCHT ÉISTEACHTA: Cá bhfuil a dhéanamh teacht ó? [INAUDIBLE] DAVID J. MALAN: Good question. I gcás nach a dhéanamh teacht ó? Is clár Linux a bhí ann le blianta fada, fada roimh CS50. Agus a thagann sé le córas oibriúcháin cosúil le Fedora. Ní chuireann sé a thagann as an leabharlann CS50. Go deimhin, na rudaí ach a thagann as an leabharlann CS50 go dtí seo, go atá feicthe againn, tá GetString, GetInt, gach ceann de na feidhmeanna sin a fháil, agus an teaghrán focal, agus le roinnt Sa mhéid sin, an focal bool. Ach beidh orainn a tease go chéile nuair a Léim isteach sa CS50 fearas féin. Mar sin, tá, ceist amháin níos mó anseo. LUCHT ÉISTEACHTA: Nuair a dúirt tú a dhéanamh agus ansin Buggy, cén chaoi an ríomhaire a fhios [INAUDIBLE]? DAVID J. MALAN: Good question. Mar sin, nuair a ritheann tú díreach a dhéanamh buggy1 nó buggy2 a dhéanamh, conas a ní a dhéanamh a fhios agat? Mar sin, trí mhainneachtain, má scríobhann tú a dhéanamh buggy1, a dhéanamh Breathnaíonn do comhad a dtugtar buggy1.c. Agus ansin fhorghníomhú an orduithe clang cuí, rud a sáraitheach ar an aschomhad réamhshocraithe ar a dtugtar a.out. Go deimhin, má táimid ar cad a dhéanamh, cad - a ligean ar scor seo. Má táimid ar cad a dhéanamh a bhí á dhéanamh i ndáiríre, a dhéanamh buggy2, tá sé cheana féin suas chun dáta. Mar sin, lig dom a bhaint as an ordú RM, an clár Scríobh mé roimh. Clóscríobh Y-E-S a dheimhniú gur mhaith liom é a bhaint. Má dhéanann mé anois a dhéanamh, faoi deara go bhfuil sa líne seo an-fhada, níl an rud deireanach anseo,-o buggy2. Tá gach déanamh á dhéanamh dul leis an argóint sin, sin a labhairt, a Clang, ionas nach féidir liom a chlóscríobh mé féin é. Gach ceart, mar sin cúpla tapa riaracháin fógraí. Mar sin, do ranna, thosaigh a hoifigiúil ag teacht Dé Domhnaigh, beidh tú ag iarraidh i gcónaí a thabhairt, más rud é tá ceann agat, ríomhaire glúine. Más rud é nach bhfuil tú ríomhaire glúine, ná teagmháil a dhéanamh le dom ag in iúl ríomhphost chugam. Agus beidh orainn a figiúr amach sreabhadh oibre. Cad ginearálta beidh tú in alt go bhfuil siad mar chuid choincheapúil, mar chuid lámha ar. Beidh muid úsáid go sonrach an t-alt de na ceisteanna, mar chuid de leagtha fhadhb na seachtaine, ag siúl trí roinnt de na ábhar coincheapúil ó léacht. Agus sin ar fad sa tsraith fhadhb atá ann faoi láthair. Agus beidh muid ag Léim go freisin i roinnt gníomhaíochtaí idir lámha ar, uaireanta Beidh a bheith ag teastáil chun a chur isteach, uaireanta Ní a. Mar shampla, an chéad seachtain, tá siad i gceist ach mar te-suas a fheidhmiú. Agus beidh tú go bhfuil na fadhbanna i ndáiríre go díreach. Tá siad i gceist a bheith measartha beag, ach ní gá cláir fánach a scríobh, nach bhfuil gá deiseanna spreagúla ar i agus de féin ach go maith chun chleachtadh le comhréire, le feidhmeanna nua, i do chompord a alt ina bhfuil tú ar roinnt de do rang i láthair mar maith le do TF. Agus cad beidh muid ag déanamh níos mó ná uair a úsáideann uirlis ar a dtugtar CS50 Spásanna, trína seachas díreach ag baint úsáide as an fearas CS50, beidh tú in ionad dul go dtí leathanach gréasáin i mbrabhsálaí, i gcás ina mbainfidh tú in ann a scríobh cód i bhfuinneog bhrabhsálaí le linn alt seo. Agus ansin má roghnaíonn tú i, is féidir do eile teagaisc a thaispeáint ansin is cuma cad é go bhfuil tú ag clóscríobh ar do scáileán i do bhrabhsálaí fuinneog suas ar an os comhair an ranga, cibé acu gan ainm nó go poiblí, ionas gur féidir leis nó léi siúl ansin trí le do rang cad a rinne tú go maith, cad é nach raibh tú a dhéanamh go maith. Agus arís, cinnte chuid eile is féidir seo ar fad a anonymized nicely. Ach beidh sé a bheith ina deis deas do i bhfad níos mó Ceadaíonn idirghníomhaíocht ná rud éigin cosúil le léacht. Idir an dá linn, beidh orainn na rudaí seo ar a dtugtar Super hailt sin, atá roghnach, ach atá oscailte do gach duine sa an rang, ionas gur féidir leat é seo a dhéanamh níos mó le chéile chun fhadhb atá leagtha amháin. Seo an sceideal. Tá sé seo suas ar an leathanach baile ar cs50.net. Fógra go mbeidh go mbeadh hacker ar leith tráthnóna amháin amárach. Agus beidh muid ag scannánú amháin sa lá atá inniu agus amárach amháin agus iad siúd phost ar líne laistigh de 24 uair an chloig. Ní sin más rud é nach féidir leat a dhéanamh aon cheann de na huaire, a bheith buartha. Agus arís, tá an sceideal ar líne anois ag cs50.net. I dtéarmaí gearrtha féin, ba chóir duit a bheith gotten ar r-phost a theagasc duit dul chuig an gcúrsa ar leathanach baile a fháil amach do alt seo. Má tá an saol athraithe agus is gá duit a athrú ar do ailt seo, Ní fadhb. Téigh ar ais go dtí URL céanna, cs50.net/section, uimhir uatha, agus go mbainfidh tú a líonadh amach an fhoirm chineál céanna ionas gur féidir leat ansin a thabhairt dúinn do chuid sainroghanna. Agus beidh muid ag leanúint ar bun le seachtain deireadh le cad is féidir linn freastal. An tseachtain seo caite, chun cuimhne gur mhol muid ag baint úsáide CS50 Pléigh, uirlis plé ar an gcúrsa, in léacht. Mar sin, bhí againn 40 ceist a iarradh sin agus fhreagairt i rith léacht. Mar sin, bhain sé a bheith ag obair go maith, mar sin beidh orainn leanúint ar aghaidh ag iarraidh seo a dhéanamh. Más rud é, le linn léacht, nach mbraitheann tú díreach a ardú compordach do láimh, ní fadhb. Téigh go dtí cs50.net/discuss, iar ann, agus ar cheann dár teagaisc Beidh comhaltaí ceachtar fhreagairt go leictreonach nó a thógáil le lámh ar do shon gan ainm a iarraidh, ag brath ar nádúr na ceiste. Agus i dtéarmaí aiseolais, beidh go ginearálta psets a ar ais laistigh de sheachtain. Toisc go dtógann sé tamall beag do ailt a bhaint amach cothromaíochta, beidh an pset chéad, 0 agus 1, le beagán moill mar rudaí a réiteach síos. Ach fanacht tiúnta le haghaidh sin sna seachtainí atá le teacht. Gach ceart, in iúl dom a chur ar mo tromchúiseach guth do láthair ach. Mar sin, tá sé seo i ndáiríre aeráid suimiúil a bheith a bhfuil an cheist a phlé, cad le gach ceann de na rudaí eile ag dul ar aghaidh ar an gcampas a ghabhann leis a bhaineann leo. Ach tá CS50 bhí cinnte a stair seo go háirithe, ábhar, sa mhéid gach bliain, an cúrsa seo, i gcás go leor bliana, Ad-Boird thart ar 3% den rang. I mbliana is déanaí, 2011, CS50 Ad-iostas 35 mac léinn. Ní hé seo, I mo thuairimse, mar gheall ar easpa soiléireachta. A thuiscint go le linn do siollabas, tá leathanach de ráiteas ag míniú i gcás ina bhfuil na línte. Is é sin an ráiteas céanna arís agus arís eile ar gach ceann de na fhadhb Leagann ar leathanach amháin. Mar sin mé ag trácht ar an lá atá inniu ann i ndáiríre ach a dhéanamh folks aireach ar seo. Agus tá iarracht déanta againn rudaí éagsúla. Agus is é cad a cheap mé go mbeadh muid ag déanamh lá atá inniu ann a ghlacadh ach nóiméad a iarbhír breathnú ar roinnt de na cásanna atá caite a thagann suas. Seachas a choinneáil ar na rúin mar a salach beag, i ndáiríre pointe amach cad mic léinn a dhéanamh agus conas ní mór dúinn a aimsiú é agus é i ndáiríre cad é an spreagadh uileghabhálach do fiú tar éis an chomhrá. Mar sin, leis sin ráite, is é an líne go bunúsach seo - de réir an siollabas, tá tú fáilte roimh chách, moltar duit, a labhairt leis an rang. Sin an cuspóir iomlán a bhfuil na comhoibritheach uaireanta oifige in Annenberg agus daoine a spreagadh chun deiridh an tionscadail ag obair le chéile. Ach tá an líne arna tarraingt nuair a thagann sé in am a scríobh i ndáiríre do réiteach deiridh. Ag labhairt i mBéarla, go hiomlán, fíneáil, ag labhairt i gcód pseudo, go hiomlán fíneáil. Ríomhphost a sheoladh chuig classmate do pset, ligean dóibh breathnú thar an scáileán mar a leanúint na lámha clóscríobh, thar an líne chomh maith. Ná breathnú ar an siollabas do na línte ar leith. Ach amháin le péint pictiúr de conas é seo ar an drochuair a réaltacht, a thuiscint go bhfuil láithreáin ghréasáin amach ann a Tá réitigh as an rang agus ranganna eile go leor. Ós rud é go bhfuil a fhios agat nó cuid 3% de tú go bhfuil an Ciallaíonn sé sin go a fhios againn go bhfuil seo. Ós rud é go bhfuil láithreáin ghréasáin mar seo áit a bhfuil tú Is féidir íoc le duine éigin a dhéanamh i ndáiríre do Leagann fhadhb - tá sé seo go raibh cás iarbhír a tháinig chun cinn anuraidh. Is é seo an suíomh gréasáin ar a dtugtar odesk.com. Agus bhí Tim ainm an duine anseo a bhí ag a fhoilsiú ar an suíomh gréasáin seo agus d'iarr duine éigin a dhéanamh a pset 7 i chás áirithe seo. Bhuel, tá an-odesk.com Google-ann, agus tá muid freisin an-mhaith ag Googling. Anseo, freisin, tá suímh - agus tá an ceann seo in áit atrocious, frankly. [Gáire] DAVID J. MALAN: Is é an rud greannmhar faoi an suíomh seo más rud é go léigh tú an leathanach Maidir, labhraíonn siad faoina corparáideach Tá seirbhís do chustaiméirí cultúr agus an chaoi a n-uimhir a haon tosaíochta, chun a chinntiú go bhfaigheann do thascanna iompú isteach i ar an am. Ach i ngach tromchúis, arís, ar an bhfíric go bhfuil na láithreáin ann, tuigimid, freisin, go bhfuil an eolas maidir le na cineálacha de láithreáin. Agus foirmeacha a thabhairt duit tuiscint ar cad é seo go ginearálta Bíonn, ní mór dúinn go ginearálta nach bhfuil ag scannail mór i gcás daoine ag comhoibriú ar de chineál ar bith ar scála ollmhór, ach ina áit tá sé na chuimhneacháin déanach san oíche ar laige, áit a bhfuil tú mar sin mórán le déanamh, tá sé 04:00, tá tú ídithe, agus tú smaoineamh leat féin, go maith, lig dom a ghlacadh ach le breathnú ar mo roommate nó mo charad cód nó a leithéid. Agus manifestations seo i gceist ar an drochuair na Mac Léinn A rud éigin isteach mar seo agus a chur isteach B Mac Léinn rud éigin mar seo, rud a cinnte, i ríomhaire Tá eolaíocht rang, thar cuimse éasca do eolaithe ríomhaireachta a bhrath le bogearraí. Eile é seo paraidím coitianta, i gcás tá tú saghas ag obair in éineacht de dhuine, b'fhéidir ag caint i Béarla, ach fíneáil, pseudocode. Ach ansin a thagann sé in am a chur isteach i ndáiríre, agus an psets a fháil mhalartú go díreach tríd an ríomhphost nó Dropbox nó a leithéid. Ach mar iarracht chun é a dhéanamh níos lú soiléir go bhfuil sé seo cad a tharla, ansin é seo cad a cuireadh isteach. Seo, freisin nach bhfuil, turas suas dea-scríofa píosaí de bogearraí ar nós atá againn a bhrath go hiarbhír na cineálacha rudaí. Agus go deimhin, tá cad a dhéanann muid bogearraí a reáchtáil a dhéanann comparáid idir gach ceann de na na bliana seo aighneachtaí i gcoinne gach ceann de na am atá thart bliana aighneachtaí, i gcoinne gach rud a fuair muid ar an Idirlíon, i gcoinne gach suíomh gréasáin post amach ann. Tá sé ar fad an-uathoibrithe. Agus mar sin a dhéanann muid seo i ndáiríre i cothroime go mór leis an% 97 a ag obair i ndáiríre a n-asal amach san agus i dtíortha eile ranganna agus a chur i ngach ceann de iarracht sin ionas go mbeidh an obair siad isteach ar deireadh thiar tá a gcuid féin. Agus is féidir liom dul ar do aois. Is iad seo ach dornán de na bliana seo caite cásanna. A mhic léinn cúpla bhráid na comhaid identically le haghaidh pset 2, pset 3, pset 4, pset 5, pset 6, pset 9. Sa chás seo, bhí an tráth na gceist 0 agus sa bhliain seo caite, i gcás dhá mic léinn isteach identically an abairt seo i measc go leor daoine eile, "an t-iarratas den chineál -" ponc, ponc, ponc. Mar sin, fiú amháin i rang de 600 raibh muid a bhrath seo ar chur isteach tráth na gceist. Mar sin, i mbeagán focal, tá an - frankly, is fuath liom a bheith den chineál seo comhrá - ach tá sé seo i ndáiríre ar iarracht d'aon turas na bliana seo chun iarracht a thiomáint síos an líon sin. Mar gheall ar cé go deirimid na cineálacha rudaí gach bliana, Sílim go bhfuil an réaltacht a bheith dwelled ar é ar feadh cúpla soicind níos mó ná mar is gnách agus ar ndóigh, ag tagairt díreach amach go d'fhéadfadh a bhfuil cuma mhaith, e, nach déileáil sórt sin a mhór, ar a laghad smaoineamh ar ais go dtí an nóiméad, go háirithe, ó thaobh cothroime tú féin agus do do rang anseo. Mar sin, má tá tú riamh aon cheist agat maidir le cá háit ar an líne Tá, le do thoil ach teagmháil a dhéanamh domsa go pearsanta. Ach tá an freagra i gcónaí, go hiomlán béim ar an nóiméad deireanach, airgead tirim in aghaidh an lae go déanach. Nó má tá sé ina ábhar de nach bhfuil aon lá déanach, go hionraic, ríomhphost chugam go pearsanta. Beidh muid figiúr rud éigin amach. Ní le do thoil a chur ar do chuid ama anseo ag Harvard i mbaol. Anois, shíl mé ba chóir dúinn a Éadromaigh an giúmar, mar sin mé seo san áireamh mar an sleamhnán seo chugainn. [Gáire] DAVID J. MALAN: an láithreán gréasáin seo a bhí iontach. Fuair ​​mé i ndáiríre beag distracted. Níl an ceann seo. Agus ansin bhí an ceann seo iontach. Maith go leor, go bhfuil sin de go kitten go déanach san oíche nuair a dhéanamh na cinntí sin. Gach ceart, rudaí mar sin ar ais go dtí níos mó spraoi agus nach bhfuil chomh tromchúiseach, ar nós coinníollacha. Gach ceart, mar sin labhair muid ar feadh tamaill faoi na. Is é an rud go bhfuil dócha go leor ar an eolas ó saol na Scratch. Agus i saol na Scratch, ní mór dúinn ar an riachtanas seo uaireanta dul forcanna a dhéanamh ar an mbóthar. Ceachtar é seo a dhéanamh nó go nó an rud eile anseo. Agus nuair a ba mhaith linn a dhéanamh, is féidir linn a úsáid, i C anois, seo má eile a thógáil. Agus ansin anseo tá téarmaí Boole. Mar shampla, nathanna Boole anseo, is féidir linn NÓ le chéile iad, sa chiall go bhfuil muid an coinníoll seo NÓ an gcoinníoll sin. Is féidir linn AGUS iad le chéile, sa chiall go ba mhaith linn a sheiceáil an coinníoll seo agus an gcoinníoll sin. Agus anseo ní mór dúinn a ráiteas athrú anois, nach bhfuil chomh cosúil syntactically leis na cineálacha sin na coinníollacha, ach tá sé ligeann dúinn a dhéanamh ar an comhionann le más rud é, eile más rud é, eile más rud é, eile más rud é, agus a leithéidí go simplí trí iad a enumerating cás ar chás le cás ar chás. Mar sin, chonaic muid iad siúd uair dheireanach. Agus ansin a thosaigh muid touching ar rudaí cosúil le lúb. Chonaic muid ar cheann de na ach nóiméad ó shin. Ach tá na constructs eile looping. Mar shampla, an ceann seo anseo. Mar sin, cé (coinníoll), é seo a dhéanamh rud arís agus arís. Mar sin, go bunúsach, is cosúil cad a bheith difriúil idir an le haghaidh lúb agus an lúb agus anseo? Seo le haghaidh lúb agus an lúb tamaill. Yeah? Cad é sin? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Chéasta. Mar sin, ach i do riocht lúb, níl go soiléir comhréir níos mó. Níl an initialization, níl an nuashonrú seo. I lúb agus, níl ach an coinníoll seo. Mar sin, is cosúil go bhfuil sé beagán gcomparáid síos i gcoinne an do lúb, rud a chiallaíonn más mian linn a athróg a bheith acu agus ba mhaith linn incrementation a bheith acu, ní mór dúinn i ndáiríre a é seo a dhéanamh rud dúinn féin. Mar sin, lig dom dul ar aghaidh agus a oscailt gedit suas. Lig dom a athrú go dtí an fearas. Agus a ligean ar díreach sampla mear beag go idirdhealú ar cheann de na ón eile. Agus i gcúl mo aigne anseo, ba chóir dom a rá rud amháin. Luaigh mé go sonrach an t-ainm Tim. Tim a bhí i ndáiríre duine éigin go bhfuil iarracht mac léinn a fháil a dhéanamh gcuid obair bhaile dóibh. Bhí orainn aon Tim san alt sin go háirithe. Mar sin a bhaint amach, lest nochtadh mé mac léinn, ní raibh sé ina mhac léinn. Bhí sé ar dhuine randamach ar an Idirlíon rudaí a dhéanamh de réir na bliana seo caite seachfhreastalaí. Mar sin, feicimid go bhfuil, freisin. Mar sin, sa chás seo anseo, lig dom dul ar aghaidh agus oscailt suas le comhad nua. Comhad, Nua. Tugann sé seo dom cluaisín anseo. Lig dom dul ar aghaidh agus é a shábháil mar loop.c. Lig dom dul agus cliceáil Save. Agus ansin síos anseo, a ligean ar dul ar aghaidh agus tús a scríobh # I measc . Lig dom zúmáil isteach Anois, beidh muid ag déanamh príomh-o (neamhní). Anois, lig dom dul ar aghaidh agus a dhéanamh do (slánuimhir i = 0; i < OH, 10; i + +). Agus anois tá mé ag dul chun dul ar aghaidh agus a dhéanamh ar an réalta a phriontáil go bhfuil mé rinne níos luaithe. Agus ansin ag deireadh an chláir seo, táimid ag dul díreach tar éis a phriontáil ar líne nua, ach mar sin go bhfuil mo pras Ní breathnú ar fad messy. ar ais 0. Is cosúil go syntactically ceart? Go dtí seo. Mar sin a ligean ar a fheiceáil. Mar sin, lig dom a súmáil amach, téigh isteach i mo fhuinneog teirminéil. Agus lig dom dul ar aghaidh agus lúb a reáchtáil, mar gheall ar d'iarr mé ar an loop.c. rud Sin a dhéanamh lúb. Dealraíonn sé a thiomsú OK. Lig dom a reáchtáil lúb, agus anois isteach. Agus dealraíonn sé go bhfuil i gcló 10 réaltaí. Mar sin a ligean ach an thiontú go lúb tamaill agus an méid a fheiceann cineál na saincheisteanna turas againn os a chionn. Mar sin, in ionad seo, lig dom dul i anseo agus a rá cé go bhfuil mé níos lú ná 10 - lig dom a fháil haitheantas coibhneasta an do lúb. OK, ionas go mbeidh muid cúpla fadhbanna cheana féin. Mar sin, tá an coinníoll an gcéanna, ach tá mé ag iarraidh ar ndóigh an initialization. Tá mé ag iarraidh an incrementation. Mar sin, cad ba cheart an tiomsaitheoir insint dócha dom nuair a thugaim a thiomsú chlár seo? Yeah? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Chéasta. Mar sin, tá sé ag dul a rá rud éigin cosúil le neamhdhearbhaithe - sa cás, Athróg i. Agus go deimhin, úsáid aitheantóra neamhdhearbhaithe i. Agus mar sin tá sé seo i gcodarsnacht le teangacha ar nós PHP agus Python agus Ruby, a d'fhéadfadh roinnt de tú a bheith ar an eolas, nuair is féidir leat ach de chineál ar thús athróg ag baint úsáide as Willy nilly agus nach bhfuil a bheith buartha faoi iad a dhearbhú go sonrach i gcónaí. I C agus i dteangacha cosúil le Java agus C + +, caithfidh tú a bheith Super follasach. Agus más mian leat athróg ar a dtugtar i, caithfidh tú a insint dom cén cineál athraitheach go bhfuil sé. Mar sin, táimid ag dul a bheith acu a shocrú seo a leanas. Tá mé ag dul a bheith acu chun dul suas anseo agus slánuimhir i cineál; dá bhrí sin, Tá mé dhearbhú athróg ar a dtugtar i. Anois, tá mé ndearna aon chéim amháin. Agam nach atá initialized ar ndóigh, ach ligean ar a fheiceáil má go bhfuil ag ar a laghad stad clang a dhéanann gearán. Mar sin a ligean remake dom an gclár seo. Gach ceart, anois tá gearán sé ach ar chúis éagsúla. "Athróg Is é 'i' neamhuimhriúil nuair a úsáidtear anseo." Gach ceart, mar sin go leor follasach. Initialized ciallaíonn ach leagan cothrom é a luach. Agus ní atá déanta againn go bhfuil, in iúl dom iarracht is ionann 0. Anois, a ligean iarracht seo arís agus ath-reáchtáil clang. Tiomsaithe an am seo. Agus tá mé ar tí é a rith sé. Ach lúb mór gan teorainn d'aois, mar tá mé a rinneadh an initialization, atá déanta agam ar an gcoinníoll, ach ní atá déanta agam de chineál ar bith incrementation. Mar sin, conas is féidir liom a dhéanamh ar an incrementation? Bhuel, i lúb am céanna, mothaíonn sé cosúil mé ag dul a bheith acu a dhéanamh taobh istigh den lúb, mar gheall ar mórán mar an chéad seachtaine samplaí a dhéanamh constructs looping, cosúil le na stocaí agus leis an comhaireamh féin-, bhí againn a dhéanamh rud éigin ag deireadh an-, cosúil le dul ar ais go dtí an chéad líne eile. Cad a tharlaíonn má théann mé amach romhainn agus é seo a dhéanamh i + + anseo? Ní Lig thiomsú fiú seo. Gabháil mé cheana féin. Cad atá cearr anseo? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Mar sin, tá sé cinnte nach slánuimhir. Tá sé i. Agus na braces gcuach, mar a bhíodh, Ní eangú go leor. Mar sin, anois tá mé seo a thógáil. Mar sin, cé go bhfuil mé níos lú ná 10, a phriontáil le réalta, ansin incrimint i. Agus ar an mbealach ar feadh tamaill go bhfuil oibreacha lúb go chomh luath agus a bhuail tú ar an bun an lúb, a bhreathnaíonn sa chás seo cosúil le líne 10, tá sé ag dul chun dul ar ais go dtí an líne 6, ag an bpointe Beidh coinníoll a sheiceáil arís. Agus má tá mé fós níos lú ná 10, beidh muid ag déanamh línte 8 agus ansin 9, ansin beidh orainn a bhuail 10, agus dul ar ais go 6, arís agus arís agus arís agus arís eile, chomh fada is atá i níos lú ná 10. Mar sin a ligean ar ath-reáchtáil a dhéanamh anseo. Maith go leor, tá muid le chéile ceart go leor. Lig dom ath-reáchtáil lúb. Agus anois is cosúil sé i ndáiríre a bheith ag obair. Mar sin, pluses agus minuses anseo? Bhuel, a mhéid níl i ndáiríre ní iomlán PLO - chomh gleoite. Gach ceart, go raibh an - ah, go raibh timpiste. Gach ceart, mar sin a ligean dul ar ais chuig an do lúb. Mar sin, le haghaidh lúb atá deas toisc go bhfuil siad Super follasach. Agus cé go bhfuil siad clunky beag a scríobh, tá sé an-chumhachtach agus is féidir leat é a dhéanamh rudaí il ag an am céanna. Cé nach bhfuil lúba cosúil go bhfuil méid ollmhór de luach cóir go fóill, toisc go mothaíonn sé cosúil ní mór dúinn ach a dhéanamh níos mó oibre. Ní mór dúinn a chur ar an initialization suas anseo, an thabhairt cothrom le dáta síos anseo, agus ní mór dúinn a mheabhrú a dhéanamh go léir. Mar sin, beidh orainn a fheiceáil in am go lúba agus ar iasacht iarbhír iad féin go dtí díreach gcomhthéacsanna éagsúla, sonraí éagsúla struchtúir cosúil le liostaí agus táblaí hash, rudaí beidh orainn a fháil chun lár seimeastar. Ach do anois, tá a fhios go níl an cineál tríú ar a dtugtar a dhéanamh- agus lúb. Agus atá feicthe againn an gairid. Agus d'fhéadfadh sé seo a bheith cabhrach Super le pset 1. Aon uair is mian leat rud éigin a dhéanamh agus ansin seiceáil an an t-úsáideoir Chomhoibrigh, agus más rud é nach raibh siad, é a dhéanamh arís, a dhéanamh- cé go lends lúb féin a chineál sin de loighic. Mar gheall ar mar a léiríonn an ordú ó bhun go barr anseo, dhéanann ciallaíonn literally seo a dhéanamh. Agus é seo a dhéanamh arís agus arís eile, céard a d'fhéadfadh a bheith? B'fhéidir ciallaíonn sé GetInt iarraidh nó GetString agus ansin seiceáil luach na GetInt nó GetString agus ansin liúirigh ag an úsáideoir más rud é nach bhfuil siad chomhoibrigh ag iarraidh orthu arís agus arís agus arís. Nuair is mian leat rud éigin a dhéanamh uair amháin, ansin a sheiceáil roinnt riocht. Mar sin a ligean iarracht seo. Lig dom a athrú iarbhír seo anois le lúb dhéanamh-tamaill. Agus mé ag dul a dul ar aghaidh agus an méid seo a leanas a dhéanamh. Mar sin, a dhéanamh ar an méid seo a leanas. Déanaimis a dhéanamh slánuimhir i = GetInt (), ach ligean ar a insint ar dtús an t-úsáideoir cad atá le déanamh. Mar sin, am beagán difriúil seo. "Tabhair dom an slánuimhir". Mar sin, beidh mé úsáid as printf as sin. Agus anois tá mé ag dul chun dul síos anseo, agus mé ag dul chun é seo a cé go bhfuil mé, a ligean ar rá, níos mó ná - a ligean ar féach, tá i, a ligean le rá, níos lú ná 0, nó i níos mó ná 10. I bhfocail eile, ba mhaith liom roinnt 1-9, ach treallach. Mar sin, tá mé ag baint úsáide as léiriú le chéile Boole anseo chun an déan cinnte go bhfuil mé níos lú ná 0 nó níos mó ná 10, ina chás liom é seo lúb anseo arís. Mar sin, arís, é seo a dhéanamh - cé go bhfuil mé níos lú ná 0 nó i níos mó ná 10. Mar sin a ligean anois ar dul ar aghaidh agus é seo a dhéanamh nuair atá déanta againn go. Déanaimis a dhéanamh ach seiceáil sanity tapaidh. printf ("Go raibh maith agat, tá mé% d", i). Mar sin, iarrann an clár simplí an t-úsáideoir le haghaidh slánuimhir, a dhéanann cinnte go bhfuil sé taobh istigh de roinnt raon, 1 go dtí 9 san áireamh, agus go raibh maith agat ansin an t-úsáideoir ag cur i gcuimhne dóibh cad siad díreach clóscríofa i, díreach mar a sheiceáil sanity beag. Ach a ligean ar a fheiceáil má oibríonn sé seo mar atá beartaithe. Lig dom dul ceann síos anseo agus ath-reáchtáil a dhéanamh lúb. Hmm. "Úsáid aitheantóir neamhdhearbhaithe 'i'". Sin aisteach. Shíl mé réiteach againn é sin. Symptom céanna, ach chóid éagsúil. Yeah? LUCHT ÉISTEACHTA: [INAUDIBLE] taobh istigh an dá, ní mór dúinn a [INAUDIBLE]. DAVID J. MALAN: díreach. Mar sin, mar thoradh ar seo i ndáiríre ar ár gcumas ábhar a dtugtar raon feidhme. Casadh sé amach go C, arís, a thógann sé i ndáiríre tú literally. Agus má dhéanann tú rud éigin mar seo áit a bhfuil tú a dhearbhú ina slánuimhir agus a shannadh ansin é a roinnt luach, ach a dhéanann tú go bhfuil taobh istigh de péire braces gcuach, cad a dhéanann C é glacann sé leis go bhfuil tú ach ba mhaith leis na píosaí 32 ar a dtugtar mé a bheith ann laistigh de na gcomhthéacs na braces gcuach, laistigh de chomhthéacs na línte 6 trí 9. Dá bhrí sin tá i dhearbhú, agus tá sé sannfar luach de réir 8, ach chomh luath agus a fhaigheann tú lasmuigh de líne 9 thíos an brace curly, tá mé a thuilleadh i raon feidhme, sin a labhairt. S-C-O-P-E. Tá sé a thuilleadh i gcomhthéacs an ceart. Mar sin, anois nach bhfuil aon i, mar sin tá sé mar cé nach raibh muid fiú dearbhaíodh é in aon chor. Mar sin, cad a shocrú ansin le haghaidh rud éigin mar seo, más rud é chúis go bhfuil mé dhearbhú laistigh de na braces gcuach, a Is cosúil olc? Anseo? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Yeah. Mar sin, is féidir linn a thúsú taobh amuigh. Mar sin, lig dom dul ar aghaidh agus na codanna dearbhú trína scriosadh I sonrófar ann an cineál, agus lig dom é a dhéanamh suas anseo. Mar sin, i gcomhréir 5, a deir sé anois "Tabhair dom an slánuimhir." Call sé i. Fógra i líne 9, níl mé ag iarraidh é seo a dhéanamh, mar go bhfuil mé cheana féin na píosaí 32. Níl mé ag iarraidh a iarraidh ar an ríomhaire ar feadh giotán 32 éagsúla. Ba mhaith liom a úsáid as na 32 céanna giotán. Agus anois toisc go bhfuil mé dhearbhú i gcomhréir 5, tá sé fós legit é a úsáid i gcomhréir 11 agus líne 12. Mar sin, lig dom iarracht a recompile seo agus a fheiceáil má chuirtear clang yelling. dhéanamh lúb. Mar sin anois go bhfuil sé "dearbhú intuigthe ar fheidhm 'GetInt' go bhfuil sé neamhbhailí i C99. "Cad é sin? Yeah? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Yeah. Mar sin anois go bhfuil mé ag úsáid i ndáiríre GetInt, nach bhfuil an rud a thagann go díreach le C. Tagann an ón CS50. Mar sin, ní mór dúinn seo anseo. Agus lig dom dul ar ais chuig an síos go pras anseo agus a ath-reáchtáil a dhéanamh. Maith go leor, ar deireadh. Anois, tá muid réiteach sin agus an earráid eile. Lig dom a reáchtáil anois lúb agus féach cad a tharlaíonn. "Tabhair dom an slánuimhir." Feicfidh mé a thabhairt dó 11. Feicfidh mé a thabhairt dó -1. Feicfidh mé a thabhairt dó foo. Feicfidh mé a thabhairt dó 5. Agus anois oibríonn sé go deimhin. Ach go pras athrú ar chúis atá anseo. Cén fáth a rá sé retry ceann amháin de na amanna ach a thabhairt dom INT na trí cinn eile huaire? Cén fáth go bhfuil an iompar difriúil? LUCHT ÉISTEACHTA: Thug sé teaghrán. DAVID J. MALAN: Tá brón orm? LUCHT ÉISTEACHTA: Thug tú é teaghrán. DAVID J. MALAN: Yeah. Mar sin, thug muid sé ar shraith sa tríú iarracht, nuair a chlóscríobh mé foo. Is Foo teaghrán. Níl sé ar ndóigh slánuimhir. Agus is é an bealach go bhfuil CS50 bhfeidhm GetInt go ná seiceáil má tá rud éigin níos lú ná 0 nó níos mó ná 10 ar do shon, mar gheall ar conas a bhfuil a fhios againn roimh ré cén cineál INT ba mhaith leat? Ach is féidir linn a sheiceáil minimally ar do shon, ní raibh an t-úsáideoir ar a laghad cineál slánuimhir? Agus más rud é nach raibh siad, ní mór dúinn yell ag an úsáideoir ag clóscríobh "scríobh" ar an scáileán. Mar sin anois táimid tar éis clár a tá looping. Maith go leor. Anois, a bhfuil ceann de na saghas an thógáil níos fearr? Mar sin, tá sé seo nuair tús rudaí a fháil messy beag, an bhfíric go bhfuil tú chun cuimhneamh ar a dhearbhú athróg suas anseo más mian leat é a úsáid taobh istigh de roinnt braces gcuach agus lasmuigh. Ach fiú má Breathnaíonn an beagán cryptic ar dtús Sracfhéachaint, ach arís, cuimhnigh ar an loighic simplí. D'fhonn aon rud a úsáid i C, cibé acu tá sé ina fheidhm nó tá sé ina athróg, caithfidh tú a chur san áireamh má tá sé ina fheidhm i roinnt leabharlann, nó is gá duit a dhearbhú. Ach anois ní mór duit a bheith aireach breise ar an bhfíric go bhfuil tú ag dhearbhú é i raon feidhme ceart. Níl tú a chur sé ró-docht laistigh de lúibíní. Mar sin, lig dom a rolladh iarbhír ar ais. Má théann muid ar ais go dtí ár mar shampla ó níos luaithe, agus téim ar ais go dtí do slánuimhir, slánuimhir i = 0; i <10; i + +, agus mé a dhéanamh réaltaí printf, mar seo, agus ansin paren dhúnadh, agus anois printf tá mé anois - i gcomhréir leis an loighic chéanna, cad a tharlóidh nuair iarracht mé a thiomsú chlár seo? LUCHT ÉISTEACHTA: aitheantóir neamhbhailí. DAVID J. MALAN: Mar sin, tá sé eile aitheantóir neamhbhailí, aitheantóir neamhdhearbhaithe. Anois, ar an gcúis beagán difriúil. Níl ar ndóigh aon braces gcuach anseo, ach mar an gcéanna smaoineamh, tá feidhm ag an scéal céanna a bhfuil raon feidhme. Má tá tú dhearbhú athróg mhaith liom taobh istigh de le haghaidh lúb, fiú amháin más rud é nach bhfuil tú ag scríobh go soiléir gcuach braces, smaoineamh ar iad a meabhrach mar go fóill a bheith ann, ina chás go bhfuil mé ach taobh istigh bailí ar an do lúb. Níl sé bailí a luaithe a gheobhaidh tú go dtí an chéad líne eile, i Is é an cás seo anois 10. Mar sin, ach le roinnt saincheisteanna a bhfuil raon feidhme agus a leithéidí. Gach ceart, aon cheist? Gach ceart, mar sin tá an cineál seo ar chlár fánach beag, priontáil díreach réaltaí beag. Ach a ligean ar a fheiceáil más cuimhin leat an t-amhrán anseo. Is é seo an amhrán thar a bheith annoying go mbeadh na páistí ag canadh ar an bus scoile agus a leithéidí. Ach cad atá deas faoi go bhfuil sé seo cyclicity, trína bhfuil sé "99 buidéal beorach ar an mballa, 99 buidéal beorach. Tóg ceann síos, tá sé pas thart, 98 buidéal beorach ar an bhalla. "Agus ansin athrá an t-amhrán an 97, ansin 96, ansin 95, ansin 94, an bealach ar fad síos go dtí 0 má fuair tú i ndáiríre go i bhfad ar an mbus. Mar sin, tá sé seo le clár deas a shórtáil de acra, mar gheall ar mo Dia, más féidir leat a chur i bhfeidhm ach seo le cúpla líne de chód, d'fhéadfaí tú a spit amach na liricí ar fad ar an amhrán go leor go tapa. Ach ar feadh na slí, is féidir linn tús a tease anois seachas roinnt de na constructs bunúsacha looping agus anois freisin feidhmeanna a thabhairt isteach go scríobh againn dúinn féin, luachanna ar ais go gcuireann muid timpeall. Ach ar dtús, cén fáth nach bhfuil muid ag dul ar aghaidh agus ár n-cúig nóiméad a ghlacadh briseadh anseo? Agus nuair a fhaigheann muid ar ais, beidh muid ag canadh amhrán seo. Gach ceart, mar sin táimid ar ais. Agus nuair a rá liom go mbeidh muid ag canadh anois an t-amhrán, ciallóidh mé programmatically, ní bhéal. Mar sin anseo tá muid beer1.c, atá ar cheann cur i bhfeidhm an amhrán ar leith. Agus díreach a bheith soiléir, dóibh siúd a cur amach acu ar cad Breathnaíonn an rud cosúil, lig dom dul ar aghaidh agus a chur ar beer1, isteach. Anois, lig dom a reáchtáil beer1, agus cad a beidh orainn a fheiceáil - cé mhéad buidéil Beidh na beorach a bheith ann? Feicfidh mé cineál i 99, mar a deir an t-amhrán. Cuir isteach. Agus anois má scrollbharra againn trí - Oops - má scrollbharra againn trí gach ceann de seo, beidh orainn a fheiceáil go seo rinne chanadh go deimhin, an t-amhrán ar fad. Fan nóiméad. Tá mo scrollbharra beagán messed suas. A ligean ar úsáid a bhaint as an fhuinneog níos mó. Mar sin, beer1, 99, tá muid ag dul. Mar sin anseo againn an t-amhrán ar fad, á chanadh i bhfad níos tapúla ag an ríomhaire ná fhéadfadh sé a bheith le linn. Mar sin, fógra, áfach, an nádúr timthriallach anseo. Deir sé 99, ansin 99, ansin "ceann amháin síos, pas sé thart, "ansin 98. Agus anois repeats sé arís agus arís eile. Mar sin, tá sé seo i ndáiríre deis iontach do roinnt de chineál looping a thógáil. Fógra go bhfuil mé cineál a ghearradh cúinne anseo. Fógra go bhfuil mé ag rá "98 buidéal beorach ar an mballa, 97 buidéal beorach ar an mballa, "agus go raibh ach mar sin nuair a fháil againn le ceann amháin buidéal beorach, ní féidir liom a bheith buartha faoi ghramadach Béarla. Ach is féidir linn a shocrú seo chomh maith le beagán de más rud é riocht, b'fhéidir. Má tá an uimhir uatha, dul ar aghaidh agus "buidéal" a rá, ar shlí eile má tá sé iolra, rá "buidéil". Ach do anois, tá mé ag a ghearradh go hiomlán go cúinne. Mar sin a ligean ar a fheiceáil cad tá muid fuair anseo. Mar sin, tá muid fuair roinnt tuairimí ag an mbarr. Tá mé ag lena n-áirítear an dá leabharlann, mar a againn curtha go coitianta. Agus lig anois scrollbharra dom síos go dtí an chéad línte iarbhír de chód. Thosaíonn Líne 17 uaire is mó. Líne 21 agus 20 tá cé mhéad buidéal beorach a bheidh ann? Agus ansin glaoch orm GetInt. Agus anois tá mé beagán de seic sanity. Mar sin, tá sé seo le coinbhinsiún go beidh orainn tosú anois a ghlacadh chun níos déine a sheiceáil an úsáideora ionchur. Uaireanta, tú ní hamháin ag iarraidh a spreagadh arís iad agus arís agus arís eile. Má tá an t-úsáideoir scriúnna suas agus nach comhoibriú, fíneáil. Scoir agus ní a dhéanamh a déileáil leo. Agus mar sin go bhfuil an méid mé ag déanamh anseo. Má tá n lú ná 1, tá mé ag dul ach a yell ag an úsáideoir, "Tá brón orm, a dhéanann aon chiall." Agus ansin tá mé ag dul go treallach ar ais 1. Mar sin, arís, tá sé seo ach coinbhinsiún a fháil a úsáidtear chun. Chun anois, a chur air ar chreidimh. Ach go dtí anois, tá muid i gcónaí ag filleadh 0, mar gheall ar tá muid a dúirt filleadh 0 seasann cad é? LUCHT ÉISTEACHTA: Rath. DAVID J. MALAN: Rath, sin uile. Mar sin anois go bhfuil muid ag tosú ar deireadh a smaoineamh ar neamh-rath - i bhfocail eile, cásanna chúinne, coinníollacha earráid - anois tá mé soláthar gan teorainn, nó ar a laghad 4000000000 rudaí is féidir gur féidir dul go mícheart i mo chlár. Agus is féidir liom tosú a shannadh dóibh uimhreacha aonair. Anois, go ginearálta is leor é a thabhairt ar ais díreach rud éigin eile seachas 0. Mar sin, táimid ag dul a thabhairt ar ais go simplí 1 do anois. Ach tá an chúis ar ais 1 go luaithe is a fhilleann tú 1, buille faoi thuairim cad a tharlaíonn don chuid eile den chlár? Stopann sé. Sin é. Dá bhrí sin tá an bhfíric go bhfuil mé ar ais 1 go héifeachtach gearr-circuiting an chláir i gcrích ionas go Beidh rud ar bith faoi bhun líne 27 ar aghaidh ag forghníomhaitheach. Chomh luath agus tuairisceáin is mó, is é sin é. Gach ceart, mar sin má dhéanann an t-úsáideoir le chéile agus a bhaint amach againn líne 30 toisc chlóscríobh siad i roinnt dlisteanach, is anseo ar mo cur i bhfeidhm an amhrán. Mar sin, mé a phriontáil amach ar dtús le carachtar líne nua, ach le haghaidh aeistéitic. Tá mé anois le haghaidh lúb. Agus faoi deara mé rudaí a dhéanamh ar giotán d'ordachán éagsúla. Ní féidir liom a dhéanamh níos lú ná, ní féidir liom a dhéanamh + +. Féidir liom a rá in ionad athróg a thúsú i, leag sé cothrom le n, an uimhir an t-úsáideoir clóscríofa i, a dhéanamh ansin an méid seo a leanas, mar sin fada is atá i níos mó ná 0, ansin i - nuair atá tú críochnaithe amháin atriall den lúb. Mar sin, is féidir linn a comhaireamh síos ag baint úsáide as do lúb chomh maith. Anois, tá an tseachtain seo go leor i bhfad aon stuif anois, le printf. Mar sin, cló "buidéil d% de na beoir ar an bhalla." Priontáil "% d buidéal beorach. "" Tóg ceann síos, tá sé pas a fháil timpeall. "Priontáil "% D buidéil beorach ar an bhalla." Mar sin, tá sé fós d%, ach faoi ​​deara go bhfuil an argóint go bhfuil printf ag athrú. Tar éis an camóga, tá mé i, mar ba mhaith liom a rá 99. Tar éis seo camóg, tá mé i, mar ba mhaith liom a rá 99. Tar éis seo camóg, tá mé i - 1, mar ba mhaith liom a rá 98 i an leagan den chéad uair, agus mar sin de. Agus anois síos anseo, tá mé díreach tar éis roinnt cainte dúr beag. Agus ansin líne 42, mé ar ais 0 de réir an ghnáis, signifying go Tá gach rud ceart go leor. Mar sin, cad má goofed mé? Cad botún coitianta anseo a bheith? Bhuel, cad má dúirt mé de thaisme go maith, ba mhaith liom a chomhaireamh síos go dtí 0, ba mhaith liom 0 buidéal beorach ar an mballa? Mar sin, a rá liom, tá mé níos mó ná nó cothrom le 0. Cad atá ag dul a bheith ar an symptom go bhfuil mé a fheiceáil anois má recompile mé beer1 agus rith sé? LUCHT ÉISTEACHTA: Diúltach. DAVID J. MALAN: Sea, tá sé gonna dul diúltach. Is é seo an earráid as-ar-cheann, ar thar a bheith botún coitianta a dhéanamh. A ligean ar dul i ndáiríre ar ais go dtí an fhuinneog críochfort agus é a dhéanamh anseo, ionas gur féidir linn níos mó a fheiceáil ag an am. Cuir isteach, 99 buidéal beorach. Dún, ach chuaigh muid riamh go beagán i bhfad ró. Chan muid an t-amhrán freisin síos go dtí seo, den sórt sin go bhuail muid anois ar an uimhir dhiúltach. Mar sin, ní oibríonn sé go maith. Gach ceart, ionas gur féidir linn a shocrú go héasca go bhfuil ag dul ar ais chuig an mbealach a bhí sé aon uair amháin. Ach cad iad roinnt deiseanna anois do fheabhsú? Bhuel, lig dom a oscailt beer2.c agus scrollaigh síos anseo agus a ghlacadh breathnú ar an leagan seo. Cad é an chéad rud a jumps amach ag tú mar éagsúla sa leagan seo anseo? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Yeah, mar sin nach bhfuil níos mó i, mar gheall ar tharla sé dom a fhios agat cad, tá mé ag iarraidh an t-úsáideoir le haghaidh n, agus ansin tá mé leagan cothrom liom n, agus ansin tá mé ag athrú i, ach ní mé touching n arís. Mar sin, cad a bhí an heck an pointe de tú a leithdháileadh eile 32 giotán a dtugtar mé díreach ionas gur féidir liom a bheith athróg difriúil? Mar sin, sa chás seo, tá mé saghas aithnítear go bhfuil gá gné dearadh. Agus tá mé ag dul anois a rá cé go bhfuil n níos mó ná 0, téigh amach romhainn agus a phriontáil an t-amhrán céanna, ag dul ar n printf mar an an dara hargóint, agus n - 1 mar an dara hargóint síos anseo. Agus ansin ar gach atriall an lúb, dul ar aghaidh agus díreach decrement n féin. Anois, feidhmiúil, an clár seo ag dul a bheith comhionann. Más rud é cineál mé i 99, a thosaíonn n ag 99. Decrement I, decrement, decrement, decrement. Tá mé ag dul a fháil go léir ar an mbealach síos go dtí "Ceann buidéal beorach ar an bhalla, ar cheann buidéal beorach. Tóg ceann síos, tá sé pas a fháil timpeall. 0 buidéal beorach ar an bhalla. "An deireadh, mar go raibh mé a fháil ar an riocht ceart. Tá sé níos mó ná 0. Ní raibh mé a dhéanamh an botún. Dá bhrí sin tá a fearr, leagan amháin nó leagan dhá? Mar sin, chuala mé a bunch de murmurings ar feadh dhá. Cén fáth dhá? Cad é sin? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Oh, maith go leor. Mar sin, ní bheidh sé dul faoi bhun 0, ach cuimhnigh, i leagan amháin, an Ní raibh leagan ceart bunaidh dul faoi bhun 0 oiread. Mar sin, cuimhnigh gurb é seo an leagan ceart. Mar sin a ligean ar a laghad i gcomparáid leis an dá leagan ceart. Cad é an argóint i bhfabhar leagan dhá huaire, mmm, níos fearr? Yeah? LUCHT ÉISTEACHTA: Úsáideann sé spás níos lú. DAVID J. MALAN: Maith go leor, agus mar sin úsáideann sé níos lú spáis, ceart? De bharr an méid a úsáidtear leagan amháin 32 giotán le haghaidh n, agus ansin ceann eile 32 giotán do i. Leagan dhá úsáideann ach 32 giotán le haghaidh n, ionas go cosúil le bheith ina móide. Smaointe eile? An bhfuil aon duine ag iarraidh a argóint i bhfabhar amháin? Yeah? LUCHT ÉISTEACHTA: Tá tú a úsáid líne breise de cód le haghaidh n -. DAVID J. MALAN: Maith go leor, cinnte. Mar sin, go cothrom. Mar sin, seo ach, ar a laghad dom - Ciallaíonn mé, seo mothaíonn ndáiríre Messier beag, ar an bhfíric go Ní féidir liom a shórtáil de Cuach gach ceann de mo loighic i gceann líne álainn, an do lúb, is féidir leis an do lúb. Anseo, tá mé de chineál ar a tack ar an n - ag deireadh an lúb, mar gheall ar tá sé loighciúil is gá. Ach intinn sé de chineál ar dom an bealach mícheart, ach toisc é a Dealraíonn sé ar leith ó na loighic suas anseo, cé, arís, tá sé riachtanach. Smaointe eile? Yeah? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Yeah. Mar sin, cad má tá tú ina ionad sin, ag deireadh an t-amhrán, ag iarraidh a phriontáil amach arís ainm an amhrán? Cosúil le "Go raibh maith agat as imirt 99 buidéal beorach", nó rud éigin amaideach mar sin? Ach tá an pointe, bhí tú rochtain ar an luach bunaidh. Ós rud é go bhfuil tú mutated nó a athrú n ar gach atriall agus dá bhrí sin tá scrios a luach bunaidh ciallaíonn tá tú nach féidir a dhéanamh go díreach ag an deireadh. Anois, fhéadfaí a rá, táimid léir nach bhfuil ag iarraidh a dhéanamh go sa chlár seo. Mar sin, a cares? Ach go pointe an-bailí. Agus a bheith macánta, níl i ndáiríre aon duine ceart a fhreagairt anseo. Tá siad araon go cothrom ceart. Raibh mé in ann a bheith cinnte bíodh bealach. Beidh mé a rá go bhfuil, go ginearálta, tá sé ina phrionsabal maith má tá tú D'iarr an t-úsáideoir le haghaidh roinnt luach agus a stóráil tú i athróg cosúil le n, ach saghas ar phrionsabal, is dócha go maith a choinneáil go timpeall. Agus ba mhaith leat aon sonraí a mutate arís agus arís eile, ach a thabhairt duit féin cóip den athróg, ach ionas go mbeidh tú rochtain a fháil ar an bunaidh. Tá tú ag caitheamh 32 giotán níos mó, ach tá an réaltacht sin ríomhaire, tá cosúil le, dhá ghigibheart de RAM na laethanta seo, agus táimid ag quibbling níos mó ná 32 giotán? Tá sé an ní a leithéid de déileáil go mór. Agus fiú amháin ar an ngléas seo anseo, le leath gig nó gigabyte de RAM, 32 giotán i gcoinne 64 giotán, ní den sórt sin le déileáil go mór. Cinnte lá atá inniu ann, tá sé ag dul a bheith ar bhealach faoi léigear ag an méid ar an gclár féin, a bhfuil ag dul a bheith cúpla céad cilibheart, más rud é nach bhfuil cuntas linn cúpla, na laethanta seo. Imní sin réasúnta, aon duine freagra ceart. Ach ar a laghad iad siúd na smaointe ba chóir tús a chur chun dul trí d'intinn? Toisc i pset 0, cé muid i ndáiríre ag súil amháin cruinneas, nó ar a laghad shéanadh bugs éagsúla a a bheadh ​​agat a bhíonn, de réir mar a théimid ar aghaidh, tá dearadh ag dul a bheith gné eile lárnach, idir scríobh cód agus freisin ar ár measúnú cód. Agus mar sin ar a laghad a thabhairt smaoinimh a rudaí mar seo. Agus ní hamháin mar gheall ar oibreacha rud éigin chiallaíonn tá sé go maith, ní chiallaíonn sé dea-dheartha. Agus sin ar cheann de na rudaí na comhaltaí teagaisc agus Beidh Leagann fhadhb cabhrú tease sinn le himeacht ama. Bhuel, cad faoi, a ligean le rá, an leagan anseo? Lig dom a dhéanamh rud beag sexy anseo i láthair. An Chéad in iúl dom a fháil haitheantas coibhneasta de seo. Agus lig anois ar shocrú an gceist seo gramadaí. Mar sin, sa leagan seo, ba mhaith liom a shocrú ar an ngramadach ionas go, seachas rá ach s parenthetical, cosúil le "buidéal" nó "buidéal" - Níl mé ag iarraidh a ghearradh go cúinne - Ba mhaith liom freisin a phriontáil dinimiciúil amach an focal "buidéil" nó "buidéal", rud a úsáid a bhaint as na% s ionadchoinneálaithe lá atá inniu ann. Mar sin, is gá dom a sheiceáil go coinníollach cad é an luach i. Agus má tá sé 1, ba mhaith liom a rá "buidéal", agus má tá sé rud ar bith eile, ba mhaith liom a rá "buidéal". Mar sin a ligean iarracht seo a dhéanamh. Mar sin, más i == 1, ansin lig dom dul ar aghaidh agus a dhearbhú - De dhíth orm teaghrán, a ligean mar sin a dhéanamh dom s1 téad, mar tá sé an teaghrán chéad cúram agam faoi ceart anois. Tá mé ag dul a rá "buidéal". Agus ansin, a ligean ar a fheiceáil, téad S2 - agus beidh mé a mhíniú i gcás mé ag dul i láthair - "Buidéil." Mar sin, chun cuimhne go bhfuil, i amhrán seo, ní mór dúinn a bheith in ann a phriontáil rudaí, dhá focail éagsúla d'fhéadfadh a bheith. Mar sin, má táimid ar ais anseo, faoi deara go nuair a fháil againn chun sampla seo anseo, "dhá buidéal beorach ar an mballa, dhá buidéal beorach, ceann amháin síos, pas é thart ", ba mhaith liom an ceathrú líne a rá anois "buidéal amháin beorach ar an bhalla ". Mar sin, is gá dom a chinneadh, ar mhaith liom a rá" buidéil "nó "Buidéal"? Mar sin, tá mé ag dul a rá treallach, gach ceart, Tá mé ag dul a dhearbhú anois athróg ar a dtugtar s1, téad amháin, tá go bhfuil dul chun plugged fháil i anseo agus anseo freisin, mar go bhfuil na focail sin i gcónaí comhionann, ach mar gheall ar an nádúr an t-amhrán. Agus tá mé ag dul chun glaoch S2 cibé focal mhaith liom a deireadh thiar beidh sé le feiceáil síos anseo. Anois, literally, 99 uair as 100, tá sé ag dul a bheith ar an céanna sa dá de na cásanna sin, toisc go bhfuil 3 iolra, is é 2 iolra, is é 4 iolra. Ach sa chás seo chúinne, nuair a fháil againn go dtí 2 agus ansin 1, nó fiú 1 agus ansin 0, ní mór dom an loighic. Mar sin, tá mé roinnt ama a chaitheamh i mo cód a fháil an ceart sin. Mar sin, má dhéanann mé é seo, más rud é i == 1, ansin s1 leagtar cothrom le "buidéal" agus S2 cothrom le "buidéil", mar go mbeidh sé seo a bheith le haghaidh 1 Beidh buidéal, agus tá sé seo a bheith ann do 0 buidéil. Agus seo anseo, cad ionadaíocht a dhéanamh? Just a bheith soiléir. Is é seo ach a comment. Mar sin, ciallaíonn an bhfíric gur féidir leat a bheith amháin-líne tuairimí agat Is féidir le trácht a dhéanamh do chód mar seo, ach eile coitianta paradigm, freisin, go bhfuil má tá tú frása Super-ghearr go ba mhaith leat tú féin a chur agus tá sé ach níos inléite a chur sé ceart ag an deireadh na líne de chód, is féidir leat go hiomlán rud éigin a dhéanamh mar seo. Mar sin anois cad má dhéanann mé é seo? Eile más rud é nach bhfuil i cothrom le 1. Mar sin, is ionann Bang - Tá pointe exclamation ar a dtugtar "Bang". Mar sin, Bang = 1. Mar sin, más rud é nach bhfuil i cothrom le 1, cad ba mhaith liom a ionad a dhéanamh? Bhuel, an chéad fhocal mhaith liom a bheith cad é? Mar sin, ba chóir go mbeadh teaghrán 1 "buidéil" do bhuidéil iolra, agus ansin beidh sé seo a bheith iolra "buidéil" chomh maith, le haghaidh anois. Agus beidh orainn a fheiceáil má thagann sin i ndáiríre ar ár gcumas áit ar mhaith linn dul. Mar sin anois má scrollú mé síos anseo, faoi deara go bhfuil mé ag plugging i ní hamháin i, ach s1. Tá mé ag plugging i i agus s1. Agus ansin síos anseo, tá mé lúide 1, a bhfuil mar an gcéanna sula, ach S2. I bhfocail eile, ba mhaith liom an focal Béarla a athrú bunaithe ar ar an loighic. Anois, níl cheana féin roinnt fadhbanna sa chód. Cad é briste amach cheana féin an geata anseo? Yeah? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: díreach. Mar sin, tá mé a shárú cheana féin ar an ceacht a bhfuil raon feidhme. Mar sin, tá mé dhearbhú S1 agus S2, ach mé a rinneadh taobh istigh de braces gcuach, rud a chiallaíonn yeah, beidh an gcód seo ag obair suas go dtí líne 42, ach chomh luath agus bhuail mé líne 43, buille faoi thuairim cad aon bhfuil ann a thuilleadh? Bhuel, buille faoi thuairim cad a thuilleadh i raon - ní s1 nó S2. Mar sin, ní mór dúinn a shocrú seo. Mar sin, lig dom a scriosadh na dearbhuithe. Agus beidh mé saoire na hainmneacha athraitheach agus a scriosadh anseo agus seo a scriosadh anseo. Agus ba chóir cén línte Dearbhaím gur na rudaí seo? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Yeah, is dócha mar sin ceart suas anseo, 33-ish. Mar sin, s1 téad agus ansin téad S2. Agus casadh sé amach, is féidir liom seo a dhéanamh. Má tá tú ag dearbhú dhá athróg den chineál céanna, is féidir leat i ndáiríre a úsáid ach camóg agus é sin a dhéanamh i C. Gach ceart, mar sin anois tá mé dhá athróg - S1 agus S2. Tá mé ag shannadh dóibh luachanna sna coinníollacha anseo, nó i anseo. Agus ansin tá mé ag baint úsáide as dóibh síos thíos. Cé chomh maith go bhfuil seo ag dul anois a bheith ag obair? Bhuel, tá sé fós Buggy beag, ach a ligean ar a laghad a fheiceáil cé chomh cóngarach agus atá déanta againn gotten. Mar sin, lig dom dul ar aghaidh agus beer3 a dhéanamh. An bhfuil sé seo beer3? Yep, tá sé seo beer3. Agus lig anois dom dul ar aghaidh agus beer3 rith. 399 99. Is féidir linn a skip is dócha chuid is mó acu. Agus síos anseo, ag féachaint ar sin. "Ceann buidéal beorach ar an mballa, buidéal amháin beorach, a chur ceann síos, pas é thart, 0 buidéal beorach ar an bhalla. " Ach tá mé ag tarraingt do aird a thabhairt ach leath den réiteach. Cineál ar screwed suas anseo. Mar sin, is cosúil a thagann chun cinn na cásanna chúinne nuair is ionann agam cad dá luach? LUCHT ÉISTEACHTA: 2, 1. DAVID J. MALAN: 2 agus 1. Níl sé 1 agus nach 1. Tá sé i ndáiríre ach an dá deireanach rann-so ar an amhrán. Mar sin, cad ba mhaith liom a ionad a dhéanamh? Mar sin, cosúil mé a bheith gafa leis an gcás má tá mé == go 1, ansin an chéad fhocal "buidéal", ach an focal dara Is é "buidéil". Ach anseo, ba mhaith liom a athrú seo a bheith == 2. Agus má tá sé seo an cás, cad ba mhaith liom an chéad fhocal a bheith? LUCHT ÉISTEACHTA: "Buidéil". DAVID J. MALAN: "Buidéil", agus mar sin ar feadh dhá buidéil. Agus ansin ba chóir an focal anseo a bheith - LUCHT ÉISTEACHTA: "Buidéal". DAVID J. MALAN: "Buidéal", uatha. Ceart go leor, a ligean ar zúmáil amach, dul ar ais thar anseo, ath-reáchtáil a dhéanamh, ath-reáchtáil beer3, cineál 99 arís. Maith go leor, "locht Deighilt (lárnach dumpáilte)." Cad atá déanta mé mícheart? LUCHT ÉISTEACHTA: Ní gá duit a bhfuil luach [INAUDIBLE]. DAVID J. MALAN: Ah, pointe den scoth. Gach ceart, mar sin cad atá cearr anseo? Mar sin, locht deighilt, agus táimid ag dul i ndáiríre a fheiceáil sé seo go leor le cúpla uair sa todhchaí, d'aon turas. Ach do anois, cad a chiallaíonn sé i ndáiríre? A locht deighilt ciallaíonn beagnach i gcónaí go bhfuil tú ar bhealach iarracht chun rochtain a chuimhne, RAM i do ríomhaire, nach bhfuil tú féin, nach bhfuil tú d'iarr iarbhír an córas oibriúcháin do. Mar sin, sa chás seo, faoi deara cad atá déanta agam, a bhfuil lochtach i mo loighic. Tá mé shanntar S1 agus S2 luach má bhíonn i 1. Déanta agam freisin go má bhíonn i 2. Ach nach bhfuil mé déanta air i líon gan teorainn eile féidearthachtaí - go háirithe, 3 nó 4 nó ponc, ponc, ponc, 99. Mar sin, d'fhéadfadh duine a shocrú le haghaidh seo a bheith díreach ligean bhfuil riocht eile. Agus lig dom dul i anseo agus a rá s1 ionann - cad ba cheart é a bheith anseo? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: "Buidéil", mar gheall sa chás coitianta, tá sé ach an rud céanna. Mar sin, is ionann ceanglófar, comharthaí athfhriotail, "buidéil." Mar sin, le haghaidh iolra buidéil, agus ansin suas anseo, do bhuidéil iolra. Maith go leor, mar sin anois a ligean dom dul ar ais go dtí mo fhuinneog críochfoirt, recompile, ath-rith sé. 99. Whew. Agus a ligean ar dhéanamh le seiceáil sanity tapaidh. Go teicniúil, ba mhaith linn ag iarraidh a léamh gach ceann de na a dhéanamh cinnte go tá siad ceart, ach ligean ar breathnú ar ar a laghad na culprits aitheanta. 3 buidéil, buidéil 2, 2 buidéil, 1 buidéal, buidéal 1, 0 buidéil. Is cosúil go againn a bheith ar a laghad seasta é do anois. Ach tá an ghabháil anseo go cad ina praiseach Dia uafásach é seo ach chun an fhadhb a dúr aon-charachtar mion gramadaí. Mar sin, tá de chineál ar chúis gur Ghearr mé an chúinne níos luaithe, mar tá sé ach annoying go hiomlán go bhfuil a scríobh an cód i bhfad. Ach casadh sé amach go níl bealaí beagán níos galánta de chur in iúl an rud ceannann céanna. Agus is féidir linn é seo a dhéanamh mar seo a leanas. Lig dom seo a fhágáil ar an scáileán ar feadh nóiméad agus a thabhairt isteach rud éigin ar a dtugtar mar oibreoir trínártha. Tá an cineál líneáil aon-a tá i gceist ach a dhéanamh ar ár tá cónaí ar sexier beag, mar a bhí geallta. Agus mé ag dul chun é seo a leanas. Tabhair dom teaghrán a dtugtar s1, agus lig mise shannadh a leanas mar. (I == 1)? "Buidéal", ar shlí eile "buidéil". Faigheann Teaghrán S2 (i == 2)? "Buidéal", ar shlí eile "buidéil". Mar sin, cad ansin an difríocht anseo? Is féidir leis na dhá líne de chód, Áitíonn mé, in ionad an praiseach ar fad. Mar sin, mé glao sé praiseach, ach toisc intinn sé de chineál ar dom bealach mícheart go bhfuil sé línte sin a lán de chód. Níl mícheart. Níl sé deartha dona. Cosúil, is é seo breá ceart agus breá breá. Ach faigheann códú tedious má tá tú a chur in iúl duit féin ionas diabhal go sonrach arís agus arís agus arís le simplí scéal mar seo. Mar sin, tá roinnt aicearraí C, mar seo. Mar sin, tá sé seo go bunúsach ag rá a dhearbhú go bhfuil ar a dtugtar teaghrán s1 agus shannadh sé mar an luach nó an luach seo más rud é i == - brón orm, ba chóir dom a rá seo níos soiléire. A dhearbhú go bhfuil S1 athraitheach, a shannadh an luach seo é má tá sé seo fíor. Seachas sin, a shannadh é an luach. Mar sin, i bhfocail eile, tá an cineál seo ar bhealach amháin-líne ag rá má tá rud eile, ach ag déanamh le sannadh feadh na slí. Mar sin, más rud é i 1, ansin dul ar aghaidh agus an "buidéal" glaoch. Agus ansin é seo eile, ghlaoch air "buidéil". Idir an dá linn, S2, an focal an dara gur gá dúinn a shainiú, má bhíonn i 2, beidh muid ag leagtar S2 le "buidéal". Seachas sin, tá sé leagtha síos go dtí "buidéal". Agus cad a Ciallaíonn sé seo anois is féidir liom dul tríd an agus gach ceann de a scriosadh na línte cód. Agus nuair a rá liom, beagán ridiculously, go bhfuil sé seo anois sexier, tá sé sexier i saghas chiall stíle. Ós rud é go feidhmiúil, tá an cód ag dul iarbhír a dhéanamh ar an rud ceannann céanna. Agus cé go bhféadfadh sé cuma beagán cryptic ar dtús Sracfhéachaint, toisc nach atá feicthe againn seo thógáil roimh, B'fhearr liom a mhaíomh go raibh sé ag dul ar deireadh thiar a bheith amhlaidh i bhfad níos mó inléite agus mar sin i bhfad níos éasca le haghaidh linn daoine a shórtáil de thuiscint, mar anois is féidir leat a léamh ach an Cód go léir ar líne amháin. Tá sé fós den chineál céanna i spiorad le na más rud é, nuair is riocht agus ansin é seo an méid atá taobh istigh den má bhíonn agus an cad atá taobh istigh den eile. Ach is féidir linn é seo a díreach i bhfad níos elegantly. Agus má liom dul anois ar ais go dtí mo críochfoirt, tar éis scriosadh gach de na línte agus ionad iad le díreach dá, recompile, ath-reáchtáil buidéal beorach a bhfuil 99, fógra go bhfuil mo gramadach go bhfuil, i ndáiríre, go fóill ceart. Mar sin, arís, rud éigin a thosú. 2 buidéal beorach, 1 buidéal beorach. Breathnaíonn ceart. Yeah. Mar sin, tá muid ag réiteach gonta i bhfad níos mó. Mar sin, seo, freisin, mar a fhaigheann tú níos compordaí ní le C, gá leis an pset chéad nó fiú an dara, ach realize gur féidir na constructs ar ár gcumas chun rudaí a dhéanamh riamh níos elegantly. Anois, a ligean a dhéanamh ach rud amháin eile anseo. Lig dom dul ar aghaidh agus a oscailt return1.c suas. Anois, a ligean tús a réiteach fadhb eile ar bhealach a ligeann dúinn a scríobh cód níos sofaisticiúla. Mar sin tá anseo le clár beag simplí a bhfuil cuspóir sa saol is é sin le luachanna INCRIMINT. Agus i ndáiríre, a ligean ar ghlacadh le céim siar. Lig a dhéanamh dom an láimh. Lig dom a áireamh agus a slánuimhir is mó (neamhní). Agus lig dom glaoch ar an increment.c. Agus cad a dhéanann mhaith liom a dhéanamh? Tá mé ag dul chun dul ar aghaidh agus a rá rud éigin cosúil le - beidh muid ag glaoch ar an líon mar an gcéanna - x slánuimhir. Mar sin, faigheann x o 2; x printf% d, líne nua, x. Mar sin, tá mé ag clóscríobh go tapa, ach saghas stuif ar an eolas anois. Ansin mé ag dul a dhéanamh x + +. Ansin mé ag dul a phriontáil go abairt chéanna arís. Agus ansin tá mé ag dul a thabhairt ar ais 0 díreach a scor ar an gclár. Gach ceart, mar sin tá sé seo le clár incrimintí roinnt. Tá sé seo ag dul ar dtús chun rud éigin a thúsú go dtí 2, agus ansin tá sé dul chun incrimint air agus é a phriontáil arís. Mar sin a ligean ar siúl incriminte, clár thar a bheith simplí. Ach is dócha anois gur mhaith liom a ciúb ar an luach, mar sin a dhéanamh rud éigin beagán treallach. Agus ba mhaith liom i ndáiríre a dhéanamh x faigheann an ciúb de. Mar sin raibh mé in ann úsáid a bhaint as rud ar a dtugtar an fheidhm Filleann POW, ach ní féidir liom i ndáiríre tá a fhios i gcás gur go fóill. Mar sin, tá mé ag dul chun é seo a ar an mbealach sean-aimseartha. x amanna is ionann seo x amanna x amanna x. Mar sin, tá mé ag cubing an luach, a iolrú é féin arís agus arís agus arís eile, a fháil ionas go mbeidh muid ar an chumhacht de 3 sa chás seo. Mar sin, anois, ba cheart an líon ba chóir dom a phriontáil a bheith, mar beidh orainn a fheiceáil anseo - a dhéanamh incriminte, mar sin tá sé i ndáiríre ní incrimint i ndáiríre níos mó, ach beidh muid a fhágáil an t-ainm amháin - 2 agus ansin 8. Anois, ní mór dúinn an tús deis a thabhairt do refinement anseo, trína an rud cubing de iolrú ar líon D'fhéadfadh sé féin féin féin mothaíonn mar seo a bheith díreach úsáideach mar fheidhm, i bhfad mar chinn duine éigin bliain ó shin - a fhios agat, de chineál ar úsáideach má Suíonn ar cheann de dúinn síos agus scríobhann printf ionas gur féidir leis an gcuid eile den domhan a úsáid, cén fáth nach bhfuil muid ag suí síos agus feidhm a dtugtar ciúb scríobh go ndéanann an cubing dúinn mar sin nach bhfuil againn a láimh chur i bhfeidhm ar an nóisean de luachanna cubing anseo? Mar sin, sampla simplí, ach a ligean ar dul ar aghaidh agus a úsáid é seo mar deis seo a scríobh ár n-fheidhm féin. Go dtí seo dá bhrí sin, tá muid a úsáid ach amháin is mó, agus atá againn a úsáidtear eile nach bhfuil daoine le feidhmeanna, ach tá muid i scríbhinn ár gcuid féin. Mar sin anseo a théann muid. Tá mé ag dul chun dul ar aghaidh agus feidhm a dtugtar ciúb a scríobh. Agus tá mé ag dul go bhfuil sé ionchur. Mar sin, tá a ionchur ag dul a bheith ina slánuimhir. Agus cad sé ag dul a dhéanamh? Tá sé seo ag dul a dhearbhú aschur slánuimhir = ionchur amanna ionchur amanna ionchur. Agus ansin tá sé ag dul ar ais go aschur. Agus ansin tá mé a bheith sainiúil anois. Tá an fheidhm ag dul ar ais ina slánuimhir. Mar sin, tá anseo ansin conas gur mhaith leat a scríobh do fheidhmeanna féin. Tá tú cinneadh a dhéanamh an chéad cad atá ar an ainm do fheidhm ag dul a bheith. Agus go ginearálta, tá rud éigin míniúcháin go maith, mar sin beidh mé glaoch sé ciúb. Ansin tá tú a shonrú cad tá sé ag dul a thabhairt ar ais, an méid a aschur ag dul a bheith. Agus nach bhfuil againn roghanna go leor go fóill. Int, ruabhric, snámhphointe, bool, téad. Chun anois, tá mé ag dul chun bata le slánuimhir, mar ba mhaith liom é a thabhairt ar ais slánuimhir. Ansin tá tú a shonrú cad iad na ionchuir, más ann,. Agus má thógann ciúb argóint a thógann, rud éigin idir lúibíní, caithfidh tú a thabhairt go bhfuil argóint ainm ionas go is féidir leat glaoch sé rud éigin mar atá tú cur chun feidhme nó scríobh an fheidhm seo, agus tá tú a thabhairt dó i ndáil le cineál, a seo cás ag dul a bheith slánuimhir. Mar sin, i mbeagán focal, tá ciúb feidhm a thógann slánuimhir mar ionchur agus tuairisceáin slánuimhir mar aschur. Mar sin, cad é a dhéanamh leis an ionchur? Bhuel, i líne 14, dearbhaím aschur athróg ar a dtugtar, agus mé shannadh an luach, ionchur amanna ionchur amanna ionchur. Agus ansin mé ar ais aschur. Mar sin, conas is féidir liom seo a úsáid ansin? Cad a dhéanfaidh mé a athrú ar na carachtair béim ar líne 7 a bheidh, dar leat? LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Yeah, mar sin ciúb x. Dá bhrí sin tá x athróg, rud a chiallaíonn tá sé roinnt luach. Fortunately, tá sé de chineál slánuimhir. Agus toisc go bhfuil x ina slánuimhir, a chiallaíonn gur féidir liom pas a fháil sé i ciúb. Agus cé go bhfuil mé ag sáraitheach an luach ar x leis an luach x ciúb, tá mar a bheidh, go dtí seo, aon uair a Tá comhartha comhionann agus líne de chód, an stuif ar dheis Faigheann chun báis agus faigheann sannta ansin go dtí an luach ar chlé. Dá bhrí sin tá an t-ordú na n-oibríochtaí mar a bheadh ​​súil againn. Mar sin, a dhéanann an obair seo? Bhuel, lig dom dul síos anseo. Lig dom a oscailt suas mo fhuinneog teirminéil. Lig dom a dhéanamh a dhéanamh incriminte, isteach. Is é "dearbhú Intuigthe d'fheidhm 'ciúb' neamhbhailí i C99. "Mar leataobh, tagraíonn C99 ar an C teanga mar a bhí sé sainithe i 1999, a bhí ina nuashonrú ar an leagan as 1989, atá cothrom le dáta níos mó ná an bunaidh. Mar sin tá go léir go bhfuil acmhainn. Mar sin, cad a chiallaíonn sé go bhfuil "dearbhú intuigthe de Tá feidhm 'ciúb' neamhbhailí? "Tá sé ceart anseo. Tá sé ceart ann ag teacht 12. LUCHT ÉISTEACHTA: [INAUDIBLE]. DAVID J. MALAN: Cad é sin? LUCHT ÉISTEACHTA: Níl sé roimh. DAVID J. MALAN: Níl sé roimh. Mar sin, is é seo an rud. C Is de chineál ar dúr, nó tiomsaitheoirí C atá de chineál ar dúr. Siad i ndáiríre a dhéanamh ach an méid a insint duit iad a dhéanamh. Agus tá siad, go háirithe, a léamh ach amháin do barr cód a bun, chlé go deas. Mar sin, má tá an Tiomsaitheoir, clang, léamh do chód, líne 1, tá sé figiúirí amach conas é seo a dhéanamh. Ó thagann, anseo is mó. Maith go leor, lig dom dul ar aghaidh agus x athraitheach a dhearbhú. Lig dom a phriontáil rud éigin. Líne 7, cad é an heck ciúb? Nach bhfuil sé dearbhaithe i stdio.h. Ní chuireann sé teacht le C. Tá mé aon smaoineamh cad atá le déanamh. Agus mar sin bannaí clang díreach agus Éirigh leis an teachtaireacht earráide. Mar sin, is féidir linn seo a shocrú i gceann cúpla bealaí. Is féidir linn a mhúineadh clang cad é ciúb ag díreach ag gluaiseacht i gcás an dearbhú go bhfuil. Mar sin, gearrtha agam agus pasted sé ar bharr na craoibhe is mó. Anois realize go díreach toisc go bhfuil príomh thuilleadh gcéad dul síos, tá sé fós chun báis de réir réamhshocraithe. Main Is é is mó. Tá sé an t-ainm feidhm réamhshocraithe. Ní chuireann sé cuma cén áit a bhfuil sé i gcomhad. Ach ar a laghad anois tá clang feicthe ciúb roimh úsáid mé é. Mar sin a ligean ar a fheiceáil má tá clang happier anois. Déan incriminte, raibh sé thiomsú an am seo. Lig dom a reáchtáil incrimint. Agus go deimhin, is cosúil a bheith ag obair. Anois, is féidir leat teacht suas le cásanna ar deireadh thiar nuair a nach bhfuil sé indéanta a chur ar gach feidhm thuas gach feidhm eile. Feicfidh tú a fháil greamaithe sa lúb gan teorainn i ndáiríre, más mian Guy seo a bheith anseo ach Guy mór a bheith ann. Mar sin, nach obair i gcónaí. Mar sin, buíochas le Dia, tá C ar réiteach níos galánta. Tá mé ag dul a chur ar an ais nuair a bhí sé, mar gheall ar go díreach mé Is fearr, mar ábhar bprionsabal, go príomh i gcónaí ag an mbarr, mar tá sé ach deas a fheiceáil cad an clár seo a dhéanann de réir réamhshocraithe. Agus cad mé ag dul a dhéanamh suas anseo a dhearbhú cad atá ar a dtugtar fréamhshamhail. Tá mé ag dul a ath-dhearbhú m'fheidhme ciúb ag literally chóipeáil agus a ghreamú. I ndáiríre, ní go literally. Mar sin, literally chóipeáil agus a ghreamú líne 15 suas os cionn líne 6. Ní chuireann sé cuma cén líne a chríochnaíonn suas seo ar. A tharlaíonn sé a bheith ar líne 4. Ach tá sé a bheith os comhair is mó. Ach faoi deara an difríocht. Líne 4 foircinn le leathstad, rud a chiallaíonn hug, Clang, glac mo focal le haghaidh sé gur ann do fheidhm ar a dtugtar ciúb a thógann an slánuimhir agus tuairisceáin ina slánuimhir. Ach níl mé ag dul a insint duit cad é go fóill. Just a fhios go gealltanas mé a insint duit sa deireadh. Agus go deimhin, anois tá sé ceart go leor go bhfuil sé seo síos thíos. Mar sin, tá sé seo níos fearr i gcoitinne, mar sin ag barr an do chomhad, is féidir leat CREATHANNA díreach in aice leis, mear-tine, líne amháin gach, cad iad na hainmneacha d'fheidhmeanna, cad a ionchuir iad, cad iad na n-aschur. Agus a bheith níos soiléire, ciallaíonn ionchur i gcoitinne argóint nó paraiméadar, comhionann lena chéile. Aschur ciallaíonn luach ar ais, cad a dhéanann sé lámh ar ais dom. Mar sin, sa chás seo anseo, tá ciúb dearbhaíodh ag an mbarr, ach sainithe, ar a dtugtar a mhalairt arna cur chun feidhme, ag bun an leathanaigh. Mar sin a ligean anois ar dul ar ais anseo agus ath-reáchtáil. Mar sin a ligean anois dom dul ar aghaidh agus ath-reáchtáil a dhéanamh, ath-reáchtáil incrimint. Agus is cosúil anois a bheith ag obair ach fíneáil. Mar sin, anois is féidir linn dul ar aghaidh agus fhachtóir as rud éigin cosúil leis an beoir mar shampla, isteach sa leagan ceathrú. Mar sin a ligean scrollaigh liom síos anseo. Agus faoi deara go bhfuil mé cineál ghlac cheacht seo le croí ach anois. Ós rud é go raibh ag canadh mé an rann-so céanna arís agus arís agus arís eile, an líne chorus céanna san amhrán, bhraith mhaith cén fáth nach féidir liom fachtóir sin amach i fheidhm? Agus go deimhin, ba cheart go mbeadh sé seo ar cheann de na spreagthaí. Seachas an bhfíric go bhféadfadh duine éigin eile ar fud an domhain ag iarraidh úsáid a bhaint as feidhm ciúb - Tá go bhfuil cúis mhaith rud éigin a fhachtóir amach agus do scríobh fheidhm saincheaptha féin - má tá smután de chód i do chlár a dhéanann díreach chiall choincheapúil, gur mian leat cineál a thabhairt dó ainm - cosúil le chorus sa chás seo, - ansin is féidir leat scríobh céanna, go mar fheidhm ar leith. Ní gá duit gach rud a scríobh i is mó má tá sé ach mothaíonn níos glaine a scaradh amach agus a thabhairt ainm dó. Mar sin, sa chás seo anseo, faoi deara go bhfuil mé a comment ar bharr na craoibhe an fheidhm seo a labhras díreach faoi na líon sonraithe de bhuidéil. Fógra anseo nach féidir liom gá chun glaoch ar na rudaí a ionchur agus aschur. Go deimhin, an uair seo d'iarr mé díreach tar éis mo b ionchur do buidéal. Agus faoi deara anseo, le fios ar neamhní cad é? Go curfá - LUCHT ÉISTEACHTA: Ní ais. DAVID J. MALAN: Ní ais luach. Agus go deimhin, nach bhfuil feidhmeanna a luachanna ar ais. Ach is féidir leo rud éigin a dhéanamh. Is féidir leo a bheith ar a dtugtar fo-éifeachtaí, a seo cás ach a bunch iomlán de priontáil ar an scáileán. Mar sin, faoi deara go bhfuil an cód anseo, literally mé ghoid díreach ó an sampla roimhe seo. Is é an difríocht amháin seachas úsáid a bhaint i mar mo athraitheach, tá mé ag baint úsáide as anois b mar mo athróg. Mar sin, tá mé b síos anseo, tá mé b síos anseo, tá mé b lúide 1 síos anseo. Ach tá an cód díreach mar an gcéanna. Ach amháin go léiríonn tú anois conas is féidir linn seo a úsáid, in iúl dom dul romhainn agus ar ndóigh, a athrú seo a bheith ina haghaidh lúb. do (slánuimhir i = n = i> n = i -). Mar sin, tá mé a goideadh go ónár shampla roimhe seo. Roimhe sin, tá sé ag teacht 37 go Ba mhaith liom a bheith tosaithe ag canadh an amhrán seo annoying. Ach ina ionad sin, tá mé ag dul díreach tar éis a glaoch anois curfá i. Arna dhéanamh. Mar sin, anois i ngach leagan den lúb, glaoigh mé an eile feidhm, cór, a tharla mé a scríobh. Ní raibh sé scríofa ag duine éigin eile bliain ó shin. Ach cór, Idir an dá linn, úsáideann printf le priontáil amach na ceithre línte. Ach ar an bhfíric go bhfuil mé ag glaoch curfá arís agus arís eile i lúb Ciallaíonn sé sin go bhfuil mé ag dul a fháil, ag deireadh an-, an amhrán céanna cruinn mar tá mé go dtí seo. Mar sin, i mbeagán focal, anois má tá mé ar ais ar mo cód, cé go feidhmiúil is ionann seo agus, faoi deara go bhfuil sé ag tosú a fháil fiú níos inléite. Níl a fhios agam go cruinn conas GetInt i bhfeidhm. Frankly, níl a fhios agam conas a curfa i bhfeidhm. Ach ní dhéanann sé ábhar dom. Ní féidir liom cúram, mar anois is féidir liom a shórtáil de, mar an duine, a léamh seo bun ó bharr go. Agus mar gheall ar na feidhmeanna atá ainmnithe i gcomhréir le cad iad a dhéanamh, tá mo cód ag éirí níos inléite. Agus mar a fháil ar ár gcláir i bhfad níos casta - ag an seimeastar deireadh, beidh tú ag scríobh na céadta línte de chód i dteangacha cosúil le PHP agus JavaScript agus a leithéidí - beidh tú go bhfuil sé sin i bhfad níos éasca ná mar a súil a choinneáil ar méid atá déanta agat. Agus nuair a thosaíonn tú ag comhoibriú le cairde nó comhpháirtithe nó comhghleacaithe, beidh tú in ann a scríobh i bhfad níos mó cláir ollmhór ag tosú a fheidhmiú na bhunúsach bloic thógála. Mar sin, leis sin ráite, cén fáth nach bhfuil muid ag glaoch sé ina lá? Agus beidh muid a fheiceann tú ar an gCéadaoin. [Bualadh bos]