>> ROB: Kull dritt.
Merħba lill-ewwel taqsima.
Jien Rob.
>> JOSEPH: Jien Joseph.
>> ROB: Allura aħna ser adsa dritt pulzieri
Ewwel ħaġa biex jitkellmu dwar huwa l-Appliance.
Hekk nisperaw ħafna għandek jitniżżel dan diġà.
Iżda int tista 'tara l-istruzzjonijiet fil cs50.net/appliance.
Oh god, issa jien awto-konxja.
I still tismagħha.
>> JOSEPH: Ara naqra, li ħsejjes simili huwa disoriented.
>> ROB: Allura xi nies ġew wara kwistjonijiet ma 'dan, sabiex ma stenna sakemm
l-aħħar minuta tal-problema stabbiliti biex jippruvaw isolvu l-Appliance u
konstatazzjoni li huwa ma tkunx qed taħdem.
>> JOSEPH: U jekk xi ħaġa ma tkunx qed taħdem u għandek bżonn għajnuna, inti tista 'tmur
cs50.net/discussion fejn aħna forum fejn inti
jistgħu wara l-mistoqsijiet tiegħek.
U aħna ser tingħata lilhom eventwalment.
>> ROB: Kull dritt.
Allura dan huwa dak li l-Appliance Dehra.
Għal darb'oħra, huwa biss kompletament separata sistema operattiva jaħdem fi żmien
kwalunkwe sistema operattiva inti taħdem fuq laptop tiegħek.
U l-affarijiet ewlenin li inti ser tkun qed tuża huma gedit.
Allura nisperaw li dan diġà issir sit familjari.
Il-terminal.
>> U inti tista 'wkoll tmexxi Chrome fil-Appliance.
Kien hemm koppja ta 'nies li jkunu rrapportaw internet
ma jaħdmux fil-Appliance.
U xi wħud minnhom għadhom kif assuma li hemm mhux suppost ikunu
internet fil-Appliance.
Iżda iva, hemm suppost li jkun internet.
>> I ser jgħidu dan id-dritt issa, iżda ma verament tfisser xejn.
Jekk l-internet ma tkunx qed taħdem, dan huwa dak li inti għandek tendenza li jeħtieġ
run biex jiffissaw dan.
Jekk qed ikollok kwistjonijiet internet, ma tiftakar, biss jimpustah fuq
Iddiskuti, u aħna ser ngħidu, run dan.
Iżda l-internet għandha tkun qed taħdem.
>> Allura l-unika ħaġa oħra - yeah, xejn inkella huwa verament rilevanti.
Imma jien biss riedu li jiġi mfakkar li -
Ara f'dan ir-kantuniera qiegħ dritt.
Allura kull wieħed mill tiegħek apparat għandhom jkollu indirizz IP.
U aktar tard fil-semestru, dan IP indirizz se jsiru aktar rilevanti meta
qed jaħdmu fuq il-web p-set, għaliex inti ser tkun tista 'aċċess għall-
website inti qed jaħdmu fuq mill tiegħek Chrome lokali billi tuża dan l-indirizz IP.
>> Imma dak I simili għall-użu l-indirizz IP għal - u inti ma għandekx tagħmel dan, I
biss trid punt out -
huwa hawnhekk.
Allura dan huwa tieqa terminal fuq Mac tiegħi, dan mhuwiex fil-
Appliance fil-livelli kollha.
U inti tista 'tfittex up dak dan il-kmand ma.
Imma jien ser SSH direttament li Appliance tiegħi.
I do not know dak l-IP hu.
>> JOSEPH: 168 -
>> 168.224.1.0.
>> ROB: Allura ladarba jien jsir ma 'dan, log pulzieri
Issa, bażikament, dan huwa identiku għal tieqa terminal fi ħdan Appliance tiegħi.
So I pretty ħafna qatt effettivament maħduma minn ġewwa l-Appliance innifsu.
I biss dejjem għaddej fl-isfond minimizzat
u SSHed fih.
>> Il-kwistjoni ma 'dan huwa inti mhux ser biex tkun tista 'tuża gedit faċilment
direttament minn dan.
Iżda jekk inti tixtieq li tkun jibred reali Hacker, imbagħad inti għandek tikseb użati għal
linja tal-kmand editur test xorta waħda.
Allura Vim u Emacs u Nano, dawn kollha huma alternattivi differenti.
Nano tendenza li jkun l-eħfef.
U naħseb li m'għandha l-ebda sintassi tenfasizza.
Oh, no, totalment ma.
Allura inti tista 'tuża Nano, għaliex li wieħed pjuttost faċli.
>> Tara kollha dawn il-kmandijiet fil-qiegħ.
Dan is-simbolu carrot ftit.
Jekk inti ma bbenefikawx qabel, inti ser probabbilment tara ħafna issa.
Dan ġeneralment ifisser il-kontroll zunnarija, bħall-qiegħ tax-xellug tal-tastiera tiegħek
karattru kontroll.
Allura hawnhekk huwa javżak me down hawn -
oh, mhuwiex cut off jekk I zoom pulzieri
Allura Control, X huwa kif Jien ser ħruġ.
U jgħid I tista 'tolqot Y għal Iva, għall-iffrankar, N għall No
Allura dak Nano.
>> Vim u Emacs għandhom tendenza li jkunu ftit aktar ikkumplikat u assoluta.
Iżda int tista 'tikseb użati biex dan, u allura inti ser imħabba tiegħu.
Allura dak li.
>> JOSEPH: Ebda ħtieġa biex tagħmel dan.
>> ROB: Yeah.
Inti liberu li tuża gedit għall- bqija tas-semestru.
Allura xi mistoqsijiet relatati mal-apparat?
Jew għandek xi ħsibijiet dwar x'iktar jeħtieġ li jiġu mitkellma dwar dwar
l-appliance?
Iva.
>> SPEAKER 1: Meta inti SSHed fis tiegħek ħaġa, kien il-Crimson password?
>> ROB: Yeah.
Il-password għal kollox pretty ħafna fil-Appliance huwa għaddej
li jkun Crimson.
>> SPEAKER 2: Installa bħal IDE reali fuq l-appliance, se taħdem?
>> ROB: Nimmaġina Eclipse ma jkollhom Verżjoni Fedora, f'liema każ, iva,
inti tista 'tagħmel dan.
Huwa probabbilment ma verament worth it.
>> SPEAKER 2: OK.
Allura huwa probabbilment aktar faċli jekk jien ridt li użu Eclipse, biss tuża l-nattivi u
imbagħad upload sabiex -
>> ROB: Oh, li huwa wkoll probabbilment aktar faċli.
Iżda int tista 'tikseb dan jaħdmu fil-Appliance.
>> JOSEPH: U għall-camera, il-kwistjoni kien, inti tista 'tinstalla ieħor
IDE ġewwa tal-Appliance?
>> ROB: Eclipse jkunu ta ' Eżempju ta 'IDE.
Kwalunkwe mistoqsijiet oħra Appliance?
Kull dritt.
>> Allura aħna issa se ngħaddi biex linja ta 'kmand affarijiet relatati mal-interface, hekk CLI.
U għal darb'oħra, jien biss ser jaħdmu hawn, għaliex dan huwa identiku għal
jaħdmu fi ħdan tieqa terminal fil-Appliance.
Kif jgħid li font tfittex?
Hija li kbir biżżejjed?
Kull dritt.
>> Allura hemm ħafna ta 'kmandi li għandek tikseb pretty użati biex
matul il-semestru.
Il-big tnejn għan-navigazzjoni huma ls, lista il-fajls f'dan id-direttorju; u
cd, sabiex jibdlu l-direttorju.
So I jista 'bidla għall-desktop u mbagħad mudell komuni ħafna huwa cd għal
direttorju u immedjatament ls X'hemm fil-direttorju.
>> Nies wkoll kultant ma jirrealizzaw li t-tlestija Tab hija ħaġa.
Cd Allura simili, VH, u mbagħad I hit Tab.
I kważi qatt tip out il-ħaġa sħiħa.
U mbagħad jekk I iżommu laqtu Tab għal darb'oħra, dan ser awtomatikament
tibda elenkar għalija.
So I tista vhosts cd, ospitanti lokali.
U li jinsab biss ser -
fil-każ li inti ma smajt it-terminu qabel, id-direttorju huwa biss kelma oħra
għall-folder.
Allura issa jekk tara -
ejja idaħħlu dak għall-quċċata.
>> Mela issa jekk inti tara fil-parentesi, inti tara l-tilde ftit, slash, vhost,
mmejla, ospitanti lokali.
Allura l-tilde, li jirreferi għal direttorju dar tiegħi.
Huwa direttorju int fil meta inti SSH pulzieri
Hu l-direttorju int fil meta inti tiftaħ terminal.
Huwa fejn tibda.
U hekk jien ġewwa ta 'direttorju dar tiegħi, u jien ġewwa tal-vhost
ġewwa direttorju ta 'direttorju dar tiegħi.
U allura jien ġewwa tal-lokali jospita direttorju ġewwa ta 'dan.
>> Allura xi affarijiet oħra utli bil cd -
jew ukoll, b'mod ġenerali, hekk dot dejjem tirreferi għall-direttorju kurrenti.
Cd, dot huwa kmand pretty siwi.
Imma dak li jinbidlu l- direttorju kurrenti.
A waħda aktar utli f'termini ta ' cd hija dot, dot, li hija
biss jmorru up direttorju wieħed.
>> U jinnota li dawn -
Irrid ngħid psewdonimi, iżda dawn simboli, dot, u dot, dot, dawk ix-xogħol
għal pretty ħafna xi kmand int ser tkun ħsieb ta 'tmexxija.
Cd hekk like huwa probabbilment fejn inti ser tkun użu l-aktar, iżda dawn mhumiex
affarijiet li biss cd jifhem.
Huwa pjuttost ħafna xi ħaġa kollu tiegħek linja ta 'kmand jifhem.
A lott ta 'programmi jifhmu dot u dot, dot.
>> Allura l-oħrajn utli - cd, sing.
Allura li huwa ser iġibu me lill- aħħar direttorju li I kien pulzieri
So kultant I ser tagħmel xi ħaġa simili, oh, jien jaħdmu fil hawn.
U nara xi żball ma 'xi ħaġa, u I ser imorru investigat billi tmur
xi direttorju każwali x'imkien.
U jien ma nafx jekk inneħħu let me fil hemmhekk.
Hija se.
Mela allura I do x'ikun nixtieq f'dan id-direttorju.
Blah, blah, blah, blah, blah.
And I kien simili, id-dritt, nixtieq li jmorru lura lejn fejn I kien.
cd, sing, u jġib me dritt lura.
>> Hekk jien ser tarmi ħafna ta 'dawn fi inti illum.
I ma jistennew li inti memorize kull wieħed minnhom.
Huwa tip ta 'biss jafu li dawn jeżistu.
U mbagħad aktar tard meta int simili, hmm, Irrid immur lura għall-
direttorju li I kien biss fi, oh, stenna, xi ħaġa bħal dik teżisti.
Inti ma għandekx biss tip l-direttorju kollu mill-ġdid.
>> JOSEPH: U eventwalment inti se biss jużawhom aktar u aktar mill-ġdid, u
li ser issir memorja tal-muskoli.
>> ROB: Yeah.
Allura kif għidt qabel, li tilde huwa direttorju dar tiegħek.
So I tista cd, tilde.
Imma jien ma jkollhomx biex tagħmel li jekk I biss -
I ser imorru lura lejn il-direttorju hekk mhuwiex eżempju inutli.
Imma jekk I biss tagħmel cd, li wkoll l- istess bħal, mur direttorju dar tiegħi.
I do Kmand, K.
>> JOSEPH: Tista 'wkoll tip ċara, l- kelma, u għandu ċar dan.
>> ROB: U naħseb ukoll Kontroll, L wkoll tagħmlu.
Allura ħafna modi differenti.
Naħseb li hemm xi differenzi fejn ċar u Kontroll, L se biss
verament timbotta lill-quċċata u I xorta jistgħu iscroll lura.
Kmand, K litteralment jeqred kollox, u inti
ma tistax iscroll back up.
Għall-inqas, li l- kif din taħdem fil iTerm2.
I do not know kif affarijiet oħra -
oh.
>> Bil SSHing, hekk jekk inti fuq Windows, int ser jkollhom biex tniżżel stokk
sabiex SSH peress Windows ma jkollhom bħal għodda mibnija fil SSH.
Minn MACs, inti tista 'sempliċement SSH direttament minn tieqa terminal.
OK.
Mistoqsijiet?
>> Bil ls, so xi ħaġa biex jidraw mal-maġġoranza ta 'dawn il-kmandijiet hu -
ukoll, I ser biss tagħmel waħda.
Ls, sing, l.
Allura sing, l huwa dak li aħna qed tmur li jsejjaħ bandiera ls.
U ħafna ta 'dawn il-kmandijiet jkollhom bnadar li inti tista 'tgħaddi lilhom.
Allura f'dan il-każ, sing, l hija bandiera li jgħidlek li tagħti me sħiħa
elenkar ta 'l-informazzjoni kollha ta 'dawn il-fajls.
>> Allura naraw hawnhekk li desktop kienet modifikat 30 ta 'Lulju fil 00:54.
Downloads ġie modifikat 6 Settembru.
Dawn huma d-daqs attwali u bytes ta 'dawn id-direttorji.
Inti ma għandekx li wieħed jifhem kollha ta 'dan.
>> Dan il-għalf fuq ix-xellug, dawn tal drwx, li ser issir ħafna aktar rilevanti
aktar tard meta jkollok biex jittrattaw -
li għandha x'taqsam ma 'min għandu l-permessi li tħares lejn dawn il-fajls.
U hekk jekk inti ma kinux l-uniku utent fuq dan il-kompjuter, inti tkun tista '
jiġifieri, OK, I għandu jkun l-uniku wieħed permessi li tħares lejn dan il-fajl jew jien
se jippermettu lil kulħadd li tħares lejn dan il-fajl.
Allura xi ħadd ieħor fuq il-kompjuter tiegħi tista 'tħares lejn dan il-fajl.
I lanqas biss jafu liema dan - dan xi tagħmel?
>> JOSEPH: Jien ma pjuttost ċert, attwalment.
>> ROB: L-ebda idea.
>> JOSEPH: Imma jekk inti ma taf, hemm kmand utli li tista 'tuża
biex jgħidlek liema l-output mezzi.
U jekk inti tip fil-bniedem qabel l-kmand -
hekk M-A-N. ROB: Man.
Allura raġel ieħor huwa wieħed li huwa utli ħafna.
U l-bniedem, ls.
Allura l-paġni bniedem, huma għandhom kemm jikkmanda li int ser tkun qed tuża
fil-linja tal-kmand, u huma wkoll għandhom funzjonijiet li se jkunu rilevanti
mal C. Allura inti tista bniedem -
u I injorati 3.
Iżda raġel 3 printf se ġġib up-verżjoni C tal printf.
Imma jekk jien biss ma printf bniedem, dan huwa ser iġibu l-printf kmand
li jiġri fil-linja tal-kmand.
>> Allura bniedem, ls.
Il-paġni bniedem jista 'jkun pjuttost kbira.
Hawnhekk, għalkemm, tkun taf tara din il-lista kollha ta 'dawn il-bnadar li ls
jifhem.
Hekk jekk immorru sing, l, u -
Jien biss se tarmi dan fi inti.
Iżda sabiex tfittxija, trid l-ewwel laqat il-mistoqsija
marka jew buttuna slash.
Allura mmejla.
>> U mbagħad I tista 'tfittex għal kwalunkwe irrid.
So I m ser mmejla għall sing, l.
U hemm kien.
Allura l-użu ta 'format elenkar twil.
Dan ma għinni ċifra barra dak f'dik il-kolonna partikolari fisser, imma I
jassumi x'imkien fil hawn dan jispjega dan.
Sabiex jużaw il-paġni bniedem għal kwalunkwe kmand li ma tifhimx immedjatament.
>> Im pretty żgur li int tista 'anki bniedem, il-bniedem.
Interface għall-onlajn manwali ta 'referenza.
Oh, wieħed aħħar waħda li forsi ftit ls rilevanti huwa, sing, a.
So avviż jekk I biss ma ls, I nikseb dawn il-ħames fajls.
Jekk I do ls, sing, a, I jiksbu ħafna aktar files.
Allura l-ħaġa komuni bejn dawn kollha fajls ġodda huwa l-dot qabel.
>> Allura l-konvenzjoni huwa li fajl li jibda bit-tikka hija moħbija.
Allura inti ma tridx tara dan il-fajl, inti ma tridx li jkollhom dan mess ma '
elenkar tad-direttorju tiegħek.
Huwa biss meta inti titlob espliċitament, id-dritt, ls, sing, a, urini.
L-a stands għall-fajls kollha, inklużi dawk moħbija.
Allura xi kmandi oħra.
Oh, mistoqsijiet f'dak il-punt?
Iva.
>> SPEAKER 3: Meta inti tagħmel ls, a, x'inhu l-dot, dot?
>> ROB: Oh.
Allura dan huwa dak I kien jitkellem dwar.
Huwa l-istess ħaġa fejn I tista simili cd, dot, dot.
Allura teknikament, dot u dot, dot huma fajls li jeżistu f'kull wieħed
direttorju fejn il-dot fajl jirreferi għall-direttorju kurrenti.
Mela jekk jien cd, dot, jien biss se jibqgħu fid-direttorju.
U dot, dot dejjem jirreferi għall- livell direttorju wieħed up qabel.
Hekk jekk I tmur fis zkuk u ls, sing, al, I ser tara dot, dot. cd dot, dot
jwassalni għall-direttorju preċedenti.
Yeah.
OK.
>> Allura ieħor pretty importanti kmand huwa rm.
Allura dak hu li aħna qed tmur tuża biex jitneħħew.
U let me fatt jagħmlu ieħor kmand ewwel.
Allura mkdir.
Mkdir huwa kif inti tista ' joħolqu direttorji.
U jien ser toħloq direttorju temporanju u jmorru fil dan id-direttorju temporanju.
U kif mistenni, huwa vojt.
Imma jekk ls I, sing, a, I għad għandhom dot u dot, dot, minħabba dot jirreferi għal
l-direttorju kurrenti.
U dot, dot tirreferi għall- direttorju preċedenti.
U dawk dejjem se jeżistu ebda kwistjoni l-direttorju inti pulzieri
>> U dan huwa kompletament bla bżonn kmand, iżda touch.
Jien biss tużaha, għaliex dan huwa mod faċli biex joħolqu fajls.
Allura touch, touch b, touch c huwa biss se toħloq tliet fajls imsejħa a,
b, u ċ li huma kompletament vojta.
Għalhekk il-punt ta 'lili ħolqien dawk fil- ewwel post huwa biss hekk li rm hija
kif nistgħu tneħħihom.
Allura rm, a.
Huwa ser jistaqsu lili, neħħi regolari vojta file a?
U mbagħad I ser jgħidu Iva.
>> Mela jekk jien taf fiċ-ċert li nixtieq li iħassar il-fajl mingħajr ma jkun
imqanqla, neħħi fajl vojt regolari?, imbagħad rm, sing, f se tkun l-
bandiera li tgħid, seħħ titneħħa mingħajr anki suġġeriment me, oh, int
żgur li trid tħassar il-fajl?
Iva, jien ċert.
Allura rm, sing, fb se biss tagħmel dan mingħajr ma titlob.
>> Mela ejja jagħmlu xi direttorji aktar.
mkdir, tmp2, cd, tmp2, touch, touch b.
OK.
Allura issa I tixtieq li tneħħi tmp2 bħala direttorju.
Tmp2 hekk rm.
Inti ma tistax tneħħi tmp2, huwa direttorju.
Allura l-kwistjoni hawnhekk hija li rm ma immedjatament jaħdmu fuq direttorji.
Huwa maħsub biss għall-fajls simili fajls mhux direttorju.
>> U għalhekk dak li nistgħu nagħmlu hawnhekk huwa rm, sing, r.
Li stands għall recursively, li tista ' ma jfisser xejn għalik s'issa.
Imma meta ikollok recursion, dan ser ifisser aktar.
Allura rm, sing, r, tmp2 se recursively tmur fis dan id-direttorju.
Allura jinżlu fil tmp2 direttorju?
Iva, ejja jmorru fil dak.
Do we tixtieq li tneħħi tmp2 / a?
Iva.
Do we tixtieq li tneħħi tmp2 / b?
Iva.
Issa irridu li jitneħħew l tmp2 direttorju?
Iva.
U hekk issa l-direttorju u kollox ġewwa
minnu tkun tneħħiet.
>> Teknikament Hemm rmdir kmand li tista 'tuża biex jitneħħew
direttorji, iżda jaħdem biss fuq direttorji vojta xorta waħda.
U biex tara li, ejja biss do mkdir, tmp2 darb'oħra.
Tmp2, touch a.
OK.
Mela jekk jien tipprova tneħħi dirtmp2, inneħħu jgħidu, direttorju mhux vojta.
So I pretty ħafna qatt ma jużaw titneħħa kmand dir xorta waħda, minħabba rm, sing,
r se taħdem fuq direttorji vojta u direttorji mhux vojta.
>> U wkoll, jekk jien ma jridux ikollhom jgħaddu dak il-proċess kollu ta '
dixxendenti fil-direttorju u tneħħi kull fajl individwali, rm,
sing, rf, tmp2.
U issa huwa marret.
>> Xi ħaġa li tkun attenta dwar huwa rm, sing, rf.
U beżgħat me li anki tip li, għaliex jekk I aċċidentalment
hit Ikteb jew xi ħaġa.
Allura rm, sing, rf, tilde ikun, mingħajr wassal me, il-f ma pront
me, se tneħħi awtomatikament direttorju tiegħi dar kollha u
kollox fiha.
Allura inti tista 'taħseb li l- ħaġa stupid li tagħmel.
U tajjeb, huwa.
>> Imma jista 'jiġri faċilment minn inċident jekk, ngħidu aħna, jien ridt li jitneħħew
slash tiegħi, direttorju vhost.
U biss fil-ittajpjar malajr, I aċċidentalment tagħmel dan.
Li se jneħħi recursively kemm tiegħi direttorju dar u l-direttorju vhost
f'dan id-direttorju partikolari li biss jiġri li ma jeżistux dritt issa.
Iżda dan xorta tneħħi direttorju dar kollha tiegħi.
Mill-inqas billi ma jkollu f, ikun pront me ewwel.
And I d jkun simili, oh, no, I ma jridux jagħmlu dan.
Iżda n-nies, mmejla, inklużi me tendenza li tikseb fis-
vizzju ta 'dejjem rf Ing.
Saħansitra fajls regolari li nista 'biss RM, c, I-tendenza li biss rm, sing, rf, c.
Just ikunu attenti meta int rf Ing.
>> SPEAKER 4: Xi C do?
>> ROB: C huwa jien jitkellem dwar dan il-fajl C f'dan id-direttorju, li rm, c.
>> JOSEPH: U aktar perikoluż, jekk tuża stilla, din tirreferi għal kollox
l-direttorju.
Allura dak I normalment tendenza li tagħmel huwa I se jmorru fi direttorju u nixtieq li
tneħħi l-fajls fil hemmhekk.
Allura rm, sing, rf, star.
>> ROB: Yeah.
Rm, sing, rf, star.
>> JOSEPH: U jekk int ma attenta dak direttorju int fil -
I ma kienx temperatura, imma I kien aċċidentalment fl-direttorju dar tiegħi,
imbagħad I ser ineħħi kollox fl-direttorju dar tiegħi.
U stajt attwalment għamlu dan qabel, u Naħseb li inti ghamilt dan qabel jew
Jay għamlet dan qabel.
>> ROB: stajt aċċidentalment jitneħħew -
sabiex jinjoraw dak il-kmand għal bit.
>> JOSEPH: Mhux gost.
>> ROB: Allura fid-direttorju bin slash hija mazz ta 'fajls binarji fejn hemm ser
jkunu dawk familjari bħall clang.
Well, clang u bażikament kollha ta 'dawn affarijiet li niġri fil-kmand
linja f'dan slash direttorju bin.
>> JOSEPH: Bħal ls hija fil hawn.
>> ROB: Allura dot, mmejla, ls se lista dan id-direttorju.
>> JOSEPH: Rm hija wkoll f'dan id-direttorju.
>> ROB: I aċċidentalment rm, rf-ed bin, li neħħiet kull kmand stajt
possibilment qatt trid.
Li mbagħad I biss jerġa 'jiddaħħal Appliance ġdid f'dak il-punt.
>> JOSEPH: Sabiex ikunu attenti ħafna meta tuża dan il-kmand.
>> UDJENZA: [inaudible]?
>> ROB: Iva.
Li wkoll drawwa ħażina li jsibu rwieħhom.
Jekk tinnota, jien issa -
ukoll, inti ma tista 'avviż, iżda tiegħi zoom-in tista 'forsi.
Hekk jien issa root @ appliance.
Allura jharvard huwa l-utent li rridu inti dejjem tkun qed tuża.
Għeruq huwa l-utent li jkollu l-permess tagħmel assolutament xejn.
>> So avviż meta jien jharvard, jekk nipprova cd -
x'hemm direttorju li?
Oh, għeruq huwa eżempju tajjeb.
Allura cd, għerq.
Permess miċħuda.
Għaliex jekk inħarsu lejn din il-lista -
u għal darb'oħra, inti ma għandekx kompletament jifhmu dan.
Iżda dawn it-tliet dashes qed jgħidu li ma let kwalunkwe
utent fis dan id-direttorju.
U l-direttorju jiġri li ikunu proprjetà ta 'għerq utent.
>> Allura l-fatt li jiena jharvard u l-ebda wieħed li ma jkunx għeruq huwa permess fil
dan id-direttorju, dan ifisser li jien se tikseb permess miċħuda meta I
jippruvaw cd fis dan.
Allura meta I am għeruq, I jkollhom permess biex tagħmel assolutament xejn, inklużi
ħassar fajls essenzjali għall-Appliance u
jeqirdu l-ħaġa sħiħa.
>> Allura huwa drawwa ħażina li jsibu rwieħhom biss wandering madwar tiegħek
sistema operattiva bħala għerq.
I tagħmel dan xorta waħda.
Mistoqsijiet?
U jien ser toħroġ għerq, waqfa kif jharvard.
OK.
>> Jikkmanda aktar rilevanti.
Allura jmorru lura fis temperatura tagħna, il- mv kmand stands għall jiċċaqalqu.
Inti tista 'timxi a.
Issa rridu li hija sejħa b, hekk issa huwa msejjaħ b.
Jew forsi irridu li jimxu b up direttorju wieħed.
Allura issa dan id-direttorju tal-vojta.
I ser tmur lura għall-direttorju dar tiegħi, u naraw li b hija hawnhekk, minħabba li l-
direttorju dar kienet waħda direttorju up minn l-direttorju li b kienu pulzieri
>> Hemm ukoll cp.
Allura cp hija kopja taqsima super, dot, it-test.
I tista 'sejħa hija s, dot, it-test.
Issa għandna tnejn taqsima super, dot, it-test, u s, dot, it-test.
Dan jaħdem ukoll fuq direttorji.
I RF-ed f'fajl wieħed.
Allura cp -
ukoll, l-ewwel ejja tipprova cp, PAT, tmp2.
Allura tħalli barra TMP direttorju.
Allura simili għal rm, l-imġieba default huwa li ma jaħdmux fuq direttorji.
>> U għal darb'oħra, simili għall rm, il-default imġiba - ukoll, jkollna din taħdem
direttorji huwa, sing-r bogħod.
Allura kopja recursively l-temp direttorju fis tmp2.
U hekk issa għandna kemm TMP u tmp2, u li mhix dik utli peress TMP
kien vojt fl-ewwel post.
Tmp2.
>> Issa ejja kopja TMP fis tmp2.
U naraw li tmp2 għandha wkoll il-file a, għaliex l-direttorju u
kollox ġewwa ta 'dan direttorju ġie kkupjat.
U li jista 'jkun pjuttost utli jekk, ngħidu li inti qed jaħdmu
dwar il-problema sett wieħed -
jew fil-fatt, settijiet problema aktar tard huma saħansitra aktar importanti, għaliex hemm
se jkun mazz sħiħ ta 'fajls u l-affarijiet.
>> Imma inti biss trid, għall-qasma tieni, int tixtieq, id-dritt, jien
ser tipprova xi ħaġa differenti.
Let me biss kopja pset1 kollu tiegħi direttorju fis pset1 backup hekk li jekk
I jispiċċaw screwing affarijiet up, I jista ' jmorru lura fis direttorju backup tiegħi.
Hemm modi aktar xierqa ta ' versioning appoġġ up kodiċi tiegħek, iżda
dan huwa dejjem mod malajr biex biss tagħmel ċert li jkollok kopja ta 'xi ħaġa
li int ser timmodifika.
>> Allura ECHO huwa wkoll kmand ta 'darba li tip ta 'sillily se biss print għall-
linja ta 'kmand eżattament dak int riedu eku.
Allura eku hi.
Aħna ser biss print hi.
Echo bonjour dinja.
Aħna ser istampar bonjour dinja.
Li jidħol fis-użu meta inti tibda tgħaqqad jikkmanda.
>> U għal darb'oħra, ma jistennewx li inti kompletament jifhmu dan s'issa, iżda huwa
xi ħaġa biex tara.
U mbagħad jekk int Googling għal eżempji jew inti tirrealizza li inti trid tagħmel
xi ħaġa, jista 'jkun utli.
Mela ejja, bħala eżempju, hekk ls, sing, l.
So here I tara l-output ta 'ls, sing, l.
And I say, OK, I jridu jaħżnu dik fis-fajl.
Kollha ta 'dan l-output hawn, nixtieq li jitqiegħed fis-fajl separat.
>> Allura dan ftit akbar minn simbolu huwa dak li aħna qed tmur biex sejħa.
Aħna qed ridirezzjonar l- output fis-fajl.
Ejja sejħa tal blah fajl, minħabba li l dak I-tendenza li dejjem hija sejħa.
Allura issa naraw għandna fajl blah dritt hawn.
U jekk I jiftħuh, I taf tara huwa eżattament l-output tal-kmand
li jien biss dam.
U l-istess, inti tista '-
jekk dan kien output għall-fajl, dan hija tikseb input minn fajl.
X'inhu kmand li I -
>> JOSEPH: Naħseb li inti tista 'tuża inqas jew aktar, probabbilment.
>> ROB: Imma kif madwar ftit inqas blah?
I do not know.
Jekk inti tidħol fis dan ix-xenarju, bħal hemm psets li huwa utli.
>> JOSEPH: Tista 'pajp fis echo.
Pipe-fajl fis eku narah.
>> ROB: Huwa pajp.
>> JOSEPH: Jiddispjacini.
>> ROB: Kull dritt.
Allura dan huwa output għall-fajl.
Dan hu li tikseb it-test mill-fajl u jagħtih lill-programm.
U tkun taf ara wkoll dan Guy.
Allura dan huwa tip ta 'kif isir it-tnejn f'daqqa.
U fil-fatt, jien ser tintroduċi żewġ ġdida jikkmanda biss biex jagħmlu użu minnha.
>> Storja huwa kmand handy li huwa biss se jistampa lista ta '
xejn stajt qatt run linja tal-kmand.
Allura naraw hawn dak kollu li għandi ilu għaddej dan iż-żmien kollu.
Lottijiet ta 'l-ls.
>> U l-iggwidar ieħor utli hija grep li għan tagħha huwa li tfittxija fuq
test tfittex għal xejriet, ukoll, tfittex għal kwalunkwe inti
tixtieq li tfittex għal.
U għalhekk l-użu handy hawnhekk hija, ngħidu aħna irridu li grab l-istorja.
U nixtieq li tfittex l-kmandi fejn I - x'hemm
waħda utli biex tfittex?
>> JOSEPH: [inaudible]?
>> ROB: Jew ejja tfittex biss għal kulħadd tmiss, għal kwalunkwe raġuni.
Allura dan huwa dak li se look like.
U inti ma għandekx kompletament jifhmu li.
Imma l-idea hija hawnhekk, l-istorja qed tagħti l-istess produzzjoni hija għamlet hawn
fejn huwa istampar l kollu istorja ta 'kollox stajt qatt run.
Aħna mbagħad tgħaddi li -
hekk minflok ta 'stampar lill-iskrin, irridu li jgħaddu dik l-
kmand grep li qed tfittex istanzi kollha tal-kelma touch.
>> U hekk billi tuża din il-kombinazzjoni tal- għodod istorja u grep, I jista 'jara, OK,
here kollu tal-kmandi stajt qatt run, u hawnhekk wieħed kemmxejn komuni.
Aħna fil-qiegħ.
U huwa wkoll tagħti me l-kmand I biss dam li kellu l-
touch kelma fiha.
Iżda l-pajp hija ħaġa pjuttost utli talli għaqqad programmi multipli.
U fil-fatt, huwa shortcut għall let me-istorja output għall-fajl blah, u
let me grep bl-użu blah fajl bħala dak li nixtieq li tħares fuq.
Allura l-pajp huwa biss shortcut għal dawn iż-żewġ jikkmanda.
Iva.
>> SPEAKER 4: [inaudible]?
>> ROB: Iva.
X'inhu -
Oh.
Ejja test.
Allura qattus, kelb, ħut.
So I jridu grep.
Dash, r, għal darb'oħra, se tkun recursively, so I tixtieq li jinżel l isfel
kollha direttorji.
Irrid li recursively grep għal kulħadd - u let me nikseb temporanjament
dan barra mill-mod.
Injora lili.
OK.
>> So I jridu grep temporanjament għal istanzi kollha tal-ħut kelma.
U hekk hawn dak li qed nagħmel huwa grepping recursively għall-ħut kelma.
U stilla ifisser fuq kollha ta 'dawn fajls f'dan id-direttorju.
U għalhekk tatni Permess miċħuda, minħabba li mhuwiex permess li taqra li
partikolari file.
Iżda hija kkonstatat ħut fil-fajl, test.
>> I jistgħu jgħidu wkoll, speċifikament, I biss tixtieq tfittex fil-blah file, fil
f'liema każ mhux se jsibu xejn.
I biss tixtieq tfittex fil-fajl, test.
Huwa se jsibha ħut.
Dan huwa kmand pretty utli li tkun taf b'mod ġenerali.
Hemm xi alternattivi biex grep li huma mistennija li jkunu aktar
programmer friendly, iżda I-tendenza li xorta jaqgħu lura fuq grep.
Mistoqsijiet?
OK.
>> Hemm jikkmanda oħra?
Oh.
Just waħda ta 'darba li jien dejjem issib li jkun gost huwa cal.
So avviż meta jien f'dan sabiħ full screen mode, għandi l-ebda top simili
toolbar jew xejn.
Allura cal biss tagħti me ftit sbieħ kalendarju li d-dritt
issa cut off, I jassumi.
Iżda kmand ftit sbieħ.
>> JOSEPH: Huwa [inaudible].
Jikkmanda oħra li jista 'jkollok dehru jinkludu clang u jagħmlu.
Aħna ser jmorru fuqhom fil f'aktar dettall aktar tard.
Imma jekk inti ħadthom ilhom jaħdmu fuq l PSET, inti għandek tkun
familjari ma 'dawk.
>> ROB: Kull dritt.
Mistoqsijiet dwar affarijiet linja tal-kmand?
Kull dritt.
Mela ejja jimxu fuq xi Jittieħed relatati C-.
Varjabbli matematika.
OK.
Allura bħad kellna matematika fl Scratch, tista 'wkoll tuża matematika fl C.
>> Qabel ma nikbru għal dak kompletament, hekk varjabbli.
Ftakar li kull meta inti tiddikjara varjabbli bħal int x jew y float, inti
għandek tagħtiha tip qabel l-isem varjabbli.
Allura tipi Rajna s'issa huma int, float, double, twil twil, li jiena
ma tassew taf jekk konna jidher li s'issa.
>> Hemm xi oħrajn.
Imxejna tara char.
Hemm qasir, li huwa simili huwa l- oppost ta 'żmien twil fejn huwa
iżgħar minn numru sħiħ.
Rajna wkoll string.
Allura dak li huwa speċjali dwar string?
Għaliex kieku I ngħid huwa ma pjuttost simili int?
>> SPEAKER 4: Hija ma verament jeżistu.
>> ROB: Yeah.
Allura l-unika raġuni għandna string għaliex meta inti tagħmel
hash, jinkludu cs50.h.
U aħna ser tara eżempji ta 'dan aktar tard - oh, li ma jittrattax li tajjeb -
fejn cs50.h qed tagħmel xi ħaġa fuq il-linji ta 'tip
def, star char, string.
>> U hekk dan kien qal li aħna ma anki jafu liema stilla char għadu.
Iżda dan huwa qal li rridu string.
Kull post inti kont qed tuża string, inti setgħu jużaw star char,
li fil-fatt huwa tip li teżisti fil-lingwa C.
Iżda aħna ser jiksbu għal dak.
Oh, u din tmur dritt lura.
Pulita.
>> Allura istess ħaġa ma bool fejn vera u falza.
Dan mhuwiex verament mibnija fil-tip C. Minflok, huwa biss, jfisser dan għandhom
il-valur zero?
Imbagħad aħna ser jikkunsidraw biss li jkun falz.
Jfisser dan għandhom il-valur -
ukoll, ma din l-ebda valur li mhux żero?
Imbagħad aħna ser jikkunsidraw li jkun veru.
Allura wieħed huwa veru, tnejn huwa veru, xejn nonzero huwa veru.
Għalhekk dawn huma dawk.
Mistoqsijiet dwar varjabbli tiddikjara u tipi varjabbli u dak kollu li?
Yeah.
>> SPEAKER 4: Għal twil twil, fil-ktieb, huwa qal li kellha tkun int twil twil.
Iżda se biss twil twil taħdem?
>> ROB: Allura dawn modifikaturi tip.
Allura int x.
Allura nistgħu ngħidu wkoll mhux iffirmat int x.
Nistgħu ngħidu int qasir x.
Nistgħu ngħidu twil twil int x.
Iżda pretty ħafna xi waħda minn dawk l-affarijiet I biss qal, int mhux iffirmat, int qasir,
twil twil int, inti tista 'teħles minn l-int u se biss wieħed jassumi
li inti fisser int.
X Allura mhux iffirmat, li sempliċiment tfisser -
inti taf kif normalment ma 'int, inti tista 'tgħid x ugwali negattiv 3?
Bil int mhux iffirmat, inti ma tistax.
>> JOSEPH: U għal darb'oħra, għall-kamera, il- kwistjoni kienet, x'inhu l-differenza
bejn int twil twil u biss twil twil?
>> ROB: Yeah.
So I se kważi qatt jiktbu twil int twil.
I se jiktbu twil twil.
>> JOSEPH: Kwalunkwe mistoqsijiet?
>> ROB: OK.
Tfakkira ftit hekk iblah ta 'li kif aħna niddikjaraw varjabbli u initialize
il-varjabbli u tiddikjara ieħor varjabbli u initialize
dan kollu fil-pass wieħed.
Allura d-dikjarazzjoni tal-varjabbli u l- il-varjabbli inizjalizzazzjoni ma jkollhomx
li iżda jista 'jkun fuq l-istess linja.
>> Allura aħna għandna l-operaturi matematika standard li int użati biex -
plus, minus, firda, il-ħinijiet.
Hemm ukoll modulo, li aħna ser tara.
Ma jkunx hemm, għall-inqas fil- C, qawwa mibnija fil-
operatur caret exponentiation.
Ukoll, hemm operatur caret, iżda mhux power.
>> JOSEPH: Imma din mhix exponentiation, iva.
>> ROB: Tużax il-caret li wieħed jassumi li dan ifisser
bħal kwadrat jew kwalunkwe.
Għalhekk xi affarijiet li wieħed iżomm mind dwar id-diviżjoni.
I ser stand.
Allura ddikjarat tweġiba initialize.
Allura aħna qed tgħid tweġiba float daqs 1 maqsum f'10.
Stampa tweġiba sa żewġ postijiet deċimali.
>> U dan huwa t-tip ta 'ħaġa li I kieku bniedem printf biex insemmu li
dak l-Heck ma%, dot, 2f jfisser?
U dan ifisser biss, ukoll, jinjora l-0.2.
U%, f huwa dak li nużaw li jistampaw li float.
Il-0.2 huwa qal, print li float sa żewġ postijiet deċimali.
Allura dan il-programm għandu bug, u inti tista ' raw dan qabel f'xi
kors CS qabel.
Imma dak li hu dan bug?
>> SPEAKER 5: Zero.
>> ROB: Yeah.
Allura meta ngħidu, tweġiba ugwali 1 maqsum f'10, irridu l-
risposta li għandha 0.1.
Iżda 1 maqsum f'10, 1 hija integer, 10 huwa integer.
U hekk meta nagħmlu integer diviż bil- integer, aħna qed tmur biex jiksbu lura
integer.
Allura 1 maqsum f'10 hija 0.1.
>> Peress li jeħtieġ li tagħtina numru sħiħ, huwa biss se armih li
punt deċimali u jgħidu li it-tweġiba hija 0.
U hekk meta aħna istampar twieġeb hawn, li għaddej biex jistampaw 0.00.
>> JOSEPH: U biss bħala nota, attwalment throws bogħod x'hemm wara l-
punt deċimali.
Mela jekk inti minflok kellhom 6 maqsum f'10, inti tista 'taħseb li se jtik
0.6 u allura inti round sa 1.
Imma fil-fatt, dak li jiġri meta tip kompiti dan hija li huwa qtar dak li huwa
wara l-punt deċimali.
Allura 0.6 ma jsiru 0.
>> ROB: Yeah.
U aħna ser ngħidu ponta maqtugħa għal dak.
Allura meta inti mitfugħa għal int, l-deċimali huwa maqtugħ.
Allura l-jiffissaw għal dan - hemm attwalment żewġ.
U jien ser tagħmel dan it-tieni, minħabba li dan huwa wieħed tiffissa ħafna aktar faċli.
>> Allura jiffissaw waħda hija tuża floats fid-diviżjoni.
U tassew, inti biss għandek jagħmlu wieħed minnhom float.
Iżda huwa kemmxejn aktar ċar biss li kemm minnhom flowts.
Allura 1.0 diviż bil 10.0 huwa tiddividi żewġ sufruni.
Allura l-risposta se jispiċċa jkun float, u għalhekk inti se
korrett jistampaw 0.10 hawn.
>> Xi ħaġa li ma taħdimx hekk ukoll dwar dan hija, ukoll, żgur, li kien faċli
biżżejjed biex jikkonvertu 1 għal float billi jagħmilha 1.0.
Imma x'jiġri jekk minflok kellna żewġ numri interi bħal int x daqs 1 u int y
ugwali għal 10, u mbagħad ridna Biex tagħmel x diviż bil y?
Għalhekk mhuwiex faċli li biss jagħmlu x.0 jew xi ħaġa.
>> Allura l-jiffissaw għal dan huwa deċiżiv.
Allura ikkastjar huwa mod fis-C li jikkonvertu minn tip varjabbli għall-ieħor.
Allura hawn, 1 huwa integer.
U billi dan float quddiem dan, aħna ikkastjar 1 għal float.
U hekk dan se jaqilbu l-1 għal 1.0.
U dan se jaqilbu 10 għal 10.0.
>> U mbagħad affarijiet jaġixxu b'mod simili għall- verżjoni preċedenti aħna biss wera
fejn, kif mistenni, nikbru 0.10 u inneħħu jistampaw dik.
U nistgħu nagħmlu dan bil- varjabbli, wisq.
Allura nistgħu ngħidu, float x diviż bil y float.
>> JOSEPH: Kwalunkwe mistoqsijiet?
>> ROB: Hekk biss bħal fil-matematika regolari, għandna preċedenza operatur.
Allura fil-klassi matematika, int aktar probabbli li hija sejħa ordni ta 'operazzjonijiet.
Hawnhekk, it-terminu uffiċjali preċedenza operatur.
Iżda l-preċedenza operatur, jew aktar operaturi, huwa kif inti tistenna.
>> Hekk biss bħal fil-matematika, 2 darbiet 10 huwa ser jinġabru aktar mill-qrib milli
dan 10 diviż bl 2 u mbagħad 2.
L-ordni ta 'operazzjonijiet, hija se tagħmel 2 drabi 10, 10 diviż bl 2, u mbagħad
hija ser tagħmel 20 plus 5 plus 2.
Allura huwa kif mistenni, u tista 'tuża parentesi għal espressjonijiet grupp.
Inti ma tistax tuża parentesi kwadri għal espressjonijiet grupp.
Yeah?
>> SPEAKER 5: Tista attwalment biss jmorru lura tieni wieħed?
Inti tista mitfugħa int għal string?
>> ROB: Allura C, inti tista mitfugħa xejn inti trid xi ħaġa li trid.
Dan ma jfissirx li huwa ħaġa tajba li tagħmel.
Allura meta inti mitfugħa int biex string, li tfisser -
u aħna ser jsibu rwieħhom dan ħafna aktar bir-reqqa -
>> JOSEPH: Ħafna aktar tard.
>> ROB: I ma riedx li jgħidu ħafna aktar tard, so I ppruvaw ibiddlu sentenza tiegħi.
Aħna ser jsibu rwieħhom ferm aktar bir-reqqa aktar tard fejn verament meta jkollok
string varjabbli -
so a string jista 'jkun arbitrarju twil, id-dritt?
U aħna kont qed tgħid li int tkun erba 'bytes u twil twil huwa tmienja fil-
bytes u float huwa erba 'bytes.
Allura string, bħad int, biss għandha ċertu numru ta 'bytes lilha.
U li se jkun erba 'bytes.
>> Iżda string jistgħu jiġu pretty twil arbitrarju, right?
Allura bonjour dinja diġà, jekk dan huwa 10 karattri jew kwalunkwe, dak li diġà
se tkun fuq l-4 bytes I jistgħu joqogħdu ġo string.
U hekk kif kordi verament ix-xogħol huwa li huma fejn fil-memorja li string
qed jinżamm.
>> U hekk hawn fuq, meta ngħid string x ugwali bonjour dinja, ġewwa ta 'x hija
biss qal, oh, bonjour dinja hija maħżuna f'dan il-post partikolari fil-memorja.
Hekk jekk nippruvaw li jitfa integer għal spag, allura aħna qed tipprova tinterpreta
xi parti każwali tal-memorja bħala sekwenza.
U li kważi dejjem pawżi affarijiet.
>> JOSEPH: Iżda jekk dak konfuż inti, aħna ser tkun tkopri dan
aktar fil-fond aktar tard.
>> ROB: Yeah.
Dan huwa fejn inti qed tmur li jsibu rwieħhom pointers.
U li huwa chunk sinifikanti ta 'ġimgħatejn ta' dan il-kors.
>> SPEAKER 6: Ma jaħdimx bħal oġġetti f'lingwi oħra jew mhux verament?
>> ROB: Allura f'lingwi oħra, oġġetti jkun irrappreżentat użu pointers.
Mhuwiex l-istess ħaġa, għalkemm.
Kwalunkwe ħsibijiet?
>> JOSEPH: Le
Ebda ħsibijiet.
>> ROB: OK.
>> JOSEPH: Next.
>> ROB: Just jmorru ma 'dak.
Kull dritt.
Allura modulo.
Eżatt bħal għandna plus, minus, jaqsam, u jimmultiplikaw.
Allura modulo hija waħda inti tista ' ma raw qabel.
U hija biss jgħid, jagħtu me-bqija ta '.
Allura 55% 10.
Il-bqija ta 'kif isir 55 maqsuma b'10 tkun 5.
Allura 55% 10 hija 5.
U 3% 5 tkun 3.
8% 8 għandhom ikunu 0.
16% 15 se tkun l-1.
>> JOSEPH: Ħaġa waħda li wieħed jinnota ma 'dan, wisq, huwa ma jista 'jaħdem kif mistenni
jekk tuża numru negattiv.
Daqshekk negattiv 5% 4, xi nies jista 'jaħseb li hu -
dak li inti taħseb negattiv 5% 4 tkun?
>> SPEAKER 5: One.
>> JOSEPH: Allura xi nies jgħidu wieħed, xi nies jgħidu waħda negattiva.
Imma dak -
>> ROB: I ma jkollhomx lanqas qal wieħed minn dawk.
>> JOSEPH: Żewġ, sorry.
Xi nies jgħidu -
>> ROB: Tliet.
>> JOSEPH: Tliet?
>> ROB: Negative -
dak li kien il - negattiva ħamsa -
>> JOSEPH: Tliet, tlieta, tlieta.
Jiddispjacini.
Minħabba modulo, ġeneralment, meta inti ħadthom tidher xi mkien ieħor, normalment ifisser
ritorn numru pożittiv, id-dritt?
>> ROB: Allura meta ngħidu fil-matematika, l-10%, dawn għandhom tendenza li jridu jagħtuk -
jekk aħna MOD b'10, allura nistennew li tikseb numru bejn 0 u 9.
Fil hawn, li mhuwiex il-każ li inti se tikseb numri negattivi lura.
>> JOSEPH: Allura negattiv 5% 4 tkun negattiva 1.
>> ROB: Iżda huwa rari li int mod Ing numri negattivi li tibda bil.
Skip dan.
>> JOSEPH: Yeah.
>> ROB: Meh.
OK.
Allura wieħed aħħar ħaġa li tfakkar dwar sufruni huwa huwa imġieba perikoluża,
iżda sufruni mhumiex eżatti rappreżentazzjoni.
Allura jmorru lura għall bytes mill-ġdid, ftakar li int dejjem erba 'bytes u
float huwa dejjem erba 'bytes.
Allura eżempju Lucas hija pjuttost tajba.
>> Allura taħseb 1 diviż bil-3.
Allura 0.3333333.
Jekk I biss 32 bits, kif tista ' I taħżen 0.33333 eżattament?
U forsi, għal kwalunkwe raġuni, inti tgħidli, id-dritt, ukoll, ejja biss jgħidu
li dan 1011001 partikolari, ejja biss jgħidu li għandu jkun 0.333333.
Well, inti biss għandek numru finit ta ' dawk bits, dan huwa impossibbli li
jirrappreżentaw kull b'punt li jvarja wieħed valur mogħti biss 32 bits.
>> Ukoll, huwa impossibbli li jirrappreżentaw l-ebda valur floating point partikolari infinita -
ukoll, minħabba kwalunkwe numru finit ta 'bits.
Allura l-kwistjoni hawnhekk hija, ukoll, meta aħna użati li jistampaw sa żewġ postijiet deċimali,
aħna ma korrettament jiksbu l-risposta 0.10.
Iżda taħt il-barnuża, huwa verament maħżuna qrib kemm jista 'jkun
0.10 dawk bits jistgħu jirrappreżentaw.
Huwa dan fuq il-pjastra jmiss?
Jew huwa ma?
>> JOSEPH: Yeah, huwa li.
>> ROB: Blegh, blegh.
>> JOSEPH: Yeah, inti tista 'sempliċement iġbed in-noti up a bit.
>> ROB: Jien biss ser zoom fuq l-aħħar fuq dan.
Oh gosh tiegħi, li l-[inaudible].
Allura dak in-numru.
Dan huwa dak li se jiġi stampat jekk aħna run dak il-programm.
U tinnota li mhux verament big deal jekk aħna qed biss ħsieb dwar like
02:58 postijiet deċimali.
Bħal aħna biss oriġinarjament stampat 0.10, u hu għalhekk li rajna xejn ħażin.
Imma ladarba nibdew jkollna fil- eżatta, numru eżatt li huwa
jirrappreżentaw, naraw li ma tistax eżattament jirrappreżentaw 0.1.
>> U parti mill-problema hawn hija simili, id-dritt, li l-multa, iżda, ukoll,
ewwel, dak li jekk aħna ppruvaw li tagħmel, tweġiba ugwali ugwali 0.1?
Hija li ser jirritornaw vera jew falza?
U għalhekk huwa diffiċli li wieħed jgħid.
Naħseb li fil-fatt jista 'ritorn veru.
Se ewwel -
I do not know.
It-tweġiba hija ladarba tibda jittrattaw mal-valuri b'punt li jvarja, inti pretty
ħafna ma għandhomx jużaw l-ugwaljanza minħabba dan impreċiżjoni.
>> U għal kulħadd tafu, huwa l-mija punt deċimali li l-
floating point ma kienx kapaċi biex jimmaniġġaw b'mod korrett.
U hekk ugwaljanza se biss jonqsu anki għalkemm in-numru - jekk inti kienu
jużaw numri eżatti, in-numri għandhom kienu eżattament l-istess.
Huwa matul il-kors ta 'prodotti simili 50 kalkoli bl-użu dawn f'wiċċ l-ilma
valuri tal-punti, l-iżball tista 'tibni up u up u sa, u
affarijiet biss jiksbu wrong.
>> JOSEPH: U hemm kienu tassew eżempji famużi ta 'dan jiġri.
Bħal inġiniera NASA gotten dan ħażin, li jikkawżaw rokits jisplodu fl
l-arja wara li ħadthom ġew imnedija.
U lottijiet ta 'kwistjonijiet bħal dik.
So yeah.
>> SPEAKER 6: Meta inti tgħidli 0.3 f, ma truncate-bqija?
Jew ma jnaqqas jew iżid?
>> ROB: Se printf madwaru?
>> JOSEPH: Naħseb taqta printf.
>> ROB: OK.
Allura nistgħu istess mod tmur fid-direzzjoni opposta direzzjoni ta 'dan fejn, f'dan il-każ,
l-eqreb hija tista 'tirrappreżenta 0.1 kien ma 'dan in-numru.
L-eqreb li jista 'jkun kapaċi jirrappreżentaw 0.2 huwa l-oppost
direzzjoni, .199999996356 jew xi ħaġa.
Allura jekk aħna marru f'dik id-direzzjoni ta ' affarijiet, allura printf 0.3 f jerġgħu lura
1.99 minflok 2.00.
>> JOSEPH: U jien mhux kompletament żgur fuq dan.
Inti tista 'tixtieq li jiktbu żgħar, ftit programm biss tivverifika dan.
>> ROB: Għalkemm, dak li aħna żgur li hija li jekk inti ppruvaw li jitfa li għal
int, u li jitfgħu għal int se jwassluh biex truncate-deċimali, jekk
inti tipprova li jitfa 1.9999999 għal int, int ser tingħata 1.
U allura inti għandek ġeneralment jużaw l- funzjoni round fil-librerija matematika.
Mistoqsijiet?
OK.
>> JOSEPH: Allura jimxu fuq kondizzjonijiet u espressjonijiet Boolean.
Allura inti raw dawn qabel.
U fil-fatt, let me tagħmel ċert tiegħi kompjuter fil-format dritt hawn.
Ispazju.
Jiddispjacini, aħna qed tmur biex ikollhom jittrattaw a ftit ma cutoff fit-truf.
>> Iżda yeah, inti guys raw dan qabel fil Scratch.
Allura dan id-dritt hawnhekk hija espressjoni li huwa użat fil-
stqarrija kondizzjonali.
Allura twieġeb ogħla minn żero rieda jgħidlek vera jew falza.
U dawn huma verament importanti, għaliex dawn jippermettu magħna biex jintroduċu
loġika fid kodiċi tagħna.
>> Hekk per eżempju, dan huwa programm miktuba Scratch li jitlob lill-utent
għal integer u jgħidlekx minnhom jekk n-numru sħiħ li ħadt kien
numru sħiħ pożittiv jew negattiv.
U l-konverżjoni minn hawn biex tara hija inti l-ewwel jistampa l-istqarrija,
tagħti me numru sħiħ.
U allura inti jistaqsihom għal integer.
>> U allura inti tuża loġika kondizzjonali fuq hawn biex tiċċekkja jekk dak in-numru
kien attwalment akbar minn żero jew le.
Allura hawnhekk għandna espressjoni Boolean ġewwa ta 'kondizzjonali Jekk dikjarazzjoni.
Hemm xi mistoqsijiet?
Hemm xi mistoqsijiet dwar dan?
OK.
>> Allura hemm aktar minn sempliċiment akbar minn, tal-kors.
Inti tista 'tibni espressjonijiet Boolean jużaw ħafna mill-tipi ta 'affarijiet li inti
ser jaħseb fil-matematika.
Allura akbar minn.
Li għandu jkun inqas minn.
Jiddispjacini.
U l-ispazjar.
>> ROB: Alla jipprojbixxu inti jitilqu minnu.
>> JOSEPH: Kull dritt.
Allura akbar minn, inqas minn, akbar minn, jew daqs, inqas
minn, jew daqs.
Aħna nużaw ugwali doppja sabiex jikkontrolla għal ugwaljanza, għaliex wieħed ugwali mezzi
assenjazzjoni, id-dritt?
Iva.
U allura nistgħu wkoll ma ugwali minn tuża t-trade exclamation, ugwali.
>> U dan is-simbolu marka exclamation jistgħu jiġi estiż ukoll b'tali mod li jekk inti tixtieq
invertit kwalunkwe tip ta 'Boolean espressjoni, inti tista 'tagħmel dan.
Allura dan se tevalwa veru biss jekk it-tweġiba hija inqas
minn jew ugwali għal żero.
Kwalunkwe mistoqsijiet dwar dan?
OK.
>> Allura inti tista 'wkoll jikkombinaw dawn espressjonijiet li jużaw loġika u u
loġiku Or.
Allura dan huwa biss is-simbolu U, li għandu jkun Shift, 7.
U dan huwa s-simbolu tal-pajpijiet, li hija mhux żgħira L. Hu l-waħda
li d-dritt fuq tiegħek Enter.
Allura inti tuża tnejn minn dawn li jissimbolizzaw loġiku U l-loġika Or.
>> Allura dan biss se terġa 'lura minnu jekk it-tweġiba huwa wieħed, tnejn, tlieta, jew erba '.
U dan biss se terġa 'lura minnu jekk it-tweġiba huwa lil hinn minn dik fuq kull naħa.
Għalhekk mhuwiex wieħed, tnejn, tlieta, jew erba '.
U l-mod inti tuża li fl-espressjoni -
>> ROB: Or żero jew ħamsa.
>> JOSEPH: Zero jew ħamsa.
Jiddispjacini.
Iva, iva, iva.
OK.
U hawn issa, bl-istess mod inti tuża dik l-espressjoni, iżgħar
naħa espressjoni ta 'Jekk kondizzjonali dikjarazzjoni, inti tużaha wkoll il-
istess mod bi ftit tqegħid ġewwa ta ' il-parentesi tad-dikjarazzjoni IF.
Allura dan printf biss se nar jekk it-tweġiba huwa wieħed, tnejn, tlieta, jew erba '.
Kwalunkwe mistoqsijiet dwar tgħaqqad espressjonijiet?
>> Allura hemm ieħor kondizzjonali Ibni nitolbu IF / Else.
Allura bażikament, dan issa jfisser, OK, Jekk xi ħaġa jien ridt li jiċċekkjaw ma kienx
veru, imbagħad mur l-Else u jwettaq dak azzjoni oħra.
Allura f'dan il-każ partikolari, staqsejt l-utent għal integer.
Huwa l-eqreb numru sħiħ akbar minn żero?
Iva?
Well, allura dawn qabad numru pożittiv.
Jekk le, allura għandu jkollu kien negattiv jew żero.
Allura inti qabad numru negattiv jew żero f'dan il-każ.
Iva.
Jew żero.
>> U allura aħna wkoll ikollhom Jekk / Else, Jekk u Else.
Allura dan tikri us tesegwixxi sekwenza ta ' affarijiet biss jekk l-ewwel dawk jonqsu.
Allura f'dan il-każ, issa aħna qed jagħmlu l-aħħar waħda inti pick żero.
Mela jekk la qabad pożittiv u lanqas numru negattiv, allura dawn għandhom
qabad żero.
Allura huwa biss jinżel l- katina bħal dan.
>> Allura eżempju ta 'kif Jekk huwa differenti mill -
IF / Else hija differenti minn biss sekwenza ta 'IFs.
U din hija kwistjoni komuni li nies jistaqsu huwa, ukoll, jekk ikollok bħal
95 CS50, x'se dan program jgħidlek?
>> SPEAKER 5: You ltqajna A.
>> JOSEPH: Iva.
You ltqajna kull wieħed wieħed minn dawn id-dritt.
You ltqajna A, inti ltqajna B, inti ltqajna C u D, id-dritt?
Allura dawn kollha jiksbu evalwati fl-ordni.
Allura filwaqt li 95 huwa akbar minn 90, huwa wkoll aktar minn 80, huwa wkoll
akbar minn 70, u huwa wkoll akbar minn 60.
Allura inti ltqajna kollha ta 'dawk il-gradi.
U nassumi inti jridux biss l A.
>> Il-mod biex jiffissaw dan huwa li tissostitwixxi dawk Else / Jekk "s.
Allura f'dan ix-xenarju, jara li 95 hija akbar minn 90, u allura ma
m'għandux għalfejn jevalwa l-bqija tad-dikjarazzjonijiet.
Xi mistoqsijiet dwar dan?
>> Allura hemm tip kondizzjonali ieħor ta ' struttura li għandna hawnhekk li aħna
sejħa ta 'dikjarazzjoni swiċċ.
Allura dan jippermetti li inti bażikament tiċċekkja dak il-valur ta 'numru inti tpoġġi
fis-istqarrija switch hu.
Allura f'dan ix-xenarju, aħna qed jaqilbu fuq n, u aħna qed tgħid, oh, jekk n hija
waħda, imbagħad jistampaw dik id-dikjarazzjoni.
U mbagħad break, li jfisser ħruġ barra tad-dikjarazzjoni swiċċ.
>> Jekk ma kienx wieħed, allura, ukoll, biss eventwalment tivverifika kollha ta 'dawk il-każijiet.
U għalhekk kontrolli jekk huwa wieħed jew tnejn jew tlieta, u prints xieraq.
U dak li dan il-keyword default down hawn mezzi hija jekk dawn ma tidħol fi kwalunkwe
ta 'dawk, allura jgħidu Invalid.
Mela ejja ngħidu I jistaqsu għall-n u l-utent tagħti me erbgħa.
Ukoll, taqbel mat ebda waħda minn dawn il-każijiet, għalhekk se jistampa x'hemm fil-
taqsima default.
Iva, mistoqsija?
>> SPEAKER 5: Tista 'tuża Boolean espressjonijiet minflok
wieħed, tnejn, jew tlieta?
>> JOSEPH: Għalhekk il-kwistjoni hija tista 'tuża Espressjonijiet Boolean minflok wieħed,
tnejn, u tlieta?
U fl-C, jiena nemmen li inti ma tistax tagħmel dan.
Imma f'lingwi oħra, li inti tista ' jiltaqgħu fit-tmiem tal-
semestru bħal JavaScript, inti tista '.
Ukoll, inti jkollok biex tiġi kkalkulata l-ewwel dak il-valur u mbagħad jużaw dan fil-
jaqilbu dikjarazzjoni.
Yeah?
>> ROB: Allura parti mill-benefiċċju ta 'swiċċ dikjarazzjonijiet hija taħseb jekk inti għamilt dan
bħala Jekk / Inkella, hekk simili jekk n ugwali huwa daqs wieħed jew ikun x'ikun.
Else / Jekk n ugwali ugwali tnejn, tkun xi tkun.
Else / Jekk n ugwali ugwali tlieta.
Allura l-mod kif il-programm imur huwa se sekwenzjalment jinżlu dik il-lista
u jivverifika, huwa ñ wieħed?
Nope.
Huwa n tnejn?
Nope.
Huwa n tliet?
Yeah.
Jagħmlu dan.
>> Billi ma 'dikjarazzjonijiet swiċċ, huwa verament kapaċi li jiġbru din tkun
verament mgħaġġel.
U hekk kif jgħid swiċċ, dan jgħid, id-dritt kollu, n huwa tnejn, I am
immedjatament se jaqbżu fejn I am suppost li tibda esekuzzjoni.
Jien mhux ser ewwel jiċċekkja, hija n wieħed, huwa n tnejn?
Hija tista 'minnufih tibda tagħmel dak li suppost tagħmel.
>> U minħabba dan, ma tistax tieħu kondizzjonijiet Boolean.
Jew inkella jkollhom jagħmlu l- sekwenzjali, bħal, id-dritt, hija n
akbar minn żero?
Else huwa n akbar minn 10 jew kwalunkwe.
>> JOSEPH: F'dan il-każ, jekk inti użati Jekk / Inkella, Jekk, allura l-iswiċċ kieku
run madwar tliet darbiet mgħaġġel mill-Jekk / Else, Jekk.
Nistgħu jorganizzaw il-bidla f'dik il- b'tali mod li aħna ma jqassmux
wara kull wieħed mill-każijiet.
Allura f'dan il-każ, jien f'kompartimenti numri li nagħżlu f'waħda u
tnejn huma ma numri għoli u tlieta ikun numru għoli.
>> Allura f'dan il-każ, jekk n huwa wieħed jew tnejn, huwa se tolqot il-każ u allura se
jaqgħu permezz, għaliex m'hemm l-ebda waqfa.
U se jispiċċaw here.
Allura jekk aħna pick wieħed, hija se tagħmel l-printf u mbagħad break hekk li l-ebda
dan huwa esegwit.
U ovvjament, jekk jidħlu fi tliet jew xi ħaġa oħra, allura se skip
dawk u ma jmorru hemm, u se tesegwixxi minflok il-
linja korrispondenti.
Hemm xi mistoqsijiet dwar dan?
Iva?
>> SPEAKER 4: Would ikollok żball jekk inti kellhom waqfa wara f'każ wieħed imma
ma jkollhom xi ħaġa biex tagħmel?
>> JOSEPH: Għalhekk il-kwistjoni hija se tikseb żball jekk għandek waqfa wara
Każ wieħed iżda hemm xejn li jagħmlu?
U t-tweġiba hija le.
Inti mhux se attwalment tikseb żball.
Yeah, mm hmm.
>> Allura bħala tip ta 'bidla ftit hawn, Jien ser tpoġġi printf hawn.
Whoops.
Allura dak li dan jistampaw jekk Nressaq wieħed fil bħala input?
Yeah.
Hija se jgħidlek hija ma ħaditx numru kbir darbtejn, id-dritt?
Minħabba li tolqot l-ewwel każ, dan ma kienx se jkisser, u kieku taqa '
permezz tat-tieni każ.
Xi mistoqsijiet dwar dan?
>> ROB: Kellek mistoqsija oħra?
>> JOSEPH: OK, jibred.
Kull dritt.
Allura hemm xi ħaġa oħra li nsejħu operatur ternarji li hija bażikament
sintassi alternattiv biex tagħmel Jekk u mbagħad Else.
U ihallik tagħmel dan kollu fuq linja waħda.
Allura f'dan il-programm partikolari, Jien tistaqsi l-utent għal n.
U jekk n hija akbar minn 100, I tell minnhom huma qabad numru għoli.
Else I jgħidulhom qabad numru baxx.
>> Allura nistgħu nużaw dan sintassi verament twila, spag, S, u mbagħad tiċċekkja jekk n hija
akbar minn 100 u tassenja b'mod xieraq.
Iżda nistgħu nagħmlu dan ħafna aktar konċiż billi jużaw din sintassi operatur ternarji
li tinvolvi kwistjoni marka u kolon.
Allura l-kwistjoni mark huwa essenzjalment tistaqsi mistoqsija, right?
>> ROB: Forsi zoom fl fuq dak.
>> JOSEPH: Iva.
Punt tajjeb.
Allura dan huwa l-operatur ternarji.
I ewwel titlob il-kwistjoni, huwa n akbar minn 100?
Jekk huwa, allura I tesegwixxi l-ewwel parzjali qabel l-kolon.
Jekk mhuwiex, allura I tesegwixxi l- tieni parti wara l-kolon.
Mela jekk n hija akbar minn 100, allura fisien għolja u tistabbilixxi
li fis string s.
Jekk n huwa inqas minn 100, fisien baxxa u mbagħad tpoġġi dan in string s.
Allura li se jikkondensa din blokki kbar isfel fil biss li linja waħda.
>> SPEAKER 5: Huwa li popolari?
>> JOSEPH: Iva, huwa pjuttost popolari għall- affarijiet fejn essenzjalment inti tixtieq li
do assenjazzjoni bbażati fuq xi tip ta 'kundizzjoni.
U f'dan il-każ, konna jippruvaw biex jiġi assenjat valur lill string s.
Huwa mhux hekk -
I raden I ma verament jippreferu f'każijiet oħra.
Imma hija speċjalment utli għal dan assenjazzjoni.
>> ROB: Dan huwa mudell pjuttost komuni fejn ikollok xi varjabbli li
int ser ngħid, jekk xi ħaġa, stabbiliti dan il-varjabbli tal-valur wieħed; inkella, tistabbilixxi
dan il-varjabbli valur ieħor.
U dan huwa l-xenarju fejn tuża ternarji.
>> JOSEPH: U int iffrankar lottijiet ta 'linji, id-dritt?
U hija biss tagħmel kodiċi tiegħek forsi ftit aktar leġġibbli.
Iva, mistoqsija?
>> SPEAKER 6: Għal tlett fibri, tista 'tmur, spag s ugwali i, kwistjoni mark?
U allura inti jista 'jkollhom, ngħidu aħna, ħames għażliet differenti.
U jiddependi fuq dak in-numru ta 'n kien, kieku inti tagħżel wieħed minn dawk?
>> JOSEPH: Għalhekk il-kwistjoni hija, hemm tip ta 'sintassi fejn inti tista' tagħmel string
i ugwali n, u mbagħad ikollhom aktar minn żewġ għażliet wara dik il-marka kwistjoni?
U tweġiba sempliċi hija le, ma hemm verament mod tajjeb biex tagħmel dan sakemm
inti tixtieq li bejta ternarji multipli operaturi ġewwa ta 'xulxin.
>> Inti tista 'tagħmel bħall n akbar minn 100, trade mark in kwistjoni, u mbagħad ieħor
operatur ta 'tlett fibri, n ikbar minn 50, trade mark in kwistjoni, u bejta dan il-mod.
Iżda f'dak ix-xenarju, il-kodiċi tiegħek jkollna tip ta 'illeġibbli u messy,
u jista 'jkun aħjar li jmorru biss għal dikjarazzjoni Jekk / Else f'dak il-punt.
>> ROB: U wkoll, bħala nota tal-ġenb, PHP timplimenta b'mod żbaljat il ternarji
tali operatur li ternaries nested lanqas ma jaħdmux kif suppost.
>> JOSEPH: Yeah.
Hekk jiġrilha ftit konfużjoni, speċjalment meta tmur
għal lingwi differenti.
>> ROB: Huwa konfuża biżżejjed li lingwi huma żbaljati dwar dan.
>> JOSEPH: Allura fil-fatt, biss biex tiċċara, ma kulħadd jaf x'inhu dak
% S ma hawn?
Xi mistoqsijiet dwar dan?
I raden biss għall-camera, il-% s bażikament tikri us tpoġġi placeholder
għal string.
U mbagħad fl-aħħar, aħna jispeċifikaw li l- varjabbli irridu li jitqiegħed fis dan
detentur post huwa s.
Allura li bażikament jieħu s u tpoġġiha hija fil hawn.
U mbagħad se jistampa, inti qabad għoli jew inti qabad numru baxx.
OK.
>> Allura loops jippermettu li ssir l-affarijiet fl-mozzjonijiet ċirkolari, right?
Inti jista 'jkollok jiltaqgħu magħhom dan Scratch fil-forma ta 'Forever loops
jew Irrepeti Sakemm jew Irrepeti a partikolari numru ta 'drabi.
Allura għaliex dan huwa tajjeb għalina?
Ukoll, fil-C, ejja ngħidu li għandna dan kanzunetta implimentati Scratch li
sings, dan huwa l-kanzunetta li qatt ma tispiċċa.
Hija biss tmur fuq u fuq u fuq dejjem u għal dejjem.
Ukoll, inti ma tista 'verament tagħmel programm li għandha numru infinit ta 'printf
dikjarazzjonijiet fiha, right?
>> Allura f'dan ix-xenarju partikolari, mod wieħed li inti tista 'tagħmel dan ix-xogħol u
li jagħmilha jistampaw dejjem huwa li minflok jużaw loop Filwaqt.
Allura loop Filwaqt li se tesegwixxi x'hemm fil-ġisem taż-żewġ ċineg li
jappartjeni lilha bbażat fuq dak il-kundizzjoni hija.
Allura f'dan l-eżempju partikolari qabel, jekk irridu li jistampaw dan dejjem, dak
jista 'nagħmlu?
Ukoll, żgur, right?
>> Allura dan it-tip ta tgħaqqad l-idea ta 'xi espressjoni Boolean
flimkien ma 'linja.
U aħna tgħallmu dwar Boolean espressjonijiet preċedenti.
Allura kull meta l-kundizzjoni ġewwa tal li filwaqt li jibqa 'veru, dan loop
ser teżegwixxi fuq u fuq u fuq.
U f'dan il-każ, jekk aħna biss jipprovdiha ma 'veru, dan jikkawża infinita
loop li tistampa l-kanzunetta fuq u fuq u fuq kif aħna mixtieq qabel mingħajr
li jkollhom programm li għandu infinita numru ta 'dikjarazzjonijiet printf, li hija
ma jkunx possibbli.
>> Allura aktar compellingly, għalkemm, inti tista 'tuża dan bil-
varjabbli u kundizzjoni.
Mela ejja ngħidu li rridu li jirrepetu l- frażi, totalment loopy, 10 darbiet.
Allura dak li tista 'tagħmel ma' loop Filwaqt li inti tista ewwel initialize kontro
barra varjabbli tal- Filwaqt loop sa 10.
U mbagħad bażikament, kull darba li inti tmur permezz tal-linja Filwaqt, inti jistampa
id-dikjarazzjoni u allura inti tnaqqas l- counter varjabbli sa fl-aħħar,
f'xi punt, ladarba aħna naqqas I biżżejjed drabi, 1 minn I darbiet biżżejjed -
u biss biex tiċċara, minus I minus ifisser I ugwali I minus 1.
>> Li bażikament se jġib I isfel għall- punt fejn darba I hit żero, dan
kundizzjoni m'għadux vera u għalhekk ħruġ barra mill-linja.
Allura totalment loopy prints biss 10 darbiet.
Kwalunkwe mistoqsijiet dwar loop Filwaqt?
OK.
>> Allura hemm mod nistgħu nagħmlu dak li aħna biss għamlet b'mod aktar konċiż
nsejħu Għall loop.
Allura loop Għal tikkonsisti inizjalizzazzjoni, kundizzjoni, u
aġġornament, bħad kellna qabel f'dan loop Filwaqt.
Mela ejja tagħti ħarsa.
F'dan loop Filwaqt li, kellna inizjalizzazzjoni, allura kellna
kundizzjoni li aħna ċċekkjati.
U allura kellna aġġornament pass fil-quċċata.
>> Bil loop Għal, dan bażikament jieħu dawn it-tliet affarijiet u jikkondensa dan
isfel fil-linja waħda.
Allura l-ewwel ħaġa li tagħmel dan fil- Għall loop huwa l-inizjalizzazzjoni.
U allura inti tagħmel b'semicolon, u mbagħad inti tagħmel il-kundizzjoni, li hija I
akbar minn żero tmur hemmhekk, u allura l-pass aġġornament.
Allura dan gets mwettqa fil- ħafna aħħar tal-ġisem loop.
Allura dawn iż-żewġ programmi huma essenzjalment ekwivalenti.
>> Kwalunkwe mistoqsijiet?
Allura dak li huwa wieħed differenza bejn dawn iż-żewġ?
Jista 'xi ħadd punt out?
Jista 'jkun daqsxejn sottili.
Huwa biss differenza żgħira ħafna.
Iva?
>> SPEAKER 5: Inti ma jkunux jistgħu jużaw il-varjabbli I barra tal-Għar loop
[Inaudible]?
>> JOSEPH: Eżattament.
Allura din hija xi ħaġa aħna ser tingħata biex aktar tard imsejjaħ ambitu varjabbli.
Iżda essenzjalment, dan int ħajjiet I barra ta 'dan loop Filwaqt.
Allura ladarba din loop Filwaqt isir eżekuzzjoni, I ser tkun tista 'tuża I aktar tard
fuq fil-programm.
>> Billi ma 'dan Għal loop, dan int I huwa scoped ġewwa ta 'dan għal loop.
U minħabba li huwa ġewwa ta 'dan il-porzjon tal-linja Għal, li jibda
fit-parentesi u tispiċċa bil l-Brace kaboċċi hemmhekk.
Kwalunkwe ħaġa li s iddikjarat ġewwa ta ' hawnhekk ma jistax jintuża barra.
Mela jekk jien jippruvaw jużaw I barra, dan ser tell me, simbolu mhux iddikjarat.
U essenzjalment, I kieku ma tkun tista 'tużah.
>> ROB: U sew, 10 snin ilu, fl- litteralment każijiet kollha, braces kaboċċi huma
dak li inti użata biex tistabbilixxi l-ambitu ta 'varjabbli.
Allura fil hemm, int I ugwali għal 10 huwa ddikjarat ġewwa ta 'dan
sett ta 'ċineg kaboċċi.
U hekk allura sakemm inti tipprova tuża I qabel din Brace kaboċċi, huwa multa.
Inti tista 'tara meta inti tip tagħmel, int tara sing, sing, std, ugwali, C99.
>> Allura li huwa verżjoni aktar tard ta 'C li GCC implimentat dan jagħti wkoll
dan shortcut.
Allura dan jintuża biex m'għandux ikun permess, C. U tista 'tara għaliex, għaliex dan int
I huwa barra ta 'din Brace kaboċċi iżda huwa għadu meqjus li jkun fl-
iskop ta 'dawn ċingi kaboċċi.
Iżda din hija ħaġa konvenjenti ħafna, u għalhekk huwa estensjoni tajba.
>> JOSEPH: Kwalunkwe mistoqsijiet?
OK.
Allura x'hemm aktar utli hija li xi kultant Tixtieq tip ta 'dinamiżmu fl
loop tiegħek, right?
Inti ma jridux biss neċessarjament jistampaw totalment loopy-ħin kollu, inti
tixtieq li għadd stabbiliti mill- 10 jew xi ħaġa.
U għalhekk inti tista 'tuża l-varjabbli counter ġewwa ta 'dak loop ukoll.
U f'dan il-każ, dan il-programm biss jgħodd isfel minn 10-triq kollha stabbiliti.
U dak ma jkunx print?
Ma print żero, dritt, għaliex meta -
Iva, lanqas ma jistampaw 11.
>> Għalhekk ma jistampaw żero, għaliex meta I huwa żero, ftakar, huwa jevalwa
il-kondizzjoni qabel ma tmur fuq biex tesegwixxi l-korp loop.
U meta I huwa żero, dan huwa falz, hekk ma jistampa fl-għadd
żero, hija biss tistampa l-għadd isfel 10-triq kollha sa 1.
Jekk aħna verament riedu li jistampaw żero, allura aħna se tpoġġi sinjal ugwali
wara dan akbar minn sinjal.
OK.
>> Allura mod wieħed biex tagħmel validazzjoni input, li huwa meta inti titlob lill-utent biex jagħmlu
xi ħaġa, inti tixtieq li tagħmel ċert li ssegwi l-istruzzjonijiet tiegħek, huwa l-użu
l loop Filwaqt, right?
Allura f'dan il-każ partikolari, jien tistaqsi għal numru pożittiv u allura jien
stennija għall-input.
>> U mbagħad I ċċekkjati Filwaqt li l-input huwa inqas minn żero, iżommu talbithom.
Dan sakemm dawn jagħtu me numru li ma jkunx pożittiv, iżommu tistaqsi,
iżommu tistaqsi, iżommu tistaqsi.
Imma dak li hu tip ta 'stramb dwar dan?
Jew dak li ma jidhirx ottimali dwar din l-istruttura dritt hawn?
Kulħadd?
Iva?
>> SPEAKER 6: Inti tirrepeti l-istruzzjoni darbtejn.
>> JOSEPH: Dritt.
Allura aħna għandna żewġ dikjarazzjonijiet printf hawn, id-dritt?
Allura hemm mod nistgħu tikseb dan biss isfel sa wieħed li tagħmel tagħna
kodiċi aktar faċli biex jinqara u ftit aktar nadif.
U allura aħna ma jkollhomx jkunu Get darbtejn ukoll.
U mod wieħed li inti tista 'tagħmel dan huwa bl-użu ta loop Do-waqt.
>> U loop Do-Filwaqt li hija bażikament forma differenti ta 'loop Filwaqt fejn
dak kollu li huwa fil-braces kaboċċi gets jitwettaq mill-inqas darba.
Allura fil hawn, I jiddikjara, int input, barra l-ewwel.
U mbagħad I biss jgħidu, jagħmlu dan istruzzjoni filwaqt input
tkun inqas minn żero.
Għalhekk hits-Do ewwel.
Dejjem se tesegwixxi dan mill-inqas darba, u għalhekk dejjem se titlob lill-utent
għall-input mill-inqas darba.
U allura jevalwa dak input, u din tmur fuq f'ċirku.
Iva, mistoqsija?
>> SPEAKER 6: Hemm mod biex tagħmel dan [Inaudible] tipi, bħal jekk inti tgħidli,
GetString, u xi ħadd [inaudible]
hemm mod biex [inaudible]
>> JOSEPH: Għalhekk il-kwistjoni hija, hemm mod biex tagħmel validazzjoni input jekk l-utent
ma tpoġġix fid-dritt tip ta 'varjabbli?
Hekk jekk aħna nitolbu għal int u huma agħtina string minflok.
U fil-funzjonijiet li aħna jimplimentaw għalik, GetInt, GetString fil kollha ta '
dawk il-funzjonijiet, huma fil-fatt diġà tagħmel dik it-tip ta 'input tip bażiku
validazzjoni taħt il-barnuża.
Mela jekk inti qed tuża l-funzjonijiet li aħna ħadt, inti ma verament ikollhom.
>> Iżda jekk inti tixtieq li tħares aktar lejn kif inti tista 'attwalment tagħmel dan, inti tista' tfittex
taħt il-barnuża fil-fajl I/O--
ma fajl, il-funzjonijiet standard I / O bħal qari mill input standard u
output standard.
U inti tista 'tikseb sens aħjar ta 'kif inti tista' tagħmel dan.
>> ROB: Kwistjoni, għalkemm, hi speċifikament bl-eżempju inti
qal, inti tistenna string u I jidħlu int.
Kif tgħid id-differenza bejn intenzjonalment jixtiequ l-
string 123 versus jixtiequ l-int 123?
Għalhekk string, huwa pretty ħafna hemm l-ebda validazzjoni, huwa biss dak kollu li
daħal inti se tinterpreta bħala sekwenza.
>> Int huwa aktar faċli, għaliex l-ebda kwistjoni l- input tieħu mill-utent, int
dejjem tieħu string.
U għalhekk li string inti tista 'mbagħad jivverifikaw, huma kollha ta 'dawn
numri attwalment numeriċi?
>> JOSEPH: OK.
Kwalunkwe mistoqsijiet dwar loop Do-Filwaqt?
>> ROB: Oh, u dan huwa wkoll -
jmorru lura għall-ambitu, kemmxejn komuni żball qed tipprova tuża xi lokali
varjabbli minn ġewwa dan Do-Filwaqt li loop ġewwa ta 'din il-kundizzjoni.
U fil-fatt, jekk aħna biss ħassar dan u qal, input int ugwali
GetInt, allura l-kumpilatur se Yell fil us, għaliex input ma teżistix
barra mill-ambitu ta ' dawn braces kaboċċi.
>> JOSEPH: U huwa għalhekk li għandna bżonn dan lineup hawn.
OK.
Allura inti tista 'wkoll break out ta' loop kmieni jekk inti tixtieq li.
Allura dan huwa mod differenti ta ' implimentazzjoni dak li aħna biss implimentati.
U minflok tintuża l-kondizzjoni fil-parentesi, aħna qed jużaw
Jekk dikjarazzjoni ġewwa tal-ġisem tal-loop Do-waqt.
>> U bażikament, meta l-input huwa finalment akbar minn żero, aħna se
break out tal-linja.
U hekk aħna se jmorru kollha il-mod stabbiliti hawn.
U tista 'tara li dan seta' probabbilment jiġu preferuti f'dan
xenarju, għaliex dan huwa ftit daqsxejn aktar nodfa u ftit
daqsxejn aktar faċli biex jinqara.
Billi dan, inti tip ta ' linji extra fiha.
Huwa biss ftit uglier, I raden, f'sens.
Iva, mistoqsija?
>> SPEAKER 4: Se break biss jiksbu inti out ta 'sett wieħed ta' ċingi?
>> JOSEPH: Dritt.
Għalhekk il-kwistjoni hija se break biss inti toħroġ loop wieħed?
U it-tweġiba hija iva.
Mela jekk għandek nested Għal loops, għall- eżempju, jekk ikolli Għal int I egwali għal 0
sa 10 u mbagħad Għal int J ikun egwali għal 0 sa 10, jekk I toħroġ 'il barra ta' ġewwa
loop, I xorta se jmorru għal-linja ta 'barra.
Għalhekk ser iżommu jwettqu l- operazzjonijiet fuq barra.
Xi mistoqsijiet dwar dan?
Iva?
>> SPEAKER 5: Imma jinkiser biss funzjonijiet għall-ċingi kaboċċi, mhux għal oħrajn
dikjarazzjonijiet?
[Inaudible]
>> JOSEPH: Għalhekk il-kwistjoni hija se break funzjoni biss għal-linji għall-kuntrarju
dikjarazzjonijiet oħra bħall Jekk?
And yes, li huwa l-każ, għaliex int breaking out ta 'linja, id-dritt,
f'sens.
>> ROB: Fil-maġġoranza kbira tal-każijiet, huwa dan huwa t-tip ta 'xi ħaġa Jekk,
imbagħad break.
Allura inti ma jkollhom jiksru japplikaw għal il Jekk dan huwa tgeżwir madwaru.
U wkoll, dan mhuwiex ħafna ta 'linja, imma ftakar li swiċċijiet huma wkoll
maqsuma minn mill pawżi.
Rajna pawżi qed jintużaw bi swiċċijiet qabel.
>> JOSEPH: U inti tista 'wkoll jużawhom fil-linji waqt u Għal loops.
Kwalunkwe mistoqsijiet?
OK.
Allura up li jmiss huwa funzjonijiet.
Allura inti jista 'jkollok użati waħda minn dawn BYOB blokki proġett Scratch tiegħek.
U dan bażikament tippermetti inti tiddefinixxi sett ta '
istruzzjonijiet li għandhom jiġu segwiti.
>> U dak I tfisser li huwa ejja jaħsbu lura għall-matematika, lemin, alġebra.
Inti għandek nsejħu funzjoni ta 'x, xi varjabbli, u ejja ngħid dan
funzjoni hija f ta 'x ugwali x plus 5.
Allura inti tista 'taħseb f ta' x dan iswed kaxxa li jieħu 15 u mbagħad
tipproduċi 20.
>> Allura aktar ġenerali, funzjoni hija xi ħaġa li jieħu xi inputs u
imbagħad jipproduċi xi riżultati.
U għaliex huma funzjonijiet tajba?
Huma qed tajba għal numru ta 'raġunijiet.
Allura ma xi ħadd tixtieq li tieħu stab fuq liema organizzazzjoni jfisser?
F'termini ta 'għaliex funzjonijiet huma utli?
Iva?
>> SPEAKER 4: Jagħmel tiegħek kodiċi aktar leġġibbli.
>> JOSEPH: Dritt.
Allura waħda mill-affarijiet huwa jagħmel kodiċi tiegħek aktar tinqara, right?
Minflok ma jkollhom like int x ugwali x darbiet x drabi x, I jista 'jkollhom kubu ta' x,
li hija aktar leġġibbli u aktar tinftiehem għall-qarrej.
>> Organizzazzjoni huwa wkoll f'termini ta ' qsim up kodiċi tiegħek fis maniġġabbli
porzjonijiet, sabiex minflok tipprova jimplimentaw dan kollu fis-sezzjoni waħda twila
fl prinċipali, inti tista 'tip ta' tinqasam it up fis simili, OK, ejja jiktbu funzjoni
biex kubu xi ħaġa, ejja jiktbu funzjoni li kwadru xi ħaġa.
B'hekk, int tista 'tinqasam it up fis ċkejkna, partijiet ftit li inti tista 'tindirizza
għall-kuntrarju jippruvaw jitrattaw problema kbira kollha f'daqqa.
>> ROB: Jew anke ċkejkna, partijiet ftit li inti u sieħeb tista 'tindirizza.
>> JOSEPH: Yeah.
>> ROB: Allura minflok tnejn Inti tipprova biex impjant wieħed
funzjoni fl-istess ħin.
>> JOSEPH: Simplifikazzjoni.
Kulħadd tixtieq li tieħu raden?
Iva?
>> SPEAKER 5: Aktar ripetizzjoni.
>> JOSEPH: Dritt.
Allura ħaġa waħda li inti tista 'tagħmel simplifikazzjoni hija li huwa tip ta 'fuq
l-istess linji-użabilità mill-ġdid li darba I jiktbu funzjoni kubu, nista '
biss użu li aktar u aktar u aktar għal darb'oħra fil-programm tiegħi minflok l-ittajpjar
x drabi x drabi x aktar u aktar u aktar mill-ġdid.
U simplifikazzjoni hawn wkoll biss ifisser jagħmel kodiċi tip ta 'tiegħek
aktar faċli biex debug ladarba inti maqsuma dan up fis funzjonijiet.
Għaliex imbagħad inti tista jillokalizzaw fejn problemi tiegħek tip ta 'huma.
Kwalunkwe mistoqsijiet?
>> Allura ieħor idea hija estrazzjoni, id-dritt?
Din il-kaxxa sewda.
Bħal inti taf liema GetInt ma li jirċievi input mill-utent?
Aħna ma verament qallek, right?
Kollha konna qallek hija GetInt ma eżattament dak li jgħid li ma.
Hekk anke jekk aħna ma jgħidlek kif taħdem, inti xorta tkun taf.
>> Allura f'dan il-każ partikolari, dan huwa funzjoni jikkwadrupla li ma
affarijiet differenti għal kontribut li jipproduċi output.
U inti tista 'jikkwadrupla numru billi jiġi mmoltiplikat erbgħa.
Jew inti tista nsejħu bit bidla lilha mill tnejn.
U aħna ser ikopru dan ftit aktar tard.
U hemm ebda ħtieġa li jkunu jafu kif dan funzjoni attwalment xogħlijiet sakemm
xogħlijiet kif intqal.
>> Allura taħt il-barnuża, I jista 'jkun simili, ritorn ħinijiet input
tmienja diviżi fi tnejn.
U inti ma tkunx taf, right?
Kulma għandek bżonn tkun taf dan ma dak li jgħid.
Allura dak hu l-ħaġa utli dwar estrazzjoni.
>> U ħaġa oħra huwa tip ta 'din l-idea ta 'lokalizzazzjoni kodiċi tiegħek biex wieħed
partikolari taqsima.
Mela jekk inti ma jkollhom problema, inti ma ikollhom imorru kollha fuq kodiċi tiegħek jippruvaw
li tiffissa fejn il-problema kienet.
Allura f'dan il-każ, I implimentati kubu ħażin.
Ħsibt kubu kien multiplikazzjoni bi tlieta.
>> Allura f'dan il-każ, dan huwa program wieħed li biss ikun multiplikazzjoni bi tlieta
kullimkien.
U hemm programm ieħor li għandu kubi fatturati out in funzjoni.
U hekk issa jekk irrid li jiffissaw żball tiegħi hawn, I ikollha tiffissa kull linja waħda
tal-kodiċi f'dan il-programm.
Billi min-naħa l-oħra, jekk I jużaw il- funzjoni, I biss bżonn għall-bidla
dak li kien ħażin f'post wieħed.
>> Għalhekk fl-xjenza tal-kompjuter, aħna sejħa inputs u outputs.
Inputs huma msejħa parametri jew argumenti, u l-outputs huma msejħa
ritorn valuri.
U aħna se tara kif dan jgħinna tip ta tiddefinixxi funzjoni fit-tieni.
Allura din hija definizzjoni funzjoni għall cubing.
Sabiex tieħu input, u mbagħad dan jirritorna li numru ta 'drabi
innifsu tliet darbiet.
Mela ejja din tinqasam.
>> Allura aħna għandna header funzjoni, li bażikament jikkonsisti fi tliet affarijiet.
Allura aħna għandna l-parametri, li huma, kif għidt qabel, il-
inputs fil din il-funzjoni.
U allura aħna nagħtu l-funzjoni isem.
F'dan il-każ, huwa msejjaħ kubu.
U allura aħna tispeċifika liema t-tip tal-valur tar-ritorn hija.
>> Allura f'dan il-każ, il-funzjoni kubu tiegħi jieħu fil integer u wkoll
prospetti integer.
Hekk jekk I jgħaddu fi tnejn, tnejn huwa integer, dan jirritorna tmien lili, li
huwa integer.
Allura ritorn parametri isem tat-tip.
Mistoqsijiet dwar dan?
>> U allura l-valur tar-ritorn huwa attwalment speċifikat fl-aħħar billi qal ritorn
u mbagħad jirritornaw kwalunkwe fiha l-valur tar-ritorn.
Allura f'dan il-każ, jekk aħna qiegħdu kollu flimkien, funzjoni jieħu fil-
parametri, huwa msejjaħ xi ħaġa, u dan jirritorna xi ħaġa li hija t-tip
li aħna ngħidu li kienet se tkun.
Kwalunkwe mistoqsijiet?
>> Allura kif nistgħu jużaw funzjoni?
Well, aħna jiktbu funzjoni u mbagħad nużawha fil-programm tagħna, id-dritt?
So I imsejħa kubu, u imbagħad I jistgħu jużaw kubu.
>> Imma x'inhu importanti li wieħed jinnota hija li kwistjonijiet ordni.
Jekk ikolli kubi hawn taħt prinċipali, huwa ser jibda fis kubu.
U f'dan il-punt, hemm xejn imsejħa kubu fil-programm, u huwa
biss se tkun simili, I jkollhom ebda idea dak kubu huwa.
>> Għalhekk se jgħidlek, impliċitu dikjarazzjoni tal-funzjoni.
Dik hija l-iżball li turi up.
U hekk f'dan il-każ, kubu huwa taħt prinċipali, u għalhekk mhuwiex ser
tkun taf dwar dan.
>> SPEAKER 5: Allura prinċipali hija normalment l-aħħar funzjoni definita?
>> JOSEPH: Għalhekk il-kwistjoni hija, hija prinċipali normalment l-aħħar
ħaġa li youd jiddefinixxu?
U l-ebda.
Huwa għaliex aħna normalment simili prinċipali li tkun fil-quċċata, right?
Minħabba li l-ewwel ħaġa li għandek trid li l-programmer-ftuħ tal-
programm biex tara.
U hekk kif nistgħu issolvi din il-kwistjoni tal-we tixtieq prinċipali li tkun fil-quċċata, iżda l-
funzjonijiet li rridu, irridu li jkun taħt ewlenija għadhom ikunu kapaċi jużaw
minnhom ġewwa tal-prinċipali?
>> Well, aħna nużaw dak li nsejħu prototip funzjoni.
Allura dak prototip funzjoni essenzjalment hija hija l-ewwel jieħu dak
il-firma jew il-header funzjoni ta 'dak li rridu li jimplimentaw l isfel
hawn, u aħna poġġih fuq il-quċċata ta 'programm.
>> Allura f'dan il-każ, aħna ngħidu li, ukoll, aktar tard fil-programm tagħna, aħna qed tmur
biex tagħmel wegħda biex jimplimentaw dan funzjoni msejħa kubu int, li jieħu
input numru sħiħ.
Allura issa, minħabba li huwa aktar prinċipali, prinċipali, li għaddej biex ngħid, oh, ukoll,
aktar tard fil-programm, li għaddej biex tkun hemm so I jista 'jirreferi għal dan, so I ser
biss ħallieh għaddej għal issa.
>> U mbagħad fil-qiegħ, nimplimentaw kubu.
U mbagħad ewlenija se biss jgħidu, ukoll, se sort ta 'link
dawn iż-żewġ simboli flimkien.
U aħna ser tkopri dak li ifisser aktar tard.
U għalhekk ser tkun taf li dan huwa l- funzjoni kubu li għandu użu.
>> ROB: Il-[inaudible] dwar jixtiequ prinċipali fil-qiegħ jew
top, stajt tidher tnejn.
Hemm affarijiet li ftit simili tpoġġi prinċipali fil-qiegħ.
Iżda malli l-proġett gets partikolarment big, normalment prinċipali jkun ġewwa xi
fajl kollha tagħha stess.
U f'dak il-punt, bħall- linja kubu int kieku -
ġewwa ta stdio.h huma mazz ta 'linji bħad li int
line input int kubu.
>> U għalhekk dawk l-prototipi huma affarijiet li għandek tendenza li jitqiegħed fis header files, fi
li punt, ma jimpurtax.
Ukoll, ma jimpurtax.
Dawk dejjem tmur fil-quċċata.
U jekk prinċipali mhuwiex fajl kollha tagħha stess, inti ma għandekx għalfejn tinkwieta dwar it-tqegħid
prototipi funzjoni individwali fil-fajl.
>> JOSEPH: U aħna ser jiksbu għal dak ftit ftit aktar tard meta Rob jibda jitkellem
dwar kumpilazzjoni.
U hekk hemm ukoll differenza bejn parametru u argument.
U parametru huwa biss dak nitolbu dawn l-inputs meta
niddefinixxu l-funzjoni.
U aħna sejħa hija argument meta aħna attwalment għaddih fil-funzjoni ta '.
>> Allura f'dan il-każ, dan huwa parametru, kif għidna qabel.
U meta aħna attwalment jużawha hemmhekk, kubu ta 'x, allura x nnifisha hija
nsejħu argument lill-kubu funzjoni.
>> ROB: Allura argumenti parametru huma -
hemm din id-distinzjoni, ħafna konfuż minflok xulxin.
F'dan il-punt, lili, huwa simili wieħed dawk il-kliem li meta nara dan fl-
-selvaġġ, I iżda ma jistax jgħin immedjatament kwistjoni dwar jekk huma jużaw fil-
il-kuntest korrett, minħabba li l- differenza hija sottili biżżejjed li biss
kulħadd tendenza -
I kważi dejjem ngħid argument irrispettivament minn dak li jfisser I.
>> JOSEPH: u l-funzjonijiet huma wkoll utli għal dak li nsejħu effetti sekondarji.
Allura funzjoni tista 'tieħu l-ebda dħul, u tista 'wkoll jipproduċu l-ebda riżultati.
Allura f'dan il-każ partikolari, jiena tiddefinixxi subroutine li m'għandha l-ebda
ritorn valur.
U sabiex jiġi speċifikat li, nużaw nsejħu vojt hawn fuq.
U għalhekk l-effett sekondarju ta 'din il-funzjoni huwa li sempliċiment prints Jittieħed
biex il-paġna.
Din attwalment ma tieħu kwalunkwe inputs, u dan ma
attwalment jipproduċu xi riżultati.
>> Iżda dan jista 'jkun utli fis-sens jekk inti tixtieq li, per eżempju, debug
xi ħaġa fil-programm tiegħek, jekk inti tixtieq jiktbu subroutine ftit li
tistampa, ejja ngħidu, il-kontenut tal-memorja jew xi ħaġa.
U hekk dawn l-effetti sekondarji huma kultant utli barra mill-kuntest
tal bħad inputs u outputs.
Kwalunkwe mistoqsijiet?
>> U biex jintemm dan segment partikolari, dak ma dan il-programm do?
I ser jagħtuk guys koppja ta ' sekondi biex taqra permezz ta 'dan.
Fuq livell bażika ħafna, dak li rridu ngħid huwa li tpartit xuy, right?
>> Hekk kif ħafna mill inti fil-fatt taħseb dan se swap xuy?
Jgħollu naħa tiegħek.
Ħadd.
OK.
Min jaħseb li se mhux tpartit xuy?
U s-somma ta 'li ma kien mhux il-kamra kollha.
Allura xi nies mhumiex ċert.
OK.
C'est raġonevoli.
>> Mela ejja jgħaddu x'jiġri meta inti attwalment sejħa funzjonijiet ewwel fl
Sabiex tingħata risposta għal din il-mistoqsija.
Allura dan huwa dak memorja tip ta 'qisu.
Dan huwa tip ta 'bħal' mudell simplifikat ta 'dak memorja qisu meta
inti tmexxi programm.
Allura hemm xi ħaġa imsejħa il-munzell down hawn u
xi ħaġa imsejjaħ il-borġ.
U dawn jikbru lejn l-nofs tal-memorja.
>> Allura f'dan il-każ partikolari, meta inti sejħa funzjoni, huwa
gets jitqiegħdu fuq il-munzell.
U mbagħad ikun x'ikun tinsab f'dak funzjoni soġġorni fil nsejħu li
frame munzell funzjoni tal.
U għalhekk li tikseb viżwalizzazzjoni sbieħ ta ' dan, let's - per eżempju, kellna l-
programm prinċipali qabel.
U ġewwa ta 'prinċipali, we called kubu.
Allura prinċipali irid l-ewwel tmur fuq il-munzell qafas, għaliex dan huwa l-ewwel funzjoni
li sejjaħ.
>> U mbagħad meta kubu huwa msejjaħ ġewwa tal prinċipali, jiġrilha tpoġġi fuq quċċata ta 'prinċipali
ġewwa tal-memorja.
Allura dak li inti ser ikollok avviż hawnhekk hija li kubu għandha parametri tagħha stess u tagħha
lokal stess.
Allura meta inti attwalment jgħaddi xi ħaġa li funzjoni, il-parametri li
gets huma kopji ta 'dak li kien għadda minn prinċipali.
>> U biex sort ta jispjegaw dan, ejja walk permezz ta 'programm.
Allura aħna għandna l-munzell; dan huwa biss il-porzjon munzell.
U dak li nagħmlu huwa aħna l-ewwel initialize x u y għal wieħed u tnejn.
Allura aħna għandna dawn il-kaxxi ftit.
Huma qed seduta fil stack prinċipali tal- qafas fuq il-munzell.
Huma fihom wieħed u tnejn.
>> Issa aħna sejħa swap.
Dak li jiġri huwa aħna jgħaddu xuy fis tpartit, u swap toħloq kopji tagħha stess
ta 'dawk il-varjabbli li jintużaw ġewwa ta 'qafas munzell tagħha.
Allura issa hemmhekk, għandna, li fiha l-valur li x kellha, u b,
li fiha l-valur li y kellhom.
Allura wieħed, tnejn.
>> U inti ser ikollok avviż li din tkun separata mill-x u y ġewwa ta 'prinċipali.
Allura aħna issa toħloq temporanju varjabbli li jkun fihom.
Waqqafna ugwali għal B, u għalhekk bidliet 1-2.
U allura aħna waqqafna b ugwali għal temperatura, li hija waħda.
>> U allura issa għandna ħruġ out ta 'din il-funzjoni.
Meta inti ħruġ mill-funzjoni, l- frame munzell gets popped off-munzell.
Aħna sejħa hija timbotta.
Timbotta qafas munzell fuq il-munzell u inti pop jekk off-munzell.
U għalhekk dak li jiġri huwa dak kollu li kien f'dak munzell frame tip ta 'ftit
tmur up fi fjammi.
U għalhekk li m'għadux jeżisti.
>> Imma dak li aħna Avviż?
Aħna qatt ma attwalment bidlu l- valuri ta 'xuy, right?
Allura dawk qagħdu lokali prinċipali.
U billi tgħaddi affarijiet fil-tpartit, aħna fatt qatt ma nbidlu dawk il-valuri.
U dak li nsejħu dan?
Aħna nsejħu dan jgħaddi minn valur.
>> Għalhekk fl-C, meta inti tgħaddi affarijiet fil- funzjonijiet, tgħaddi lilhom mill-valur u
jagħmel kopja minnhom għal il-funzjoni għall-użu.
U aħna ser jitgħallmu dwar xi ħaġa imsejħa tgħaddi b'referenza aktar tard, iżda li
mod inti tista 'ssolvi din il-problema.
Imma aħna mhux se joqogħdu jinkwetaw dwar li sa aktar tard.
>> ROB: U fil-fatt, dak it-terminu, li jgħaddi b'referenza, hekk C lanqas ma għandhom
tgħaddi minn referenzar.
C esklussivament tkun tgħaddi minn valur.
Ma jimpurtax dak li inti, inti dejjem tgħaddi kopja ta 'xi ħaġa.
Huwa biss li, bħal I sort tal msemmi li qabel ma pointers
u li string huwa verament ftit erbgħa bytes li tipponta lejn someplace fil-memorja.
>> Ukoll, jekk I jkollhom din string u huwa javżak me li huwa fejn l-sekwenza -
ukoll, jekk ikolli dan pointer għal dan post fil-memorja, imbagħad I jista 'jgħaddi
kopja ta 'dik pointer għal funzjoni, u dik il-funzjoni xorta jaf fejn fl
memorja huwa.
Allura kemm ta 'dawn pointers huma tipponta għall-istess post fil-memorja, u
li kif aħna qed tmur biex tkun tista ' li timmodifika l-affarijiet lil hinn mill-
frame munzell attwali.
>> JOSEPH: Tixtieq li tagħmel kumpilazzjoni?
>> ROB: Le, huwa 05:30.
>> JOSEPH: OK.
Huwa 05:30.
OK.
Allura aħna se jkopri kompilazzjoni I raden fil- -taqsima li jmiss, jew is-sezzjoni tiegħek
mexxej se f'dak il-punt.
U -
>> ROB: Kwalunkwe mistoqsijiet?
>> JOSEPH: Kwalunkwe mistoqsijiet?
Iva?
>> SPEAKER 5: Bl-użu kordi minn CS50, kwalunkwe funzjonijiet li aħna rridu li tuża għal
dawk, li ser tkun bħal funzjonijiet Ċ.
CS50 ma marret fi u għamlet ebda addizzjonali.
>> ROB: Correct.
Kwalunkwe wieħed mill-C bħal [inaudible], inti tuża dawk fuq kordi tagħna.
>> JOSEPH: U wieħed aħħar ħaġa li nixtieq jissemma li għandna Gwida tal-Istil
għal din il-klassi.
>> ROB: Oh, yeah.
>> JOSEPH: Mela jekk inti ħadthom ġejjin minn programmazzjoni isfond qabel, int
jista 'jkollhom ċerti konvenzjonijiet meta int bil-miktub kodiċi bħal tqegħid
braces fuq l-istess linja jew partikolari modi ta 'indenting
jew ismijiet varjabbli tiegħek.
F'din il-klassi, irridu li ssegwi Gwida tal-Istil speċifiku biss għaliex,
ukoll, jekk inti tmur out u jaħdmu industrija, int ser tkun mistennija
li jsegwu l-gwida tal-istil tal- kumpanija li fiha inti tmur.
>> Bħal per eżempju, Facebook I think għandha tip partikolari ta 'tismija
konvenzjoni.
U hemm differenzi bejn ġemel varjabbli casing u bħad
tisseparahom ma jenfasizza.
U wkoll, naħseb aktar importanti, bħall- per eżempju, indentazzjoni, right?
>> We do braces kaboċċi tibda fejn il-kundizzjoni hija, u dawn
huma fuq il-linja li jmiss.
U aħna wkoll ipoġġi ċineg kaboċċi fl anki jekk huwa biss linja waħda.
U ħafna drabi, hemm modi biex tagħmel huwa fejn inti tista 'tħalli dawn braces
off jekk huwa biss linja waħda taħt l-istqarrija Jekk.
Iżda f'din il-klassi, irridu li ssegwi Gwida tal-Istil speċifiku biss hekk ikollok
użati biex dik it-tip ta 'ħaġa.
>> ROB: Yeah, u Style 50 se jinfurzaw din il-gwida istil, u aħna
ser tuża Style 50 grad kodiċi tiegħek.
Għalhekk jagħmel l-affarijiet aktar faċli għalina u nisperaw m'għandekx tagħmel affarijiet li
ħafna agħar għalik minħabba l- stil standardizzata m'għandhiex tkun dik
realistika.
>> JOSEPH: U fl-aħħarnett, biex isibu l-istil Gwida, mur manual.cs50.net/style.
U yeah.
>> SPEAKER 4: Inti ser tinforza kull karattru f'kull linja?
>> ROB: Iva.
>> JOSEPH: Jiddispjacini, guys.
>> ROB: Dik hija bħal wieħed mill-uniċi.
Fuq dan il-punt, I am OK mal 120.
Jien OK ma qal 120 karattru f'kull linja.
Nifhem li jkun hemm xi limitu.
Naħseb 80 tant hija żgħira, iżda aħna qed jinfurzawha.
>> JOSEPH: Personalment, naħseb ma C, 80 karattri huwa aktar OK.
Ladarba inti tibda jkollna oħra lingwi bħal JavaScript u PHP, mhux
hekk raġonevoli li biss jillimitaw li 80 karattri.
OK.
Ukoll, li kien is-sezzjoni super.
Hawn xi ħadd li tixtieq kandju?
>> SPEAKER 4: Iva.