>> DAVID Malan: Toto je CS50, a to je na začiatku v prvom týždni.
A to, čo sme si povedali, že to je vytiahnuť späť záves na zariadenie, ktoré veľa
ze ste pravdepodobne prešiel okolo teraz rokov, ale možno nikdy úplne
vedel, čo to je.
Takže toto zariadenie bude pravdepodobne vyzerať pozná väčšina z vás teraz.
>> [PLAYBACK]
>> -Triumf matematické a mechanické zručnosti je tento skvelý nový
automatický kalkulátor na Harvard University.
Zložité problémy v matematike dať do zariadenia v kódovanej forme na
páska presne rieši za minútu zlomok času potrebného pre
ľudský výpočet.
>> Navrhnuté pre urýchlenie všetkých foriem matematický a vedecký výskum,
obrie mechanický mozog práce pre Spojené štáty
Navy do konca vojny.
>> [END PLAYBACK]
>> DAVID Malan: Takže to je to, čo vidíte Science Center, čo je miesto, kde
ktoré je stroj umiestnený.
Ste vlastne vidieť iba jeho časť.
Iba časť je v súčasnej dobe na displeji, a to s názvom zariadenia
Mark I, a to bolo v podstate naozaj obrovská kalkulačka.
To bol nasledovaný Mark II, a je to z Mark II, ktorý sme vlastne
si trochu slovníka.
>> Toto je prvý zaznamenaný príklad niečo, čo ste o tom, aby sa stal všetky
príliš oboznámení s nad Priebeh semestra -
totiž chyba.
Tak sa ukázalo, že na jednom mieste je ochranná známka II bol prístroj nefunguje
správne, a pri bližšom skúmaní, tam bola naozaj chyba - mora -
že mora -
vnútri.
A od tej doby, sme sa len chyby v programoch, ako chyby.
Takže viac o tom prísť.
>> Keď už hovoríme o videá rovnako, ak tak ešte neurobili, vedzte, že CS50 je
zrejme natočený.
Prednášky typicky ísť vpravo po trieda v akejsi pre-release
nezostrihané formát, a potom deň alebo dva neskôr, dáme do vyššieho rozlíšenia
a kvalitnejšie verzie.
Možno si spomínate, Vanessa, ktorá mala šťastie hrať s Google Glass,
ktoré som si spomenul účtovať tentoraz.
Takže ak chcete prísť po hodine a hrať sa, že by mal fungovať aj dnes.
A ak by ste chceli vidieť, čo Vanessa videl druhý deň, čo uvidíte
tu - dovoľte mi, aby som zvýšenie hlasitosti tu na mojom notebooku.
>> [PLAYBACK]
>> -Tak mi dovoľte fronta je to hore.
Dobrá.
Tak to dotknúť.
Dobrá.
OK, sklo.
Nahrávanie videa.
>> Dobrá.
Vanessa?
>> [END PLAYBACK]
>> DAVID Malan: Dobre, takže dôvod že to nefunguje pre väčšinu z vás na
koniec triedy, pretože som postupoval nahrať hodinu, ktorá
záznam ukazujúci na seba po Dal som okuliare dole.
Takže dnes, nechám je preč, ale vďaka môžete Vanessa za to, že takýto
dobrý šport.
>> Medzitým niekoľko oznámení predtým, než sme vpred dnes.
Takže človek, CS50 tradíciu má robiť čo môžeme snažiť, aby veľmi
rozsiahla skupina cíti menšie.
A na tento účel, väčšinou každý piatok, sa schádzame v reštaurácii v
námestia, oheň a ľad, sa 30 alebo 40 z vašich spolužiakov, sám, niektoré
pedagogickí pracovníci, a my sme majú veľmi neformálne obed.
Často sme pozvať priateľov z priemyslu, absolventi triedy, absolventi
koľaj, naozaj len na chate každý ďalšie hore, hovorí o živote po
vysoké školy, život v škole, a podobne.
Takže ak by ste chceli podieľať na tomto Prvý taký obed v piatok na
13:15, vedúce k tomu URL na nejakom mieste.
>> Počet miest je obmedzený, takže budeme robiť kto skôr príde, ten skôr melie.
Ale urobíme to znovu opakujúce sa základ, takže nie sa báť, ak nemáte
aby sa do tejto prvej várky.
>> Teraz, pokiaľ ide o zdroje za predpokladu, curricularly v kurze,
je tu celá zabil, a ak nemáte vytiahol kurzu na webových stránkach
už, najmä v rámci prednášok, Zistíte, že všetko,
sme sa minulý týždeň je tam, ako video a nejaký druh
elektronickej podobe.
Ale za videí nájdete že tam sú teraz v plnom znení
prepisy, napríklad, každej prednášky.
>> Takže ak sme skutočne vrátiť k tejto obrazovke tu s Vanessou a prejdite
na dolnom rohu obrazovky, zistíte, že v skutočnosti, nie pre
Piatková prednáška, ale ak sa budeme vrátiť do Streda, pretože táto funkcia má
niekoľko dní, zistíte, že môžete vlastne vytiahnuť, pre lepšie alebo pre
horšie, každé slovo, ktoré som ani dobrovoľník na javisku povedal.
A viac než len to.
Môžete si skutočne hľadať, môžete kliknite na niektorý z týchto viet, skákať
k tomuto bodu vo videu, všetko k a koniec sprístupnenie materiálu všetkých
viac splavný.
>> Ale ak nechcete nasledovať tak podrobne, zistíte, pre
inštancie, tento malý ponuka tu 1.5x rýchlosť, 2x rýchlosť, alebo i f i už
hovorí príliš rýchlo na vás, 0.75x rýchlosť.
Takže si uvedomiť, že je všetko K dispozícii tu pre vás.
>> Ale za to, že pre prednášky, si uvedomujú, že aj tieto zdroje
tiež k dispozícii.
Šmykľavky, ukážkový kód, niečo, čo som robiť na javisku alebo pred triedou,
budeme písať tam, takže môžete hrať spolu doma alebo v Sandersa.
Ale to, čo sme si povedali, že aj to rok po prvýkrát, je tiež
poskytnúť vám návody z týchto príkladov.
Stále viac, ako som premýšľal o hodnota prednášok CS50 to, čo som začala
na otázku, ako je užitočné pre vy tam sedieť, pre mňa stať
tu, a pre mňa hovoriť na vás, najmä preto, že materiál,
príklady, dostať zložitejšie.
Vzhľadom k tomu, vždy po určitý počet minút, niekto zóny von a
potom Vám chýbajú niektoré kľúčové prehľad niektorých príklad, a potom ste v podstate
preč zostávajúcu časť triedy, čo nie je najlepšie využitie
svoj čas, alebo, naozaj, naše spoločne ako trieda.
>> A tak to, čo sme si mysleli, že sa pokúsi urobiť, najmä pre niektoré z viac
komplexné príklady, ktoré som sa nemusia robiť spravodlivosť v triede, že by sme nemuseli
mať čas v triede, alebo môžete Len zóna počas ich budeme vyrábať
séria návody z týchto príklady tak, že keď idete k,
inštancie, posledný piatkový video stránka tu v príkladoch uvidíte, že
na piatok, je tu teraz toto odkazy na návody.
A formát týchto bude v čase meniť.
Zatiaľ sme použili jednoduchý YouTube playlist.
>> Ale to, čo som urobil s naším výrobným družstvom potom bol prejsť každý
a každý z týchto príkladov znova, dúfajme, že poukazuje na oveľa väčšie
jasnosť presne to, čo takeaways by mohla byť, alebo by mali byť od seba.
Tak zistíte, napríklad z poslednej týždeň, všetky stieracích príkladov
prešli sme hotoví lineárne v tomto móde.
Tak neváhajte zapojiť alebo nie sa do tohto materiálu.
Naozaj témou tohto konkrétneho kurzu je to, že tam je asi viac
v ceste zdrojov ako vy by mohlo absorbovať cez
priebehu semestra.
>> Ale to je zámer.
To malo byť tak, že ako jednotliví žiaci môžu na základe vlastného výberu
na základe vášho štýlu učenia.
Takže ak prednášky pracovať pre vás, skvelé.
Ak sú úseky pracovať pre vás, skvelé.
Pokiaľ návody pre prácu lepšie, skvelé.
Je to naozaj bude len na vás vybrať si Aké zdroje pracovať pre vás najlepšie.
>> A konečne, vďaka absolventom Samozrejme, že sme tiež kánonický
sada pisára poznámok.
Takže skôr než mať Vy hlavy v prednáškach klikiháky dole
veci, ktoré prichádzajú do triedy, sme my, personál, vám poskytne to, čo sme
cítiť sa kánonický súbor poznámok k oslobodiť tohto rozptýlenie, aby
Ak ste tu a zaoberá, ste skutočne zaoberal s tým, čo sa deje,
sa vaši spolužiaci robia sa na fázu, s tým, čo sa deje na obrazovke,
a nie len písanie sa doslovne čo sa stalo bolo povedané.
Takže si uvedomiť všetky tieto zdroje sú vám k dispozícii.
>> Krájanie, v odpovedi na otázky, začne túto stredu.
Sme v podstate čakať, až potom, čo väčšina iné triedy sa vykonáva tak, že môžeme
minimalizovať počet zmien že musíme urobiť.
Ale prichádza tento víkend, počnúc Nedeľa, bude raz inštancie
to, čo nazývame super sekcií.
To bude natočený pre tých, ktorí nemôžu zúčastniť, av podstate,
Samozrejme hlavami bude chodiť k nám cez niektoré z časti C kurzu
ku koncu roka problém nastaviť jeden, ktorý bude naša prvá vychádza C
Problém set.
A to bude len voliteľné sekcie v očakávaní toho, čo bude
sa opakujúce viedli sekcie V blízkosti ihriska je 50 plus
výučby týždenne chlapi.
V nedeľu alebo pondelok alebo utorok, my má 90 minút sekcie veľmi
tradičnom slova zmysle, ktorý bude príležitosti pre ruky na viac
intímne preskúmanie Samozrejme je materiál.
>> Bez ďalších okolkov, dovoľte, aby som vám predstavil Kurz je vedúci, ktorí sú
v zákulisí so mnou, robiť všetko stalo.
Ak sa ti tu dnes mohol so mnou, Rob a Lauren, Josef, Lucas, všetky
z ktorých boli s Kurz na nejakú dobu.
RJ je tretí v poradí členom nášho tímu.
Nemohol tu byť dnes, ale Požiadal ma, aby som ukázať fotku z neho.
Nie som si istý, že to chcela jeden, ale tam je.
>> A dovoľte mi, aby tím mohol povedať, ahoj a predstaviť sa tak, že
spoznáte ich, rovnako ako vaše vlastné učebné kolega tento termín.
>> LAUREN Carvalho: Ahoj.
Moje meno je Lauren Carvalho.
Som rezident učiteľ Leverett v dome.
Som tiež nadšený super byť hlava televízie na CS50 tohto roka.
>> CS50 je veľmi náročná trieda rovnako ako veľmi veľké triedy, takže ak máte
máte akékoľvek obavy, ak máte pocit, ste pozadu, neváhajte
osloviť každý z nás heads@cs50.het, alebo so mnou, keby ste
chcel hrať môj zlatý retriever šteňa.
Tu je Lucas.
>> LUCAS FREITAS: Ahoj, chlapci.
Moje meno je Lucas Freitas.
Som junior [nepočuteľný]
informatika a lingvistika.
V skutočnosti som z Brazílie, a tiež som uvedomiť východoázijských štúdií.
Takže ak máte nejaké otázky týkajúce sa výpočtová technika, alebo jazyk, alebo
niečo, dajte mi vedieť.
Alebo CS50, najmä.
>> JOSEPH ONG: Ahoj.
Ja som Jozef.
Som senior študovať počítača veda Elliott House.
Takže, poďme sa pozrieť.
Uvidíte ma po vykonaní jeden z týchto obrovských kamier.
Som bydliska zamestnanca fotografom Pre 50 rovnako, a študenti často
niekedy mylne ma Ázijské turista.
>> Takže ak ste ma vidieť s kamerou, neutekajú.
Len úsmev a nehanbite sa.
A dúfam, že si môžete vychutnať 50.
Páčilo sa mi to moc, keď som ho vzal, a to je dôvod, prečo som pre TFing
Tieto tri roky.
>> ROB BOWDEN: Ahoj.
Som Rob.
To je môj štvrtý semester sa CS50.
Práve som absolvoval v máji.
Bol som v Kirkland.
Som nadšený pre tento semester, a dúfam, že ste príliš.
>> DAVID Malan: Ďakujem tohtoročné hlavy, a RJ rovnako.
>> Takže len pár poznámok na konečné zdroje.
Jeden, p-ak nastavená 0 ​​je už hore.
Ten existuje iba v štandardnom vydania, ktorý je určený pre
celistvosť triedy.
Počnúc p set 1, bude hacker vydanie väčšiny problémových súborov,
ktorý opäť bude vzťahovať na materiál s trochu väčšou výzvou, zatiaľ čo
ešte zmienil o niektorých z rovnakých tém.
Do pozrite sa na kurze stránkach pre túto špecifikáciu súboru p 0.
>> Úradné hodiny tiež začne tento týždeň, dnes, zajtra, v stredu,
a vo štvrtok v rôznych stolovanie haly na akademickej pôde.
Pozrite sa na cs50.net/ohs pre kancelárie hodiny kurzu, a uvedomiť si to
bude veľmi neformálne príležitosti, iste, na začiatku
semester, prísť s vaším notebook počas prestávky mozgu.
Prineste nejaké priateľov a rozprávať sa Samozrejme v TFS a CAS s niektorou
otázky, ktoré môžete mať.
>> A ja nemôžem dostatočne zdôrazniť, a to aj pre poškriabaniu a problémov k 0, je
naozaj nie je hlúpa otázka.
Neexistuje žiadny študent príliš nepohodlné klásť otázky.
Prosím, neváhajte využiť tohto zdroja.
Bude tam recurringly počas semestra,
ako bude CS50 Diskutovať.
V tomto kurze je online diskusie Diskusie v tejto adresy.
>> Čo budeme robiť aj počas prednášky je tiež sledovať to, vďaka
Samozrejme je tím učiteľov.
A tak ak máte nejakú otázku počas prednášať, pretože som niečo povedal
zle alebo vôbec, a to všetkými prostriedkami, opýtajte sa že v reálnom čase, ak máte
notebook alebo telefón na webové stránky, a my sa budeme snažiť takmer v reálnom čase na
reagovať.
>> Existujú nejaké otázky ohľadom CS 50?
Potom jeden posledný poznámky bane.
Že problematika SAT UNSAT.
Ako ste dokončiť svoje študijné karty, ak tak ešte neurobili, si uvedomiť, že
zastrešujúca vízie SAT UNSAT, K dispozícii pre všetkých študentov, je naozaj
pomôcť sa zmiernilo z kurzu takto, aby som tak povedal, takže ak
Ocitnete neskoro v noci, 2 hodiny ráno, 3 hodiny ráno, naozaj búchal hlavou proti
stena, na ktorej viete, že ste 99% spôsob, ako tam do konca, ale
majú toľko iných vecí na práci, Myslím, že lepšie využitie, často z
čas študentov je skutočne presunúť na tie ďalšie veci, takže si môžete
optimalizovať svoj čas všade okolo.
A SAT UNSAT je mechanizmus, prostredníctvom ktorého si môžete vziať komfort v tom,
, Že 99%, ako sa má stále čertovsky dobre.
>> Podobne, aj keď ste prišiel do Kurz bez predchádzajúceho podkladu, alebo
zďaleka nie toľko ako vy pozadie myslíte, že vaši spolužiaci môžu mať, pravda,
alebo nie, si uvedomujú, že je to možnosť zašpiniť ruky
s kurzom, dajte prsty v vody, aby som tak povedal, rovnako ako som sám
som pred rokmi Pass / Fail.
Ako som povedal minulý týždeň, mal tento kurz, rovnako ako ostatné, nie je k dispozícii
vyhovel / nevyhovel v tej dobe, asi by som nie je kedy vstúpil nohu
triedy, aj keď som urobil, päť týždňov neskôr rozmyslím, ktoré
môže byť rovnako, a prejsť na alebo z listu triedeného stave.
>> Dobrá.
Tak sme sa na veci, ako je to na Piatok a my sme veľmi rýchlo ísť
prechodu k niečomu, čo vyzerá tajomný dnes.
Ale je to však Rovnaký základný nápad.
Aký bol všeobecný termín, ktorý sa používa na opis kúsok skladačky
ktorý vyzeral takto?
>> Takže vyhlásenia.
A môžete volať o nič rad vecí.
Ale budeme len zavolať, že vyhlásenie, a vyhlásenie,
Len hovorí programu -
alebo v prípade Scratch, sprite -
niečo urobiť.
Pozdravte v tomto prípade.
>> Niečo také sme namiesto toho zavolal, čo?
Jo, to logický výraz.
Logický výraz je proste niečo, že je pravdivý alebo nepravdivý, a tak Scratch
čerpá je s týmto tvarom, ale tiež s otáznikom oznámiť
Predstava, že odpoveď na túto otázku je buď true alebo false, áno alebo nie
jeden, 1 alebo 0.
>> A budeme používať booleovské výrazy vnútri konštrukcie, ako sú tieto, ktoré
hovoríme, čo?
Takže, stav alebo pobočka.
A stav vidíte tu v Scratch má trochu zástupný symbol pre
skladačky z tohto tvaru, účel z nich je tak, že môžete
pretiahnite a umiestnite ho na vrchole a potom diktovať programe, ak to logický
výraz je pravdivý, vykonajte tento súbor Návod, tento set výkazov,
inak to tú druhú sadu pokynov.
>> A pripomínajú, že môžete hniezdo tieto veci.
Aj keď tam nie je moc miesta vizuálne v tejto skladačky, Scratch
bude rásť a zmenšovať, aby sa zmestili bez ohľadu na skladačky preťahovať do
tam, takže sa môžete skutočne hniezdo a to mať trojcestný rázcestí.
Je-li, inak, ak inak.
A dokonca môžete ísť nad rámec, ktorý by hniezdenia ďalej a ďalej podľa potreby.
>> Tak konečne sme videli konštrukty, ako je , Inak známy ako slučka.
A to je proste niečo, čo robí niečo znovu a znovu a znovu.
V tomto prípade, sa to stane, že je konečný koľkokrát, ale tiež
videl príklad, kedy je počet časy nastali z premennej, takže je
sa môže zmeniť.
A sme tiež videli úplne iný blok nazýva blok, ktorý navždy
nám umožnilo slučky nekonečne dlho.
>> Takže jeden ďalší konštrukcie, ktorá Scratch 2.0 má - a tie z vás, viac
pohodlné s predchádzajúcim pozadí sú už dobre oboznámení s týmto
postaviť -
Tieto veci hovoríme, čo?
Tak sme nazvali túto funkciu, inak známy ako postupy.
K dispozícii je malá sémantický rozdiel, ale budeme im hovoriť len funkcie.
>> A funkcie v prípade Scratch, je vlastné puzzle kus, ktorý
vy sami môžete vytvoriť tak, že máte nový kúsok skladačky, že v tomto
prípad, že sa nazýva kašeľ, že Zobrazí sa medzi všetkými ostatnými
K dispozícii dieliky v začiatku.
Aj keď MIT nevynašiel tento kúsok skladačky, povedal.
>> Takže funkcia umožňuje vytvárať nové správanie, dať mu názov funkcie, a
potom hovoria, aby som tak povedal.
Naozaj ju použiť v programoch, znovu a znovu a znovu, aby bolo nutné čakať
pre niekoho, ako je MIT po ceste vymýšľať nové funkcie od nuly.
Vy sami môžete vytvoriť tieto puzzle kúsky seba, a potom znovu využiť
vo vlastných programoch.
A uvidíme opakujúce príklad z toho dnes a dopredu.
>> Takže dnes sme prechod teraz na niečo tajomného.
Ale na konci dňa, niečo silnejšie a výraznejšie a viac
Zástupca cesty, že budeme na všetkých semestra celého radu
jazykov -
že z kódu alebo zdrojového kódu.
A zdrojový kód, sa ukázalo, nie je to, čo počítač
zvyčajne v skutočnosti beží.
Zdrojový kód vyzerá takto.
>> Tak to je, opäť, možno najjednoduchšie Program môžeme písať
jazyk s názvom C. začneme podpichovať Tento aparthotel sa onedlho, a ak je
to naozaj vyzerá ako grécky aby vás práve teraz, ver mi.
Vnútri len týždeň alebo dva v tej dobe, toto bude až príliš dobre známe a vlastne
, Veľmi dobre sedí na stále komplexné príklady, s ktorými budete
tiež získať oveľa pohodlnejšie.
>> Ale nemôžete len spustiť tento druh kódu zvyčajne.
Musíte sa obrátiť do niečoho, čo samotný počítač rozumie.
A tak to, že potrebujeme niečo budeme volať kompilátor.
Kompilátor je program, ktorý sa zdrojový kód, ako ste práve videli, ako
vstupu, a to vytvára nuly a ty výstup, inak
známy ako objektový kód.
A to sú tie nuly a tie, ktoré môže vyzerať celkom takto, že
nakoniec sa rozumie v počítači Mac alebo PC.
>> Ak ste niekedy počuli marketing Výraz Intel Inside, že práve
znamená, že spoločnosť s názvom Intel vyrába
Mozgom počítača -
inak známy ako CPU, Centrálna procesorová jednotka -
a to je práve tá vec, ktorá chápe vzory
núl a ty.
A tak tým, že zmení zdrojový kód do kód objektu v rámci tohto procesu tu
že budeme robiť s dvojicou príkazov v len trochu, ste
vytvárať vzory núl a tie, že zamestnanci na Intel
rozhodol reprezentovať určité výroky.
>> Teraz som vlastne poriadne nevieme, ktoré ktorý je jednoduchým pohľadom na
Tieto nuly a ty.
Väčšina ľudí v týchto dňoch nemajú.
Ale niekde tam je vzor nuly a tie, ktoré predstavuje
Vyhlásenie o tlač.
Niekde tam by mohol byť iný súbor núl a tie, ktoré
predstavujú pojem navždy alebo opakovať 10 krát alebo dokonca mňau, ak je to
vlastne program, ktorý môže zahŕňať niektoré zvuky.
>> Takže v skratke, ľudia sa rozhodol, podobne ako tomu bolo v ASCII -
pre písmená abecedy minulý týždeň - ľudia sa rozhodli, že aj
zložitejšie vzory núl a tie, predstavujú viac komplexné správanie
ako tlač alebo hovoriť alebo mňaukanie.
A tak dnes, a do značnej miery dopredu v semestri, vezmeme za
samozrejmé, že niekto prišiel ako k tomu, že mapovanie.
Ale my, v súlade s touto myšlienkou vrstvenie na vrchole prácu ľudí
ktorí prišli pred nami, bude trvať udelil skutočnosť, že táto sa deje
pod kapotou.
Ale my sme oveľa viac zaujímajú stavebné veci, ktoré sú viac
zaujímavé na vrchole toho všetkého.
>> A tak vskutku, prvý program, ktorý sme napísal Scratch bol to výborný jednoduchý
jeden, Hello World.
A vy môžete myslieť na to, ako je Hlavný program, ktorý riadi Scratch je
správanie od minulého piatku.
>> Dnes budeme začať prekladať Stieracie dielikov do
zdrojový kód v tomto jazyku zvanom C tak, že to, čo vyzeralo to na
Piatok, odo dneška a ďalej, je teraz bude vyzerať takto.
Je pravda viac zložitejšie.
Je to celkom rušivé a triedenie mysli znecitlivujúce vidieť všetky citáty
a bodkočiarky a zátvorky a tak ďalej.
>> Ale keď začnete ignorovať všetko, čo Tomu nerozumiem, a naozaj sa
v podstate bieleho textu na obrazovka, iste viete, ako ja,
"Hello, world". To, že sa zoradia s fialová vyhlásenie Navrchu a ukazuje
na to, že kľúčové slovo hlavné sa chystá zoradiť koncepčne sa, keď zelená
vlajka klikli.
>> Takže inými slovami, zatiaľ čo v Scratch, sa vykonávania tohto programu Hello World
s týmito dvoma kúskami skladačky, v C, budeme vykonávať je s to
Štyri trochu mystické linky.
Ale ako sme sa ponoriť hlbšie do toho, budete vidieť, že každý z nich
biele znaky na obrazovke skutočne má nejaký podstatný význam,
a väčšina našich programov budú pozrite konštrukčne úplne rovnaké.
Takže tvrdenie, aby bolo jasné, čo sa vyzeral ako "pozdraviť" na svete
Piatok sa chystá začať hľadať takhle v pondelok.
printf ("Hello, world").
A tam je nejaký divný spätné lomítko n, tam zátvorky, tam je
bodkočiarkami.
>> Ale na konci dňa, kľúč stánok s jedlom dneška je, že všetko, čo robíme
prekladá veci z obrázka tvoria sa textovej podobe.
Takže slučka, ktorá vyzerala takto minulý týždeň sa bude teraz vyzerať
niečo také.
>> A dovoľte mi odmietajú, rovnako ako v Scratch, je to rôzne spôsoby, ako
Pre dosiahnutie rovnakého cieľa.
Rovnako v C. Nie som zobrazujúci iba spôsob, ako robiť veci, ale jediný spôsob, ako
to preložiť navždy blokovať ku slučke v jazyku C.
>> Tenhle, opakujte 10 krát.
Tahle je naozaj druh zákrutách myseľ prvýkrát ho vidíte.
Ale realizovať, že odteraz budeme používať
pre sláčiky, aby som tak povedal.
A jasne, že je nejaký syntax, ktorá je trochu areálu s I a
rovné a 0, ale akonáhle sme sa ponoriť do toho dnes vpred, ste práve deje
vidieť, že to je všetko jednoducho robiť nejaké základné aritmetické, aby nás z 0
až na 9 alebo 10 v tomto prípade.
>> A konečne, s premennými, budete si spomínate že premenná je kus skladovanie.
No, čo sme mali na ľavej strane je posledný týždeň bude vyzerať trochu
niečo také tento týždeň.
Ale znovu, viac na to prísť.
>> Mali sme booleovských výrazov, ktoré Minulý týždeň vyzeral takto.
Tento týždeň dopredu, sa chystajú začať vyzerať trochu ako to.
>> A toto je vlastne trochu upokojujúce.
Je to vlastne skoro rovnako jednoduché ako zelené bloky.
Ale tu máme opäť nejakú novú syntax s ampersand, ale môžete
snáď hádať kým v Scratch, môžete povedať A-N-D, zrejme v C, sme
poviem ampersand ampersand.
Ale to všetko bude prírodné onedlho.
>> Podmienky.
Minulý týždeň to vyzeralo, že to na ľavej strane.
Tento týždeň, na pravej strane, je to bude vyzerať, že.
Ale znovu, kľúč stánok s jedlom je, že ako vidíte také veci, že na
vpravo, a to najmä v prípade menej pohodlné, je to trochu nad svojimi
hlava, dostanete trochu zahltení, že Ja naozaj nemám potuchy, ako som mohol
prípadne prísť s že od začiatku -
žiadna slovná hračka určená -
len si uvedomiť, že je to naozaj rovnaké Predstava, že asi cítil oveľa viac
prírodné minulý týždeň.
A aj keď ste skočil do Problém set 0, trúfam si tvrdiť, zistíte,
že kúsky skladačky sú pomerne intuitívne, alebo aspoň
sa tak v priebehu času.
>> Takže poďme sa ponoriť dovnútra
Poďme si naše špinavé ruky tu tento prvý jednoduchý program.
A jednoduché je, samozrejme, relatívna.
Ak to chcete, budem meniť obrazovky do tohto zariadenia som volal
CS50 spotrebiča.
CS50 Spotrebič je kus softvér, ktorý beží vnútri
okná na mojom Macu, a môžete tiež spustiť sa v okne vnútri vášho PC, ktorý
mi umožňuje mať rovnaký presný prostredie počítača ako každý TF, as
každý CA, ako každý študent v triede.
Pretože CS50 zariadenie je doslova iný operačný systém
s názvom Linux -
konkrétne Fedora Linux -
a my, zamestnanci, boli nakonfigurované Proces inštalácie tohto
operačný systém takým spôsobom, že jeden, je to trochu CS50 logo
stredná, dva, je to vlastné menu v dno a tri, pedagogicky,
sme zjednodušili užívateľské rozhranie pokiaľ možno tak, že keď
najprv zaviesť túto vec až na vlastnú päsť Mac alebo PC, máte rovnaký
prostredie, ako všetci ostatní, a mať všetky nástroje, ktoré budete potrebovať
do kurzu, bez toho aby musel prísť na to, ako nainštalovať každý a
každý nástroj samostatne.
>> Takže to vyzerá relatívne ako je Mac OS alebo Windows.
V ľavom dolnom rohu, je majú v zásade ponuky Štart
druhy alebo ponuky Apple.
A potom ste to, čo máme podozrenie, bude byť vaša tri najčastejšie ikony.
Jedným z nich je Chrome.
K dispozícii je prehliadač vnútri spotrebiča.
>> Dva je program s názvom gedit, ktorý sme videli minulý týždeň krátko, čo je
len grafický editor.
A za tretie je terminálový program, ktorý je čierna a biela okná z
minulý rok, ktorý nám umožňuje písať viac tajomné, ale výkonnejší príkazy na
naše klávesnice.
Takže budem pokračovať a kliknite na gedit, a buďte si istý, že tento problém
sada 1, byť prepustený v piatok, bude vás prevedie všetkými týmito rovnakých krokov.
>> Všimnite si, že mám celkom jednoduchá užívateľské rozhranie sa z troch častí.
Na ľavej strane, mám veľký prázdny Okno tzv zdrojový kód.
To je miesto, kde budem chcete zobraziť súhrn akéhokoľvek kódu, ktorý píšem.
Na pravej strane, mám veľký karta, v súčasnej dobe neuložené, a to
kde môj kód pôjde.
A na spodnej strane, som vložený Okno terminálu, čierna a biela
výzvou, na ktorú môžem písať príkazy kompilácie a spustenie svoje programy - ktoré
je, aby sa aj spustiť svoje programy.
>> Tak začnime jednoduché.
Nechaj ma ísť až na Súbor, Uložiť.
Chystám sa ísť dopredu a ísť do jharvard.
Tak zariadení, bez ohľadu na to, čo Vaše meno je patrí k pomenované chlapa
John Harvard, ktorý má jharvard domov adresár vnútri ktorej všetky svoje
Súbory pôjde.
Je to vaša vlastná kópiu svojho účtu, takže nie sme všetci zdieľajú
rovnaký pevný disk.
Musíte len ilúzia vlastných Johna Harvarde.
>> V predstihu, som vlastne nainštalovaný Dropbox.
Prístroj je dodávaný s pripravených Dropbox, takže ak sa niečo pokazí
v priebehu semestra, ak ste nakonfigurované spotrebič bez
Dropbox účet, budú všetky vaše súbory automaticky zálohované, takže
môže veľmi ľahko obnoviť.
A ja idem do môjho Dropbox adresáre, a tam už ide
Ak chcete byť pár ďalších vecí tam.
>> Ale ja idem do toho a prejdite na Súbor, Uložiť.
Chystám sa ísť do jharvard, Dropbox, a tu, idem
dať môj program super jednoduchý meno, hello.c a uložte.
Takže mám rovnaké rozhranie teraz.
Jediná vec, ktorá sa zmenila je karta Navrchu.
Takže som veľmi rýchlo bude znova tento program od
kĺže pred chvíľou.
>> Takže do main (void), a potom printf, "Hello, world", trochu mystický
spätné lomítko n, v blízkosti citujem, zatvorte zátvorka, bodkočiarka, a
potom Ctrl S uložte.
A všimnite si, ako bokom, čo sa práve sa tu objavuje v ľavom hornom rohu.
A to nie je vhodné dnes, ale bude užitočné v priebehu času.
Práve ste vidieť opäť zhrnutie kód, ktorý ste napísali.
A pretože som napísal niečo, čo nazýva hlavné, to je dôvod, prečo slovo hlavný vyskočila
tamto.
Ale z väčšej časti, sa nepotrebujú, že dnes.
>> Dobre, tak tvrdím, že to je moje prvý program napísaný v programovacom
jazyk s názvom C. vieme od piatku že to, čo to, čo sa chystá urobiť
veľmi uninterestingly, keď som spustiť je to len zobrazenie -
inými slovami, tlač, ako počítač vedec by povedal -
hello world na obrazovke.
Tak, ako to urobiť, zistíte, že mám ísť dole až k mojej terminálu
okná, a teraz mám blikajúce výzva.
Ale teraz je to klávesnica verzia môj John Harvard domovský adresár.
Je to spôsob, ako pomocou klávesnice, ktorá navigovať svoj pevný disk.
>> Takže nemôžem vlastne písať ako ja minulý týždeň, aby ahoj, pretože je to
hovoriť žiadne pravidlo, aby sa ciele -
Niečo je zle.
Ja vlastne poriadne nevieme, čo táto správa prostriedky, ale to je preto, že v predvolenom nastavení,
keď sa to čiernej a bielej okno otvoril, som vnútri John Harvarde
domovský adresár.
Ale tam, kde som okrem toho, že program?
V mojej zložke Dropbox.
>> Teraz každý z nás vyrástli s počítača, kde stačí dvakrát kliknite
na zložku ikone, že otvára, a je to tu.
To je miesto, kde súbor s názvom hello.c bude.
Takže v skutočnosti, ideme na to.
>> Nechaj ma ísť dopredu a minimalizovať gedit rovnako ako by ste písali na
Windows alebo Mac OS.
Nechaj ma ísť do domova Zložka vľavo hore.
Uvidíme tu veľa zložiek.
Tu je moja zložka Dropbox.
V Zaškrtnutie znamená, že je už synchronizovaná.
A je tu pár vecí tu, ale zistíte, že je hello.c
naozaj tu.
>> A tak v Mac OS alebo Windows, zvyčajne, Ja by som poklepte to, že to otvára v
bez ohľadu na program, a som dobré ísť.
Ale teraz, aspoň začína dnes, sme je potrebné vziať krok späť len
vám niektoré základné nástroje pre váš náradie, s ktorou, aby sa viac
silné veci pred dlho.
>> Takže na túto výzvu, musím urobiť ekvivalent dvojitým kliknutím
Dropbox zložku.
A na to, že budem písať na CD zmeňte adresár, Dropbox, zadajte.
A teraz Všimnite si okrúhlych zátvoriek na my tzv prompt teraz tvrdia, že som v
tilda, malý zakrútený symbol v ľavom hornom rohu
väčšina klávesníc, / Dropbox.
To je len skrátený zápis pre hovorí človek, teraz ste vo vnútri
zložka Dropbox, rovnako ako by ste si poklepanie na neho.
>> Takže teraz, keď pôjdem napred a zadajte, aby Dobrý deň, zadajte, vidím veľmi mystický
príkaz, ale chybové hlásenie, Zdá sa, a potom sa
ďalšie blikajúce výzva.
A pokiaľ si spomínam, niekedy tak rýchlo, V piatok sme to urobili. . / Ahoj.
>> Čo ste asi vidieť, je výsledkom môjho spustenie tohto programu, alebo v Mac
OS a PC pojmy, keby som normálne dvojnásobok kliknite na programe - app.
program alebo. exe, otvorí sa okná a beží.
Písanie. / Ahoj je rovnako ako double Kliknutím program spustiť, ale
pomocou môjho klávesnice.
>> Zadajte, hello world.
A je to.
Takže poďme dráždiť to od seba tak, aby necíti moc ako Grék.
>> Tak. / Znamená čo?
Každý, kto sa kedy navigoval klávesnica prostredie, ako je táto, čo je bodka
na mysli?
Aktuálny adresár.
>> Takže je aktuálny adresár len synonymom pre zložky.
Takže tým, bodka lomítko, hovorím, pozrite sa na program s názvom ahoj v
aktuálny adresár -
v aktuálnej zložke.
Inými slovami, moja Dropbox zložku.
A to je dôvod, prečo by ste stlačili Enter potom vlastne beží tento program.
>> Keby som teraz typ LS, všimnite si, že vidím všetko v mojom zložky Dropbox.
Ako Started.pdf, ktoré Dropbox vám dáva zadarmo, mojich fotografií
adresár, verejný adresár, neuložené Dokument 1, ktorý som omylom na
Pred chvíľou foo.c, ktoré som robil predtým dnes, a potom dva riadky -
hello.c a ahoj.
>> Hello.c je program, ktorý som písal s gedit, a čo je ahoj v zelenej?
Ahoj zelene je spustiteľný súbor.
Inými slovami, keď som bežal tento príkaz pred chvíľou - dovoľte mi vrátiť
späť v čase -
Keď som bežal, aby ahoj, to je stredná krok tu.
A trvalo hello.c ako vstup -
AKA zdrojový kód - a to produkovalo súbor s názvom Dobrý deň výstup, ktorý
obsahuje všetky z týchto núl a jednotiek.
A to je dôvod, prečo na konci, môžem v skutočnosti spustí príkaz ako /. Dobrý deň.
Pretože Intel Inside, môj operačný systém, Linux, otvára tie nuly
a tie, kŕmi ich do Mozgom počítača -
CPU -
a že CPU vie, oh, tu je vzor núl a jednotiek, ktoré hovorí,
Vytlačte si nasledujúce vec na obrazovke.
>> Čo je to nasledujúce veci?
Citovať Unquote, "hello world".
>> V poriadku, takže rýchly prehľad niektorých Tieto príkazy tak, že môžeme začať
brať za samozrejmosť.
Dovoľte mi, preskočte na kde sme skončili.
A budete pripomenúť, že sme mali CD na chrbte skončiť pred chvíľou.
To sú, trúfam si povedať, pre dnešné účely -
Možno tento týždeň - iba príkazy sa Možno bude potrebné zadať na príkazovom
vyzve, aby vedľa.
>> Takže CD sa za čo?
Zmeňte adresár.
Je to len ekvivalent double Kliknutím na priečinok.
A stranou, ak sa dostanete stratil niekedy vnútri vášho
spotrebič tak, že Dropbox -
Chcem sa vrátiť do jharvard adresár -
v prípade pochybností, CD, zadajte, bez akéhokoľvek ďalšieho slová, a to len zipsy vám späť
na miesto, kde ste začali, čo je pekný malý zástupca.
>> Dobre, takže teraz ďalšie príkazy.
LS.
Napísal som, že pred chvíľou.
Čo si myslíte LS znamená?
>> Takže, zoznam, nie?
Späť v deň, kedy ľudia prišli s týmito príkazmi, ktoré
Snažili sa byť efektívna a pomerne zadajte z L-I-S-T Enter, ktoré
rozhodol LS.
To je v poriadku.
Znie to dosť ako zoznam.
Povedzme, typ LS vstúpi, a to zoznam súborov alebo priečinkov v mojom
aktuálny priečinok.
>> mkdir, môžete pravdepodobne hádať.
Vytvoriť adresár.
Takže nemusíte ísť do nejakej ponuky Súbor a vybrať novú zložku v tomto prostredí.
Skôr, môžete zadať príkaz mkdir priestor a potom názov priečinka
, Ktorý chcete vytvoriť, a bude hotovo.
>> rm, môžete pravdepodobne hádať.
Odstránenie alebo odstránenie.
Takže ak chcete zmazať súbor, budete si musieť vybrať pozri problému nastaviť spôsob
Môžete to urobiť.
A rmdir, odstráňte adresár.
>> Takže ešte raz, budem mať tendenciu letieť cez niektoré z týchto údajov, jedným, pretože
že to nie je tak moc zábavné stráviť čas ďalej, ale dva, dáme vám v
oveľa väčší detail v niektorom z Samozrejme je problém sady, a to najmä
štandardná edícia, niektorý z krokov že možno budete musieť zadať, aby
že dostanete viac pohodlné s týmito vecami.
>> Ale teraz mi dovoľte srandista oddelene jedna vec.
Keď sme napísali, aby ahoj pred chvíľou, sme videli záhadný postupnosť príkazov.
Videli sme, opäť, aby ahoj.
OK, poďme na to.
Chystal som sa urobiť chybu, ale [Nepočuteľné] sa priznať, že som sa chystal
a to zámerne.
>> Čo som urobil zle práve teraz?
Jo, nie som v Dropbox adresár, pretože pred chvíľou som
napísaný CD a jednoducho stlačiť Enter.
To zväčšenom ma späť tam, kde som začal, ktoré nie je tam, kde má súbor
je, takže som naozaj potrebujete urobiť, CD Dropbox vstúpiť, a teraz môžem urobiť rm Dobrý deň,
zadajte odstráňte obyčajný súbor ahoj.
Neviem, prečo je to tak tajomný.
To len znamená, že ste si istí, Ak chcete odstrániť ahoj?
Môžete zadať Y áno, zadajte, a teraz je to preč.
>> A teraz keď píšem, aby Ahoj, je to bude znovu môj objektový kód,
obnoviť tie núl a jednotiek.
Ale čo je vysporiadať sa s Tento veľmi dlhý príkaz?
No, budeme dráždiť tento rozdiel netrvalo dlho, ale uistite sa, -
Povedal som trochu bielej lži pred -
nie kompilátor.
Urobiť, je program, ktorý automaticky postavy z ako spustiť
kompilátor pre vás.
>> Takže príkaz, ktorý v skutočnosti malo byť beží s cieľom premeny hello.c
do ahoj vlastne vyzerá trochu ako je tento.
A nedaj bože máme skutočne pamätať vôbec písať, že celý
postupnosť príkazov von.
Účelom urobiť v živote je si uvedomiť, že stupeň zložitosti pre
nám a automatizáciu, ktorá by inak byť veľmi nudné kroky.
>> Ale môžem priblížiť, že.
Takže na tomto malom ťahák tu, som môžeme priblížiť, čo to je príkaz
robiť jednoducho napísaním rinčaním, ktorý je názov prekladača budeme
pomocou tohto semestra.
Ak sa niekto z vás niekedy urobil iOS Vývoj pre iPhone a iPad
Zvonenie je program, ktorý ste použili v Xcode, aby sa vaše aplikácie.
Zvoniť, aj keď je to len ďalší program, ktorého meno je možné zadať na príkazovom
riadku a zavedením teraz, Môžem predstaviť niečo, čo je
málo reprezentatívne príkazov, ktoré príde.
Tak nech ma to urobiť ručne.
>> Takže rm ahoj, a teraz oznámenia v prípade, Ja, rovnako ako zdravý rozum check -
. / Dobrý deň, čo si myslíš, že som Mali by ste vidieť, či som to urobiť?
Nejaký druh chyby.
Žiadny takýto súbor adresár.
Tak ten je vlastne celkom priama.
>> Takže teraz mi dovoľte vyčistiť obrazovku.
Ovládanie S len vymaže obrazovku odstrániť niektoré rozptýlenie.
A teraz idem ručne Typ zvonenia-o ahoj hello.c.
Takže čo je to asi robiť?
Presne to isté, čo robiť urobil pre nás, ale ja som vyhodiť niektoré
nadbytočné slová.
>> Zvonenie je program, ktorý sa bude vziať. c súbor ako vstup a vytvárať
núl a jedničiek ako výstup.
Ale-o odteraz bude nazývať spínač alebo vlajky.
To je len techie žargónu hovorí to je slovo, ktoré zadáte na výzvu
ktoré nejakým spôsobom ovplyvňuje správanie programu, ktorý používate.
Takže niekto chce hádať čo-o odovzdáva?
>> Výstup.
Je to len niekto rozhodol-o prostriedky výstupný súbor s názvom ahoj a brať ako
Vstup bez ohľadu na posledné slovo výzva je hello.c, takže keď som narazila
Zadajte teraz sa zdanlivo nič nedeje.
A napodiv, v tomto svete programovanie, ak sa nič nestane,
to je asi dobrá vec pretože tam žiadna chyba
správy na obrazovke.
Dobrý deň, Enter.
Môj program je teraz spustený.
>> Ale môžem robiť stupídne veci, ako je to. zvonenie-o, hihihi, hello.c,
vstúpiť, a teraz mám rovnaké program s názvom hihihi.
Sa chová rovnako, ale meno tak trochu inak.
>> Takže je to len povedať, že ak chcete, ovplyvniť správanie
programu, budeme stále pozri zvané veci
Argumenty príkazového riadka.
Toto je línia.
Píšete príkazy.
Ergo, príkazový riadok.
A argumenty príkazového riadku sú len slová alebo malé kúsky syntax, ktorá
nejakým spôsobom ovplyvniť správanie programy, ktoré sme v prevádzke.
>> Dobre, to je možno najviac nuda programu môžeme písať a uvidíme.
Poďme sa teraz niečo urobiť zaujímavejšie.
Nechaj ma ísť ďalej a vytvoriť nový súbor.
Chystám sa ísť dopredu a uložiť to v John Harvard domovský adresár, as,
nazvime ju custom.c, byť trochu vlastný program.
Chystám sa priblížiť na mojom vrchole jazýčky tu a začať znovu.
>> Zahrnúť štandardné stdio.h.
Viac si o tom za chvíľu.
int main (void), viac na že za chvíľu.
printf ("ahoj, David").
Oveľa zaujímavejšie, že jo?
>> Takže teraz, ak - nie kvôli mojom mene, len preto, že je to inak -
aby zákazku zadať.
Vlastné, ahoj, David.
Ale aj to, že aj to je lož.
Tento program môže tiež byť nazývaný david.c, pretože to nie je zvyk
správanie vôbec.
Naozaj, chcem program, ktorý sa spýta užívateľ na ich mená.
>> Tak ako to mám urobiť?
No, dovoľte mi posunúť nahor tady.
A než som sa použiť vyhlásenie, vo Scratch, než som použiť printf,
inak známy ako funkcia, dovoľte mi, aby som najprv opýta užívateľa nejaký vstup.
>> Tak, ako to urobiť, musím urobiť pár vecí.
Po prvé, musím miesto pre uloženie užívateľa meno potom, čo som sa ho opýtal, alebo
jej za to.
Čo konštrukt musím používať pravdepodobne pre uloženie hodnoty, ako je?
Variabilný.
>> Takže na rozdiel od nuly, kde stačí mať pekný kúsok skladačky, tu, musíme
použitie, samozrejme, slová vyjadrujeme.
A ďalej, kedykoľvek budete chcieť slovo alebo fráza, plánovanie,
budeme hovoriť, že reťazec.
Takže reťazec je slovo alebo fráza.
Je to sekvencia nula alebo viac znakov, viac formálne.
>> A ak chcete takú premennú existujú, musíte povedať, aby mi jednu.
A spôsob, akým to urobiť, je povedať, reťazca s bodkočiarka, kde ich môže byť
čo chcete.
V skutočnosti, s je trochu nezaujatý.
Nechaj ma ísť napred a viac jasne hovoria, že meno.
Daj mi reťazec s názvom meno.
>> Ale teraz, čo je odsúdený meno štandardne?
No, v prípade, že človek nemá nič pisat v, samozrejme, tam sa deje
byť žiadna hodnota v názve.
A ukázalo sa v C, ak nechcete, aby premenná hodnota, bude to
majú odpadky hodnotu.
To by mohlo mať nejaké náhodné nuly a ty, tak ste práve uvidia
odpadky, naozaj, na obrazovke ak sa pokúsite zobraziť.
>> Ale môžem to napraviť tým, že hovorí, v skutočnosti, obchod vnútri mená na
nasledujúce hodnoty.
Spôsob, akým budete ukladať hodnoty do premenných je Ak máte názov premennej na
doľava, budete musieť nejako dať to, čo chcete uložiť v ňom na pravej strane, a
Syntax, čo sa deje byť nasledovné.
>> Sme nevideli predtým, ale prevziať na viere na chvíľu, že existuje
existuje ďalšie vyhlásenie vo svete že budem opäť volať funkciu,
a táto funkcia je nazýva sa reťazec.
A to doslova, že.
To nejako dostane postupnosť znakov od človeka a potom
robí niečo s ním.
>> A to vyzerá ako tajomný syntaxe.
Za normálnych okolností, ak používate rovnaké príznaky - ste vo svete, povedzme,
algebra, a vy ste vlastne ostatní x sa rovná 1.
Tu Nehovoríme, že Meno rovná sa reťazec.
Hovoríme obchod, v mene toho, čo je na pravej strane
z toho rovnítka.
Znamienko rovnosti predstavuje operátor priradenia.
Je to skladba, ktorá hovorí, že dať to, čo je na na pravej strane vo vnútri, čo je
na ľavej strane.
Tak sa reťazec je nový kus funkcie, ktoré nielenže
niečo -
žiada užívateľov na reťazec -
to tiež vráti, aby som tak povedal.
>> Takže poďme sa pozrieť, čo sa deje aby sa stalo tu.
Chystám sa ísť dopredu a teraz sa vzdialite, a budem mať pár
chyby na môj dotaz.
Budem písať, aby zvyk, zadajte.
Wow.
Veľa chýb.
>> Dobre, takže to je celkom ohromujúci, iste na prvý, ale
ukázalo sa, všetky tieto veľmi síce záhadné chybové správy sú
s odkazom na niektoré vzory, ktoré začneme vidieť v priebehu času.
Tak toto budem trhať preč, pretože je to prvýkrát.
Použitie nelegálnej identifikátora reťazca.
>> To len znamená, že gedit alebo rinčanie, v tomto prípade nevie,
čo tým myslím reťazca.
A to preto, že v C, programovanie jazyk, tam vlastne
nie je premenná typu reťazec.
C nevie, že existujú reťazca.
>> Ale my, CS50 personál, robiť.
A tak v predstihu triedy, sme vytvoril súbor s názvom CS50.h.
A vnútri tohto súboru - a viac na syntax prísť -
vnútri tohto súboru je definícia z toho, čo som práve definoval
slovne ako reťazec.
Takže jednoducho tým, že uzavretie tejto jeden riadok kódu v mojom programe, teraz som
Výučba gedit a robiť a zvonenie všetko zase to, čo je reťazec.
>> Ja neviem ako ešte.
Za niekoľko týždňov, budeme kôra späť, že vrstva.
Ale teraz viem, že to učí kompilátor čo
reťazec v skutočnosti je.
>> Takže teraz mi jasné, môj terminál sem.
Dovoľte mi, aby som znovu spustiť, aby zvyk a ja vyriešiť všetky tieto problémy.
Tak to taky bude je vracajúci sa téma.
Len som napísal 9. riadku programu, a napriek tomu som mal 18 riadkov chýb.
To je trochu zastrašujúce.
Ale uvedomiť, že sa často ako kaskáda že jedna malá chyba spúšťa
zmätok pre kompilátor, a vyzerá to oveľa horšie, než to je.
>> Takže teraz bystrý pozorovateľ bude vedieť že som stále reťazec od
užívateľ, ale nie som v skutočnosti robí to, čo s tým?
Nie som vlastne robí niečo s ním.
Takže keď som sa skutočne prejdená zákazku znova, to bude len sedieť.
Čo sa deje?
Môj program sa zdá byť prilepené na Čo riadok, to hovoríš?
>> Takže je to vlastne prilepené na riadku 7.
A my sme to nevideli skôr, ale na linke 7, je tu znova, to
vyhlásenie sa reťazec.
A robí to, čo hovorí.
Čaká sa na človeka aby sa reťazec.
To je úplne unintuitive ku mne, človek, pretože som neboli povedal,
čo robiť.
>> Ale nechaj ma ísť dopredu na viere a dovoľte mi, aby som predstieral, že je Rob.
Enter.
To nie je program, ktorý som zamýšľal.
Tak máme prvý blog.
>> Ale skúsme rozum, cez prečo tomu tak je.
Najprv mi dovoľte, aby som opraviť tento prvý problém.
Dovoľte mi pridať riadok, ktorý hovorí, že tu printf, aké je vaše meno?
Urobme úzku ponuku, zatvorenie zátvorky.
>> Teraz mi dovoľte znova spustiť program.
Problém.
Nevidím to.
>> Presne tak.
Nechcel som znova kompilujte.
Takže v jazyku, ako je C, pretože zmeniť zdrojový kód, neznamená,
že ste zmenili kód objektu generovať nový objektový kód,
nové núl a jednotiek.
Musíte prekompilovať.
Keby som teraz znovu spustiť vlastné, zadajte, ah, trochu jasnejšie.
Volám sa Rob.
Stále buggy.
>> A ja by som tvrdiť, že je pár chýb teraz.
To len vyzerá ohavná, úprimne povedané.
Rovnako ako, minimálne, mal som priestor tam, alebo presunúť
kurzora na nový riadok.
>> A vlastne nový riadok.
To je niečo ako kľúčové frázy, ktoré tu Videli sme, ale nie je definovaná.
Spôsob, akým sa text prejsť na ďalší riadok,
nemusíte to urobiť.
To je mätúce k počítaču.
Vyzerá to ako dva samostatné riadky kódu, z ktorých ani jedna
, Je úplne správne.
Tie namiesto toho, aby sa viac explicitné a povedal, daj mi nový riadok, ktorý sme
predstavujú v C s lomítkom n
>> Takže je tu pár takých znakov.
Spätné lomítko n opravíme estetická.
Dovoľte mi, aby som prekompilovať svoj program.
Dovoľte mi, aby som znovu spustiť svoj program.
>> To vyzerá lepšie.
Je to ešte celkom primitívne, ale je to tiež stále buggy.
Takže je tu ešte jedna -
aj keď ste nikdy naprogramované, môžete pravdepodobne hádajte
na to, prečo je tento program stále chybné.
Čo potrebujem k tomu, že Neurobil som ešte?
>> Takže mám vlastne robiť niečo sa menom.
Rovnako ako v začiatku, možno ste skutočne priradiť premenné, ako je N alebo
čeliť, ako sme to urobili v minulom týždeň - hodnota.
Ale ak nechcete robiť niečo s to, nič sa nestane.
>> Dobre, tak nech opraviť.
Dovoľte mi, aby som zadajte svoj premennej tam, a nechaj ma ísť sem.
Dovoľte mi, aby som znovu skompilovať, dovoľte mi, aby som znovu-run, Rob.
Teraz som len idiot, že jo?
>> Takže to nie je naozaj dostať ma ďalej.
Ale to bolo úplne prirodzené inštinkt, ja tvrdím, že jo?
V prípade, že premenná sa nazýva meno, a ja chcem, aby tam, prečo nie ja len
zadajte ho tam?
>> No, samozrejme, máme rozlíšiť teraz
medzi tým, čo je reťazec?
Všimnite si, že citácie Unquote tu, ahoj meno?
To samo o sebe je vlastne reťazec.
Je to pevne dané.
To nie je z človeka.
Je to odo mňa, pôvodný programátor, ale je to stále reťazec.
>> Takže ak ste doslova napísať N-A-m-E vo vnútri z radu, čo sa deje na
vypisované?
Dobre, N-A-M-E. My namiesto toho treba povedať printf, netlačia
sa doslova pomenovať.
Vytlačte si hodnotu mena.
>> A k tomu, čo robíme nasledujúce.
A to je len ľudská konvencie.
My zase hovoria,% s, a to je skratka pre reťazca.
A potom na konci mojich blízkych úvodzoviek, Chystám sa dať čiarku a
prejsť druhý argument do tohto vyhlásenia.
Budem písať meno.
>> Takže teraz máme všimnete ľahko Nová syntaxe.
Máme ešte dve zátvorky a ďalej mi dovoľte povedať, že veci,
v zátvorkách predstavuje argumentov do funkcie -
vstupy, ktoré sú nejako deje ovplyvniť jeho správanie.
Takže podľa tejto logiky, koľko argumentov printf sa zdajú byť
pričom v tomto momente?
>> Takže sa zdá, že to trvá dva, a to je naozaj predpokladané
podľa čiarkou tu.
Takže to je jeden argument medzi úvodzovkami.
Aj keď to má čiarku v tom, všetko, čo je v úvodzovkách, čo znamená,
je to jeden dlhý reťazec.
Čiarka, názov premennej.
>> Takže teraz mi dovoľte oddialiť.
Dovoľte mi, aby som znovu ho spustiť.
Rob.
Sakra, čo som urobil zle?
>> Dobre, takže budete musieť prekompilovať.
Takže znova, jednoduché chyby, aby sa čoskoro znova a znova.
Takže teraz znovu spustiť vlastné, Rob, vstúpiť, a je to tu.
Teraz máme vlastný program.
>> Takže som teraz mať program, ktorý pomocou niekoľkých charakteristík
že stojí za zmienku.
Po prvé, ja som s použitím CS50.h, inak známy ako CS50 knižnice.
A vnútri CS50 knižnice sú funkcie, ktoré ostatní ľudia písali -
menovite personál -
pre vás na použitie, a získať Reťazec je jedným z nich.
>> Vnútri riadku 2 je stdio.h, a prečo je to tam?
Urobte si hádať.
Čo existuje vnútri štandardné IO rodičom?
Printf.
Takže printf, nevidíte to kdekoľvek inde na obrazovke.
Je potrebné prísť s počítač nejako.
Kde sa to vzalo?
Je to vo vnútri - to vyhlásil, aby som tak povedal, vnútri
súbor s názvom stdio.h.
>> Teraz, toto, vrátime sa nakoniec, pretože je to trochu
rušivé teraz.
Jedná sa o návrate typu.
To sa týka argumentu.
Ale dnes sme sa zamerala práve tu na týchto tratiach.
>> Takže string name, len zhrnúť, Čo sa to urobiť pre mňa?
Tak to vyhlásil premennú typu reťazec.
Tak to má byť slová, nie pre čísla.
Rovnako ako stranou, keď chcel som že sa jedná o číslo, povedal by som, že
niečo ako int.
Keby som chcel byť s plávajúcou desatinnou čiarkou hodnota, niečo s desatinnou čiarkou,
Povedal by som, že plavák.
Ale dnes som práve povedal reťazec.
>> A Dal som túto premennú názov názov, ale nemohol som
hovorili, že nič.
V skutočnosti, pôvodne som to nazval S.
>> Toto je len ďalšie vyhlásenie.
Koľko argumenty je to Vyhlásenie o prijatí?
Takže je to len s jednou, a to je jednoducho estetický detail
niečo zobrazovanie na na obrazovke so mnou.
Čo je to linka 8 robí Laicky povedané?
>> Je to dostať hodnotu z užívateľ - totiž reťazec -
a čo to robí s ním?
Je to v podstate odovzdaním chlap na ľavej strane
znamienko rovná sa, aby v tomto prípade Názov premennej môže skutočne uložiť.
>> A potom printf je ďalší inštancie funkcie.
A my hovoríme, aby volanie funkcie.
Ak chcete použiť funkciu je volať funkciu.
To, čo zrejme prijíma dva argumenty.
Ten, čiarka, tento.
>> Ten sám o sebe je len reťazec ktorý obsahuje zástupný symbol.
% S znamená dať ďalší reťazec tu.
A tak tým, že meno po čiarka, ktorá je vkladanie
tá vec pre mňa.
>> Takže môžem robiť iné veci stále.
Nechaj ma ísť do toho hneď a urobiť trochu Program hlúpe, ale dovoľte mi, aby som toto hodnotenie odstrániť,
a dovoľte mi vytvoriť slučku.
Je síce pravda.
Symbol pravda, samozrejme vždy bude pravda.
Takže, aký druh slučky som navodzujúce písomne ​​riadok podobný tomuto?
>> Takže nekonečná slučka, nie?
Len keď pravda.
Neexistuje žiadny spôsob, ako môžem zmeniť slovo pravda, že je niečo iné, takže je to
len tak bežať navždy.
Takže ak ste niekedy mali vlastne program v počítači Mac alebo PC, ktorý sa zdá
aby zavreli, alebo to robí niečo a niečo, a práve
nemôže dostať vec skončiť, ak vás reštartujte počítač alebo vytiahnuť
Správcu úloh a podobne, tu je taký príklad.
>> Môžem povedať, "Som buggy programu." Zavrieť citát, zatvorte
zátvorka, bodkočiarka.
Takže znova, všimnite si vzory.
Aj keď niektoré z našich syntaxe je nový, kľúčové slovo, zatiaľ čo kľúčové slovo pravda,
Všimnite si, že majú rovnaké druh zložených zátvoriek.
Mám bodkočiarka a zátvorky.
>> Takže teraz poďme ďalej a zostaviť to.
Urobiť vlastné, zvyk.
Takže v tomto bode, nemusíte sa reštartujte zariadenie, v poriadku?
Tak jednoduché ponaučenie je s dva prsty, Control C,
budeme ukončiť tento program.
Ale môžete vidieť presne to, prečo tá vec sa opakuje znovu a znovu.
>> Môžem urobiť niečo trochu zložitejšie, ako ukážku.
Chystám sa ísť dopredu a povedať nasledovné.
Pre int, čo je celé číslo, aj len všeobecný názov dávame najviac
premenné v programovaní, keď ste len počítanie, sa rovná 0.
Nechaj ma ísť ďalej a povedať, keď som ich, povedzme, menej než 100, aj plus plus.
Budeme Späť do tejto syntaxe, ale to len znamená,
zvyšovať aj znova a znova.
>> A čo chcem robiť?
Printf ", že sa môžem spoľahnúť na i." Ide o program, buggy.
Čo som vlastne v úmysle tu?
>> Percento nie s, ale nebudete hádať to. % D je desiatkové celé číslo.
Čiarka i.
Dovoľte mi vrátiť sa späť.
>> Dovoľte mi teraz prekompilovať s make.
Dovoľte mi, aby som znova sa zvykom.
Že sa môžem spoľahnúť naozaj sakramentsky rýchlo, keď Som napísať program, ako je tento.
>> Teraz sa poďme niečo urobiť s trochu neúmyselné.
Čo ideme na to, keď som je väčší alebo rovné 0.
Čo to bude indukovať?
Takže logicky, to nie je tak múdry, pretože teraz keď som to znova, rozprávať,
Teraz môžem počítať naozaj vysoká.
Bohužiaľ, asi tak vysoko, ako to pôjde počet je 4 miliardy, tak to bude
chvíľu trvať.
>> Tak prečo by sme nechať to ako nášho Cliffhanger, sľubovať, že na
Streda, uvidíme, či sa tento program je hotovo.
Dva popíšeme, ako ste sami napísať vlastnú funkciu tak, aby veľmi
rýchlo do stredy, budeme, ako sme Prechod od nuly do C, začnite
písanie stále čoraz zložitejšie Programy, ktoré väčšinou,
oveľa viac než to.
Uvidíme sa potom.
>> [APPLAUSE]
>> Reproduktor 1: V ďalšom CS50, Puzzle Deň sa vydaril.