>> DAVID MALAN: Ez CS50, és ez a a kezdete egy hét.
És mi azt hittük tennie, hogy húzza vissza a függöny egy eszköz, hogy sok
Az akkor valószínűleg elsétált már évek óta, de talán sohasem
ismert, mi az.
Így ez a készülék valószínűleg keresni ismerős legtöbben már.
>> [VIDEÓ LEJÁTSZÁS]
>> -A diadal a matematikai és mechanikus készség a nagyszerű új
automatikus számológép Harvard Egyetemen.
Bonyolult matematika feladatok fel a gépet kódolt formában
szalag pontosan megoldani egy perc alatt töredéke a szükséges idő
emberi számítás.
>> Arra tervezték, hogy felgyorsítsa minden formáját matematikai és a tudományos kutatás,
az óriás mechanikus agy dolgozik az Egyesült Államokban
Navy amíg háború végén.
>> [END VIDEÓ LEJÁTSZÁS]
>> DAVID MALAN: Szóval ez az, amit látsz A Science Center, ott, ahol
hogy a gép már otthont.
Te tényleg csak egy részét láthatja.
Csak egy részét jelenleg a kijelzőn, és ez egy eszközt, melyet
A Mark I, és lényegében egy igazán nagy számológép.
Ezt követte a Mark II, és ez a Mark II, hogy valójában
kap egy kis lexikon.
>> Ez az első rögzített példánya amit te arról, hogy lesz minden
is ismeri az során a félév -
nevezetesen a hibát.
Így kiderült, egy ponton a Mark II készülék nem működik
megfelelően, és ha jobban ellenőrzés, valóban volt egy hiba - a moly -
hogy a lepke -
belül.
És azóta, már említett hibák programok hibákat.
Így bővebben jönni.
>> Apropó videó is, ha még nem, tudom, hogy ez CS50
nyilvánvalóan forgatták.
Az előadások általában felmegy után osztály egyfajta kiadás előtti
szerkesztetlen formában, majd egy-két nap később tesszük fel a nagyobb felbontású
és jobb minőségű változata.
Talán emlékeznek Vanessa, aki a szerencse a játék a Google Glass,
ami eszembe jutott, hogy díj ebben az időben.
Tehát, ha azt szeretnénk, hogy jöjjön fel óra után és a játék, meg kell dolgozni ma.
És ha azt szeretné, hogy mi Vanessa látta a minap, hogy mit fog látni
itt - hadd növelje a hangerőt itt az én laptop.
>> [VIDEÓ LEJÁTSZÁS]
>> -Hadd sorban ez fel.
Rendben van.
Tehát érintse meg ezt.
Rendben van.
OK, Glass.
Videofelvétel készíthető.
>> Rendben van.
Vanessa?
>> [END VIDEÓ LEJÁTSZÁS]
>> DAVID MALAN: Rendben, tehát az ok , hogy nem működik a legtöbb közületek
végén az osztály, mert én az rögzíteni egy óra, hogy a
felvételeket mutatott magam után Tettem a szemüveget le.
Így ma, elmegyek őket, de köszönöm hogy Vanessa, hogy ilyen
jó sport.
>> Eközben néhány bejelentések mielőtt előretör ma.
Tehát az egyik, CS50 hagyománya van ennek amit tudunk, hogy megpróbál egy nagyon
nagy osztály úgy érzi, kisebb.
És felé, hogy a végén a legtöbb minden pénteken, gyűjtünk egy étteremben
A tér, Tűz és jég, 30 vagy 40 az osztálytársaival, én, néhány
a tantestület, és mi csak nagyon laza ebédet.
Gyakran meghívja barátait az ipar, a alumni az osztály, öregdiákok a
főiskola, tényleg csak a chat minden Más fel, beszélni az élet után
főiskola, az élet az egyetemen, és hasonlók.
Tehát, ha szeretne részt venni ebben a első ilyen ebéd a pénteken
13:15, fej, hogy URL egy bizonyos ponton.
>> Hely korlátozott, ezért megteszem érkezési sorrendben szolgálják.
De majd ezt ismét a visszatérő alapján, így nem kell aggódnia, ha nem
került be az első tétel.
>> Nos, tekintve a források curricularly a kurzus,
van egy egész rakás, és ha nem húzta fel a kurzus honlapján
már, különösen alatt előadások, rájössz, hogy mindent
mi volt a múlt héten ott van, mind a videó és valamilyen
Az elektronikus formában.
De túl a videók, talál hogy ma már teljes szöveg
átiratok, például minden előadás.
>> Tehát, ha tényleg megy vissza a képernyőre itt Vanessa, és keresse
az alsó sarokban, rájössz, hogy valójában nem
A pénteki előadás, de ha megyünk vissza Szerda, mivel ezt a funkciót vesz
néhány nap, rájössz, hogy tudsz valóban húzza fel, a jobb vagy
rosszabb, minden szó, amit vagy önkéntes a színpadon mondta.
És még ennél is több.
Akkor valóban keressük meg, akkor kattintson bármelyik olyan mondatok, ugrás
hogy pont a videó, minden felé és végén így az anyag valamennyi
több hajózható.
>> De ha inkább nem követem olyan részletesen, talál, a
Például, ez a kis étlap itt 1.5x sebesség, 2x sebesség, vagy I F már
beszélnek túl gyors neked, 0,75 x sebesség.
Így észre minden, ami elérhető ott van.
>> De azon túl, hogy az előadások, észre hogy mi is, hogy ezeket a forrásokat
rendelkezésre áll.
Diák, példa kód, bármi, amit csinál a színpadon, vagy előre osztály,
feltesszük is, hogy lehet játszani mentén otthon vagy Sanders.
De mi azt is hittük, hogy ezt évben az első alkalommal is
az Ön Rövidfilmek Az ezekben a példákban.
Egyre ahogy már tükröződik a értéke CS50 előadások, Elkezdtem
kérdésre, hogy mennyire hasznos ez a srácok ott ülni, nekem állni
itt, és nekem, hogy beszélni veled, különösen mivel az anyag, a
példák, hogy bonyolultabb.
Mert mindig, miután néhány száma perc, valaki zóna ki, és
akkor hiányzik néhány fontos betekintést néhány Például, és akkor már lényegében
elment a fennmaradó részét az osztály, ami nem a legjobb felhasználása
az időt, vagy, tényleg, a miénk együttesen, mint egy osztály.
>> És mi azt hittük, próbálja meg, különösen néhány a nagyobb
komplex példák, hogy lehet, hogy nem igazságot az osztályban, hogy esetleg nem
van idő az osztályban, vagy lehet, hogy csak zóna közben, az akkor elő
egy sor ilyen walkthroughs példa, hogy ha megy, mert
Például, múlt pénteki videóinak oldalala itt alatt példák, látni fogja, hogy
Péntek, van most ez a linket walkthroughs.
És formátumát e változik az idő múlásával.
Most, most egy egyszerű YouTube lejátszási lista.
>> De amit tettem a produkciós csapat utána volt séta minden
és minden egy ilyen példák ismét remélhetőleg rámutatva sokkal nagyobb
világos, pontosan mi a elvitelre lehetne vagy kellene minden.
Így talál, például, a múlt héten, az összes példák karcolás
mentünk keresztül történik lineárisan , hogy a divat.
Szóval nyugodtan, hogy vegyenek részt, vagy nem vegyenek részt ebben az anyagban.
Tényleg egy témát az adott kurzus az, hogy talán még
ahogy a források, mint te esetleg felvenni vége
során a félév.
>> De ez szándékos.
Ez azt jelentette, hogy annak érdekében, hogy Ön, mint egyes hallgatók is saját válassza
alapján a tanulási stílus.
Tehát, ha előadás működik, akkor jó.
Ha a szakaszok működik, akkor jó.
Ha a walkthroughs dolgozni jobb, remek.
Tényleg lesz rajtad múlik, hogy választani milyen forrásokat a legjobban az Ön számára.
>> Végül, köszönhetően a diák a Természetesen, mi is egy kanonikus
készlet írnok jegyzetek.
Tehát ahelyett, hogy ti fejek le előadások irkafirka meg
dolgok, hogy jöjjön létre az osztályban, mi, a munkatársai, az Ön számára, amit
érzi, a kanonikus sor jegyzetek ingyen van, hogy a zavaró, hogy a
ha itt van, és elkötelezett, akkor igazán foglalkozik azzal, hogy mi folyik itt,
az osztálytársaival csinálnak fel színpadon, és mi van a képernyőn,
és nem csak leírom szó mi történt, hogy elhangzott.
Így észre minden ilyen erőforrás áll az Ön rendelkezésére.
>> Szakaszolása, a válasz egy GYIK, kezdődik szerdán.
Mi alapvetően várja meg, amíg a legtöbb más osztályba történik, hogy mi is
minél kevesebb változás hogy meg kell tennie.
De jön a hétvégén, kezdve Vasárnap, lesz egy időben példányát
úgynevezett super szakaszok.
Ezeket a filmre azok számára, akik nem részt, és lényegében a
Természetesen a fejek fognak járni hozzánk néhány A C része a kurzus,
egy cél felé a probléma meg egy, ami lesz az első C alapú
probléma meg.
És ezek csak választható szakaszok előre, hogy mi fog
válik visszatérő szakaszok miatt a kurzus a 50 plusz
tanítás fickók hetente.
Vasárnap vagy hétfőn, vagy kedden, akkor már 90 perces szakaszok nagyon
hagyományos értelemben vett, melyik lesz lehetőségeket kezét, és több
intim felülvizsgálata Természetesen az anyag.
>> Minden további nélkül, hadd mutassam be a tanfolyam feje, akik
a színfalak mögött velem, hogy mindent történik.
Ha ezek a ma itt volt velem, Rob és Lauren és Joseph és Lucas, minden
akik közül már a Természetesen egy ideig.
RJ a harmadik ilyen tagja a csapatnak.
Ő nem lehet itt ma, de megkért, hogy mutassak egy fotót róla.
Nem vagyok benne biztos, hogy ezt akarta egy, de ott van.
>> És hadd hogy a csoport azt Hello, és be magukat, hogy
ismerjük meg őket, csakúgy, mint a saját tanítási ember ezt a kifejezést.
>> LAUREN CARVALHO: Szia.
A nevem Lauren Carvalho.
Én vagyok a rezidens oktató A Leverett House.
Én is szuper izgatott, hogy egy fej TV CS50 ebben az évben.
>> CS50 egy nagyon nehéz osztály, valamint mint egy nagyon nagy osztály, így ha
merülne fel, ha úgy érzed akkor lemarad, nyugodtan
érhetünk el, hogy bármelyikünk a heads@cs50.het vagy nekem, ha lenne
szeretnek játszani az én arany retriever kiskutya.
Itt Lucas.
>> LUCAS FREITAS: Sziasztok.
A nevem Lucas Freitas.
Én vagyok a junior [hallható]
számítástechnika és nyelvészet.
Én valójában Brazíliából, és azt is észre kelet-ázsiai tanulmányok.
Tehát, ha bármilyen kérdése van számítástechnika vagy nyelvi vagy
semmit, csak szólj.
Vagy CS50, különösen.
>> JOSEPH ONG: Szia.
Én Joseph.
Én vagyok a rangidős tanul számítógép tudomány Elliott House.
Nos, lássuk csak.
Látni fogod, engem körül hordozó egy ilyen nagy kamerák.
Én vagyok a rezidens fotósa 50 is, és a diákok gyakran
néha engem összetéveszteni egy ázsiai turista.
>> Tehát, ha látsz engem a kamera, nem fut el.
Csak mosolyogj, és ne légy szégyenlős.
És remélem, élvezni 50..
Én nagyon élveztem, amikor elvettem, és ez az, amiért már a TFing
e három év.
>> ROB BOWDEN: Szia.
Én Rob.
Ez a negyedik félévben CS50.
Én most diplomázott május.
Voltam Kirkland.
Izgatott vagyok, mert ebben a félévben, és remélem, te is.
>> DAVID MALAN: Köszönjük, hogy az idei fejek, és RJ is.
>> Így néhány végső jegyzetek forrásokat.
Egy, p állítsa 0 már fel.
Ez már csak a szokásos kiadás, ami azt jelentette, hogy a
egészében az osztály.
Kezdve p szett 1, nem lesz hacker kiadásaiban legtöbb probléma készletek,
amely megint fedezi az anyagot egy kicsit több kihívást jelent, míg a
még megható néhány az azonos témában.
Ne vessen egy pillantást a tanfolyam honlapján az adott specifikáció p szett 0-ra.
>> Fogadóóra is kezdődik ezen a héten, ma, holnap, szerda,
és csütörtökön különböző étkezési csarnokok az egyetemen.
Nézze meg cs50.net/ohs az irodában óra a tanfolyam, és rájön, ez
lesz nagyon alkalmi lehetőségeket, természetesen, az elején a
félév találni a laptop alatt az agy szünet.
Hozz néhány barátommal, és chat fel a Természetesen a TF és CA bármilyen
kérdés, hogy lehet, hogy.
>> És nem tudom eléggé hangsúlyozni, még scratch és a probléma meg 0, akkor
tényleg nem hülye kérdés.
Nincs diák túl kényelmetlen kérdéseket feltenni.
Kérjük, hogy kihasználják Ez a forrás.
Ott lesz visszatérően egész félévben,
ahogy azt CS50 Fórum.
Ez a kurzus online beszélgetés fórumok azon a címen van.
>> Amit mi is csinál közben előadások figyelemmel kíséri ennek köszönhetően a
Természetesen a tanári csapat.
És ha van egy kérdés alatt előadás, mert én mondtam valamit
rosszul vagy egyáltalán nem, minden eszközzel, kérdezze hogy valós időben, ha a
laptop vagy telefonon a honlapon, és a mi mindent megteszünk közel valós időben
válaszolni erre.
>> Vannak-e olyan kérdések CS 50?
Aztán az egyik utolsó hangjai az enyém.
Ez a kérdés a SAT UNSAT.
Ahogy véglegesíti a tanulmány kártyát, ha még nem, rájönnek, hogy a
átfogó víziója SAT UNSAT, rendelkezésre az összes diák, nagyon
hogy segítsen, hogy a szélén le egy tanfolyam mint ez, hogy úgy mondjam, hogy ha
találja magát késő este, 02:00, 03:00, tényleg veri a fejét ellen
a falon, ahol tudod, hogy 99%-a Útközben a befejezésig, de
annyi más dolgom van, Azt hiszem, jobb kihasználása, gyakran a
diákok az idő, hogy valóban lépni a többi dolog, így
optimalizálja az idő körül.
És SAT UNSAT egy mechanizmus, amelyen keresztül amit megtehetsz kényelmes az a tény
hogy 99%-a az úton van még mindig elég rohadt jó.
>> Hasonlóképpen, is, ha már jön a Természetesen előzetesen nem háttér vagy
közel sem annyira, mint háttér Szerintem az osztálytársaival lehetnek, igaz
vagy hamis, rájönnek, hogy ez egy lehetőséget kap a keze piszkos
A kurzus, tegye az ujjait a víz, hogy úgy mondjam, ugyanúgy, mint én magam
tette évvel ezelőtt megfelelt / nem felelt.
Ahogy mondta a múlt héten, már ezt az utat, mint a többiek, nem volt elérhető
/ nem felelt meg abban az időben, azt valószínűleg Nem valaha is lépett a lábát
az osztály, bár én, öt hét alatt később meggondolom magam, amit
akkor is, és kapcsoljon át vagy levélben fokozatos állapotát.
>> Rendben van.
Így nézett a dolgok, mint ez a Péntek, és mi nagyon gyorsan megy
átmenet valamit, ami úgy néz ki, rejtélyes ma.
De ez mégis a ugyanazokat az alapvető ötlet.
Mi volt az általános kifejezés, amit leírására egy puzzle darabot
úgy nézett ki, mint ez?
>> Szóval, egy nyilatkozatot.
És akkor hívja ezt a számot számú dolog.
De majd csak ez egy nyilatkozatot, , és egy nyilatkozatot
csak azt a programot -
vagy abban az esetben, Scratch, a kobold -
hogy tegyen valamit.
Köszönj ebben az esetben.
>> Valami ehhez hasonló mi helyette neve, mi?
Igen, a logikai kifejezés.
A logikai kifejezés csak valami hogy igaz vagy hamis, és így Scratch
felhívja őket a forma, hanem a egy kérdőjel közvetíteni a
elképzelést, hogy a válasz erre a kérdésre vagy igaz, vagy hamis, igen vagy nem
on, 1 vagy 0.
>> És ezeket a logikai kifejezések belső konstrukciók, mint ezek, melyek
hívtuk mi?
Tehát, feltétel vagy ág.
És a feltétellel, látsz itt Scratch egy kicsit helyőrző egy
puzzle darab, hogy a forma, a cél amelynek így
húzza, és dobja el a tetején, majd a diktálni a programot, ha a logikai
kifejezés igaz, akkor ez meg az utasítások, ez meg a nyilatkozatok,
mást a másik meg utasításokat.
>> És emlékszem, hogy akkor fészek ezeket a dolgokat.
Bár nincs sok szoba vizuálisan, hogy puzzle-darab, Scratch
növekedni fog, és zsugorítás bármilyen puzzle darabokat áthúzza a
ott így valóban fészek ezt, és van egy hármas útelágazáshoz.
Ha más, ha más.
És akkor is túl, hogy a fészkelő tovább és tovább, ha szükséges.
>> Így végül, láttuk konstrukciók, mint a e, más néven egy hurkot.
És ez csak valami, hogy nem valami újra és újra és újra.
Ebben az esetben előfordul, hogy egy véges több alkalommal, de azt is
látott példát, ahol a szám a alkalommal jött egy változó, így
megváltozhat.
És azt is láttuk, egy blokk teljesen úgynevezett örökre blokk
lehetővé tette, hogy loop végtelen hosszú.
>> Így egy másik konstrukció, Scratch 2.0 - és azoknak, nagyobb
kényelmes előzetes hátterű már jól ismerik ezt
konstrukció -
ezeket hívtuk mi?
Így hívják ezt a funkciót, különben ismert eljárásokat.
Van egy kis szemantikai különbség, de hívjuk őket csak funkciókat.
>> És egy függvényt, abban az esetben, Scratch, egy egyedi puzzle darab,
te magad is létre úgy, hogy egy új puzzle-darab, hogy ez a
esetben neveznénk köhögés, hogy a között jelenik meg az összes többi
kapható puzzle darab Scratch.
Annak ellenére, hogy MIT nem találta a puzzle-darab, igen.
>> Tehát a funkció lehetővé teszi, hogy az új viselkedés, hogy ez a függvény neve, és
akkor hívja, hogy úgy mondjam.
Tényleg használni a programokat újra és újra és újra, anélkül, hogy megvárná
valaki, mint a MIT az úton kitalálni új funkciók a semmiből.
Te magad is építeni ezeket a puzzle darabok magát, majd újra őket
saját programokat.
És majd meglátjuk, a visszatérő példát Az, hogy a mai és a tovább.
>> Így ma már átmenet már hogy valami misztikus.
De a végén a nap, valami erősebb és kifejező, és több
képviselője az út, hogy mi lesz minden félév során számos
nyelvek -
hogy a kód vagy a forráskód.
És a forráskód, mint kiderült, nem az, amit a számítógép
általában valóban fut.
Forráskód valahogy így néz ki.
>> Szóval ez, megint, talán a legegyszerűbb programot tudunk írni egy
nyelv úgynevezett C fokon kezd kötekedik ez mellett nemsokára, és ha
ez tényleg úgy néz ki, mint a görög neked most, hidd el nekem.
Alig egy-két hét múlva, ez lesz nagyon is ismerős, és valóban
meglehetősen reprezentatív egyre komplex példák, amelyek akkor
is, hogy több kényelmes.
>> De nem lehet csak futtatni ezt ilyen kód általában.
Meg kell, hogy kapcsolja be valamit, A számítógép is megért.
És így, hogy kell valami fogunk hívni a fordító.
A fordító egy olyan programot, amely forráskód, mint az imént láttam, ahogy
bemenet, és az általa előállított nullák és is, mint kimenet, különben
úgynevezett tárgykód.
És ez a nullák és egyesek, hogy nézhet jó, mint ez,
végül értendők az Ön Mac vagy PC.
>> Ha valaha is hallott a marketing kifejezés Intel Inside, hogy csak
azt jelenti, hogy egy cég, Intel gyártott
Brains számítógép -
más néven a CPU-t, központi feldolgozó egység -
és ez csak a dolog, hogy megérti minták
A nullák és egyesek.
És így a konvertáló forráskódot tárgykód keresztül ez a folyamat itt
hogy fogjuk csinálni egy pár parancs csak egy kicsit, akkor
ami minták nullák és egyesek , hogy a munkavállalók az Intel is
döntött képviselnek egyes állításokat.
>> Nos, én nem igazán tudom melyik hogy melyik az éppen nézett
Ezen nullák és egyesek.
A legtöbb ember manapság nem.
De valahol van egy minta nullák és egyesek, hogy képviseli a
állítás nyomtatás.
Valahol ott lehet a másik meg a nullák és egyesek, hogy
képviselik fogalma örökre vagy Ismételje meg 10-szer, vagy akár miau, ha ez
valójában egy program, amely képes között néhány hang.
>> Tehát röviden, az emberek csak úgy döntött, ugyanúgy, mint mi az ASCII -
mert az ábécé betűit a múlt héten - az emberek úgy döntöttek, hogy még
bonyolultabb minták nullák és egyesek képviseli bonyolultabb viselkedés
mint a nyomtatás, vagy azzal, vagy nyávog.
És így a mai, és nagyrészt előre a félévben, akkor magától
biztosítani, hogy valaki rájött , hogyan kell csinálni, hogy a leképezés.
De mi, összhangban ez a gondolat a réteg tetején a munka az emberek
akik már elénk, majd magától adott az a tény, hogy ez az egész
a motorháztető alatt.
De mi sokkal jobban érdekli a az épület a dolgokat, hogy több
érdekes a tetején mindezt.
>> És valóban, az első program keretében írta Scratch volt ez a végtelenül egyszerű,
egy, Hello World.
És azt lehet gondolni, hogy ezt a fő program, amely szabályozza Scratch
viselkedését a múlt pénteken.
>> Ma fogunk kezdeni fordítani Scratch puzzle darab
forráskód ezen a nyelven nevezett C, hogy mit nézett ki, mint ez a
Péntek, a mai naptól kezdve a Most fog kinézni, mint ez.
Igaz még rejtélyes.
Ez elég zavaró, és egyfajta lélek zsibbasztó, hogy az összes az idézőjelek
és a pontosvesszővel, vagy a zárójelek és így tovább.
>> De ha elkezd figyelmen kívül hagyni mindent, amit Nem értem, és tényleg meg
A lényege a fehér szöveg a képernyőn, biztosan tudod, mint én,
"Hello, world". Ez a vonal fel a lila adatok fel tetején, és kiderül
arra, hogy a kulcsszó fő fog sorban fogalmilag amikor zöld
zászló kattintott.
>> Más szóval, mivel a Scratch, mi végre ez a Hello World programot
A két puzzle darab, C, fogjuk végrehajtani ezekkel a
Négy kissé rejtélyes vonalak.
De ahogy mélyebben ezt, akkor látni, hogy minden egyes ilyen
fehér karakterek a képernyőn valójában van néhány jelentős értelme,
és a legtöbb program fog meg szerkezetileg teljesen ugyanaz.
Tehát egy nyilatkozatot, hogy világos legyen, mit nézett ki, mint "azt mondják hello world" című
Péntek fog kezdeni tetszik ez a hétfő.
printf ("hello, world").
És van valami furcsa backslash n, ott zárójelben, ott
pontosvessző.
>> De a végén a nap, a kulcs elvihető ma az, hogy minden, amit csinálunk
A fordítás a dolgokat kép formában a szöveges formában.
Tehát egy ciklus, ami valahogy így nézett ki a múlt héten fog most meg
valami ilyesmi.
>> És hadd utasíthat el, csakúgy, mint a Scratch, ott különböző módon
elérni ugyanazt a célt.
Ugyanaz a C. Én nem jelenik meg az egyetlen módja annak, hogy a dolgok, de az egyik módja annak, hogy
lefordítani ezt örökre blokk egy hurok C.
>> Ez itt, ismételje meg 10-szer.
Ez tényleg ilyen ívek a bánja az első alkalommal, amikor látom.
De végre, hogy ezentúl, fogunk használni
a hurok, hogy úgy mondjam.
És nyilvánvalóan van valami szintaxist, ami egy kis területen az I és
egyenlő 0, de ha egyszer már belevetik magukat, hogy ma tovább, csak most lesz
látni, hogy ez minden, csak csinál valami alapvető számtani, hogy minket a 0
a legfeljebb 9 vagy 10 ebben az esetben.
>> Végül, változókkal, emlékezzünk csak vissza hogy a változó egy darab tároló.
Nos, mi volt a bal oldalon ott a múlt héten fog nézni egy kicsit
valami ilyesmi ezen a héten.
De a lényeg, inkább az, hogy jönnek.
>> Volt logikai kifejezések, melyek a múlt héten, így nézett ki.
Ezen a héten tovább, ők fognak kezd nézni egy kicsit, mint ezt.
>> És ez az ember valójában egy kicsit megnyugtató.
Ez valójában majdnem olyan egyszerű a zöld blokkokat.
De itt van, ismét néhány új szintaxis A ampersands, de akkor
talán hiszem míg Scratch, akkor mondjuk A-N-D, látszólag C, vagyunk
mondani jel jel.
De mindez lesz természetes nemsokára.
>> Körülmények között.
A múlt héten úgy tűnt, ez a bal oldalon.
Ezen a héten, a jobb oldalon, ez fog kinézni.
De ismétlem, a legfontosabb az, hogy elvihető ahogy látod a dolgokat, mint hogy
a jobb oldalon, és különösen akkor, ha kevesebb kényelmes, ez valami több mint a
fejét, akkor egy kicsit túlterheltek, hogy Tényleg fogalmam sincs, hogyan lehetne
esetleg elér hogy a semmiből -
nem szójáték szándékozott -
csak észre, hogy ez tényleg ugyanaz gondolat, hogy valószínűleg úgy érezte, sokkal több
természetes az előző héten.
És akkor is, ha nem lebukott probléma meg 0, merem állítani talál
hogy a puzzle darabok meglehetősen intuitív, vagy legalábbis
annyira az idő múlásával.
>> Úgyhogy merülni be
Tegyük kezünket piszkos itt Az első egyszerű program.
És egyszerűen, természetesen, relatív.
Ehhez fogom változtatni képernyő az adott eszköz hívtam a
CS50 készülék.
A CS50 készülék egy darab szoftver fut belül
ablak a Mac-emet, és akkor is fut azt egy ablak belsejében a számítógép, hogy a
lehetővé teszi számomra, hogy pontosan ugyanolyan számítógépes környezetben minden TF, mint
minden CA, mivel minden diák az osztályban.
Mivel a készülék CS50 szó egy másik operációs rendszer
nevű Linux -
kifejezetten Fedora Linux -
és mi, a személyzet, konfigurált a telepítési folyamat ezen
operációs rendszer oly módon, hogy az egyik, van egy kis CS50 logó
középen, kettő, van egy egyéni menü az alsó, és a három, pedagógiailag,
már egyszerűsítette a felhasználói felületet amennyire csak lehetséges, úgy, hogy ha
első csomagtartó ez a dolog fel a saját Mac vagy PC, akkor az azonos
környezetre, mint mindenki más, és hogy minden eszközt, hogy szükség van
a tanfolyam, anélkül, hogy a szám , hogyan kell telepíteni minden
minden eszköz külön-külön.
>> Tehát ez úgy néz ki, viszonylag mint a Mac OS vagy Windows.
A bal alsó sarokban, akkor lényegében egy Start menüjéből
fajta, vagy az Apple menüből.
És akkor mi gyanúsított az Ön három leggyakoribb ikonok.
Az egyik a Chrome.
Van benne egy böngésző a készülék.
>> Kettő a program neve gedit, amely láttuk röviden a múlt héten, ami
csak egy grafikus szerkesztő.
És három a Terminal program, amely egy fekete-fehér ablakot
tavalyi amely lehetővé teszi számunkra, hogy írja több misztikus, de erősebb parancs
a billentyűzet.
Szóval megyek előre, és kattintson a gedit, és biztos lehetsz benne, hogy a probléma
készlet 1, hogy fel kell szabadítani a péntek, majd végig ezeket a lépéseket.
>> Figyeljük meg, hogy van egy nagyon egyszerű felhasználói felület három részből áll.
A bal oldalon, van egy nagy üres nevű ablakot forráskód.
Oda megyek, hogy egy összefoglaló olyan kód, amit írok.
A jobb oldalon van egy nagy lapon jelenleg még nem mentett, és ez
ahol a kód fog menni.
És az alján van egy beépített Terminal ablak, egy fekete-fehér
azonnali, ahol tudok parancsokat a összeállítása és futtatni a programokat - amelyek
az, hogy a és futtatni a programokat.
>> Tehát kezdjük egyszerű.
Hadd menjek fel a Fájl, Mentés.
Én megyek előre, és bemegy jharvard.
Így a készülék, függetlenül attól, hogy milyen a neve, tartozik egy fickó neve
John Harvard, akinek jharvard otthon könyvtár belül, amely az összes
fájlok menni.
Ez a saját példányát a számla, így nem vagyunk minden megosztást
ugyanazon a merevlemezen.
Csak az illúziót John Harvard saját.
>> Előre, én valójában telepített Dropbox.
A készülék jön-val előkészített Dropbox hogy ha bármi baj
a félév során, ha már állította be a készüléket egy szabad
Dropbox-fiók, az összes fájlt fogja automatikusan biztonsági másolat, így
nagyon könnyen helyre őket.
És én megyek be a Dropbox könyvtárba, és ott már megy
hogy egy pár más dolog is.
>> De én megyek előre és menj a Fájl, Mentés.
Fogok menni jharvard, Dropbox, és itt, megyek
adni a programot egy végtelenül egyszerű, név, hello.c, majd mentse.
Szóval van ugyanazon a felületen most.
Az egyetlen dolog, ami változott a fülét tetején.
Szóval nagyon gyorsan fog újra , hogy a program a
csúszik egy perce.
>> Tehát a main (void), majd a printf, "Hello, world" kissé titokzatos
backslash n, közel idézet, közel zárójel, pontosvessző, és
majd Ctrl S a mentéshez.
És figyeljük meg, mint egy félre, amit csak meg itt a bal felső sarokban.
És ez nem hasznos ma, de hasznos lesz az idő múlásával.
Csak látni ismét, összefoglaló a kódot, amit írtál.
És azért, mert én írtam valamit az úgynevezett fő, ezért a szó fő bukkant
fel ott.
De a legtöbb, mi Nem kell, hogy ma.
>> Rendben, azt állítom, hogy ez az én először írt program egy programozási
nyelv nevű C. tudjuk, péntek hogy mi ez a dolog fog csinálni
nagyon uninterestingly amikor fuss ez csak megjeleníteni -
más szóval, nyomtatásra, mint egy számítógép tudós azt mondaná -
hello world a képernyőn.
Így kell ezt csinálni, észre fogod venni, hogy van lemenni itt a terminál
ablak, és most már egy villogó prompt.
De ez már a billentyűzet változata én John Harvard könyvtárában.
Ez egy billentyűzet mód, amelyen keresztül navigálni a merevlemezt.
>> Szóval valójában nem típus, mint én a múlt héten, hogy hello, mert
fogja mondani, hogy nem a szabály, hogy a cél -
valami baj van.
Nem igazán tudom, mi az üzenet azt jelenti, de ez azért van, mert alapértelmezésben
amikor ez a fekete-fehér ablak kinyitotta, benne vagyok John Harvard
home könyvtár.
De hol vehetem, hogy a program?
Az én Dropbox mappában.
>> Most mindannyian nőttek fel helyeken, ahol csak dupla kattintás
a mappa ikonját, akkor nyit, és íme.
Ez az, ahol a fájl neve hello.c lenne.
Tehát valójában, csináljuk ezt.
>> Hadd menjek előre, és minimálisra csökkenti a gedit , mint akkor a
Windows vagy Mac OS.
Hadd menjek be a Home mappát a bal felső sarokban.
Találkozunk itt egy csomó mappákat.
Itt a Dropbox mappában.
A pipa azt jelenti, hogy már szinkronizálva.
És van néhány dolog itt, de észrevettem, hogy a hello.c
Valóban ott.
>> És így a Mac OS vagy Windows általában, Én dupla kattintással, hogy nyit a
bármilyen programot, és én jó menni.
De most, legalábbis a mai naptól, akkor kell, hogy egy lépést hátra, csak hogy
Önnek néhány alapvető eszközök a szerszámkészlet, amellyel többre
hatalmas dolgokat, mielőtt hosszú.
>> Tehát ez a kérés, meg kell tennem a megfelelője dupla kattintással a
Dropbox mappában.
És erre, megyek, hogy írja CD change directory, Dropbox, írja.
És most észre a zárójelben az én úgynevezett prompt most azt mondja, hogy én vagyok az
tilde, a kis squiggly szimbólum bal felső sarkában a
legtöbb billentyűzeten / Dropbox.
Ez csak rövidítéseket mondván ember, akkor most belsejében
A Dropbox mappában, mintha csak Ön már kétszer kattintott rá.
>> Tehát most, ha úgy megy előre, és írja be, hogy hello, adja meg, látok egy nagyon rejtélyes
parancsot, de nem egy hibaüzenet, Úgy tűnik, majd
egy villogó prompt.
És ha emlékszem, soha olyan gyorsan pénteken, mi volt ez. . / Helló.
>> Mit fogsz látni, az eredmény az én fut a program, vagy a Mac
Operációs rendszer és PC jelenti, hogy ha én általában kétszer kattintson egy programot - a. app
program vagy a. exe, megnyitja egy ablakot, és fut.
Gépelés. / Helló olyan, mint kétszeres kattintással program futtatásához, de
használ az én billentyűzet.
>> Enter, hello world.
És ennyi.
Szóval kötekedik ezt szét, így nem érzi túl sokat, mint a görög.
>> Tehát. / Mit jelent?
Bárki, aki valaha is navigált a billentyűzet környezetben, mint ez, mi pont
utalva?
Az aktuális könyvtárban.
>> Így az aktuális könyvtárban csak a szinonimája a mappát.
Tehát azzal dot slash, azt mondom, keresse meg a program neve hello a
aktuális könyvtár -
az aktuális mappában.
Más szóval, a Dropbox mappában.
És ez az, amiért az enter ezután valóban fut a program.
>> Ha már típusú LS, észre, hogy látom mindent a Dropbox mappában.
Első Started.pdf, amely Dropbox ad ingyen, képeimet
könyvtár, nyilvános könyvtár, Nem mentett A dokumentum, amely 1 csináltam véletlenül egy
pillanattal ezelőtt, foo.c, amit tettem korábban ma, és majd két sor -
hello.c és helló.
>> Hello.c az a program, írtam a gedit, és mi hello zöld?
A hello zöld a futtatható.
Más szóval, amikor futott ez a parancs Egy pillanattal ezelőtt - hadd tekercs
vissza az időben -
amikor futottam, hogy hello, ez a középső lépés itt.
És ez volt hello.c input -
AKA forráskód - és készített egy nevű fájl szia a kimeneti, amely
tartalmazza az összes ilyen nullák.
És ez az, amiért a végén, én tulajdonképpen egy parancs futtatható, mint a. / helló.
Mivel az Intel Inside, az operációs rendszer, a Linux, nyit a nullát
és az is, eteti őket a agy a számítógép -
A CPU -
és hogy a CPU tudja, Ó, itt van egy minta A nullák és egyesek, hogy azt mondja:
nyomtatás a következő dolog a képernyőn.
>> Mi a következő dolog?
Idézet idézőjel bezárva, "hello world".
>> Rendben, egy gyors összefoglalót néhány ezeket a parancsokat, hogy mi lehet kezdeni
figyelembe őket adni.
Hadd ugorjon a ahol abbahagytuk.
És emlékezzünk csak vissza, hogy mi volt CD a mi hátsó végén egy perce.
Ezek, merem mondani, mert mai célokra -
Talán ezen a héten - az egyetlen parancs is Lehet, hogy írja be a parancsot
azonnali kívül tenni.
>> Tehát CD állt, amit?
Váltani.
Ez csak az egyenértékű a kettős kattintson a mappára.
És mint félre, ha kap elveszett valaha belsejét a
készüléket úgy, hogy Dropbox -
Azt akarom, hogy vissza a jharvard könyvtár -
ha kétségei vannak, CD, adja meg, nincs más szavakat, és ez csak cipzárak vissza
oda, ahol kezdődött, mely egy szép kis parancsikont.
>> Rendben, így most más parancsokat.
LS.
Beírtam, hogy egy perce.
Mit gondolsz LS jelentése?
>> Tehát, lista, igaz?
Vissza a nap, amikor az emberek jöttek fel ezeket a parancsokat, de
akarták, hogy hatékony, és inkább írja ki L-I-S-T enter, akkor
LS döntött.
Ez rendben van.
Úgy hangzik, mint a lista elég.
Nézzük csak típus LS be, és hogy a felsorolja a fájlokat vagy mappákat a saját
aktuális mappa.
>> mkdir, akkor valószínűleg kitalálni.
Legyen könyvtárban.
Szóval nem megy valami Fájl menü és válassza az Új mappa ebben a környezetben.
Inkább beírja a parancsot mkdir tér majd a mappa nevét
kívánt létrehozni, és ez fog történni.
>> rm, akkor valószínűleg kitalálni.
Eltávolítani vagy törölni.
Tehát, ha azt szeretnénk, hogy törölje a fájlt, akkor lásd a megoldásokat, hogyan
képes erre.
És rmdir, vegye könyvtárat.
>> Szóval, megint, én inkább repülni valamilyen Az ezeket a részleteket, az egyik, mert a
ők nem olyan sok móka költeni idő, de két, akkor Önnek a
sokkal nagyobb részletességgel bármelyik Természetesen a probléma határozza, különösen
A Standard Edition, bármelyik lépést hogy szükség lehet beírni, így
hogy egyre több és több kényelmes, ezek a dolgok.
>> De most hadd kötekedik szét egy másik dolog.
Amikor írt, hogy helló egy perce láttunk egy rejtélyes parancsokat.
Láttuk, megint, győződjön meg helló.
OK, tegyük ezt.
Azon voltam, hogy hibázik, de a [Hallhatatlan] Most elismerem voltam, hogy
és nem szándékosan.
>> Mit csináltam rosszul, csak most?
Igen, nem vagyok a Dropbox könyvtár, mert egy pillanatra ezelőtt
gépelt CD és csak nyomd meg az Entert.
Ez a nagyított vissza, ahol kezdtem, ami nem, ahol a fájl
van, így tényleg kell tennie, CD Dropbox be, és most meg tudom csinálni rm helló
be, A reguláris fájl Hello.
Nem tudom, miért olyan titokzatos.
Ez csak azt jelenti, biztos vagy benne törölni kívánt te az első?
Akkor írja y igen, adja meg, és most, hogy elment.
>> És most, ha azt írja, hogy Helló újra, ez majd újra a tárgykód,
újra a nullák és egyesek.
De mi a helyzet a ez nagyon hosszú parancs?
Nos, majd ugratni ezt külön nemsokára, de hogy -
Azt mondta egy kicsit egy fehér hazugság előtt -
nem fordító.
Készíts egy olyan program, amely automatikusan kitalálja, hogyan kell futtatni a
fordító az Ön számára.
>> Tehát a parancs, hogy valóban meg kell futó hogy megtérít hello.c
a helló néznek ki egy kicsit több, mint ez.
És Isten őrizz, hogy kell, hogy valóban emlékszem, hogy valaha is írja, hogy az egész
parancssorozatot out.
A cél az, hogy az életben az, hogy ne feledje, hogy összetettségének fokát a
minket, és automatizálja az egyébként nagyon unalmas lépéseket.
>> De tudom, hogy kb.
Tehát egy a kis puskát itt, tudják becsülni, hogy mi a parancs
Ennek egyszerűen beírja csenget, ami a neve a fordító leszünk
ezzel a félévben.
Ha bármelyik valaha csinált iOS fejlesztés az iPhone vagy iPad,
Csenget az a program, amit használnak belül Xcode hogy az alkalmazások.
Csattanással, bár ez csak egy program, akinek a nevét is írja a parancsot
gyors, és bevezetésével ezt most, Én be valamit, ami a
kevés képviselő A parancsok, hogy jöjjön.
Hadd ezt manuálisan.
>> Tehát rm hello, és most észre, ha Én, mint a józanság ellenőrzés -
. / Hello, mit gondolsz kell, ha ezt csinálom?
Valamilyen hiba.
Nincs ilyen fájl könyvtár.
Szóval ez az ember valójában nagyon közvetlen.
>> Tehát most hadd törölje a képernyőt.
Vezérlő S csak törli a képernyőt hogy távolítsa el néhány zavaró.
És most megyek, hogy manuálisan típus csenget-o szia hello.c.
Szóval mi ez az egész, hogy nem?
Pontosan ugyanezt teszik tett minket, de én dobja el néhány
a felesleges szavakat.
>> Csenget az a program, hogy fog egy. c file bemenetként és termel
nullákkal és egyesekkel a kibocsátás.
De-o ezentúl hívja kapcsoló vagy a zászló.
Ez csak techie zsargon mondja ez a szó, amit írja a gyors
valahogy befolyásolja a viselkedését A program futtat.
Tehát nem mindenki akarja kitalálni mi-o közvetíti?
>> Output.
Csak valaki úgy döntött, o azt kimeneti fájl neve helló és hogy minél
input amit az utolsó szó a prompt, hello.c, hogy ha én hit
Most adja meg, semmi sem történik.
És furcsa módon, ebben a világban a programozás, ha nem történik semmi,
ez valószínűleg egy jó dolog mert nincs hiba
üzenet a képernyőn.
Helló, Enter.
Saját program már fut.
>> De én buta kis dolgokat e. csattanással-o, hihihi, hello.c,
be, és most már azonos nevű program hihihi.
Ez ugyanígy viselkedik, de a név más.
>> Tehát ez csak azt jelenti, hogy ha azt szeretnénk, hogy befolyásolja a viselkedését a
programot fogunk egyre látja a dolgokat az úgynevezett
parancssori paramétereket.
Ez egy sorban.
Te gépelés parancsokat.
Ergo, parancssorban.
És parancssori argumentumok csak szavakat vagy apró darabokra a szintaxist
valahogy befolyásolja a viselkedését programok, hogy futnak.
>> Rendben, talán a leginkább unalmas programot tudunk írni, és meglátjuk.
Nézzük most csinálni valamit sokkal érdekesebb.
Hadd menjek előre, és hozzon létre egy új fájlt.
Én megyek előre, és mentse el ezt a John Harvard otthon könyvtárba,
nevezzük custom.c, hogy Egy kis egyéni programot.
Fogok nagyításhoz én tetején a füleket ide, és indítsa újra.
>> Tartalmazzák a standard stdio.h.
Bővebben az, hogy egy pillanat alatt.
int main (void), inkább a hogy egy pillanat alatt.
printf ("hello, David").
Sokkal érdekesebb, nem igaz?
>> Tehát most, ha - nem azért, mert az én nevemben, csak azért, mert más -
hogy az egyéni be.
Egyedi, hello, David.
De még ez is egy kegyes hazugság.
Ez a program akár meg is nevezhető david.c, mert nem szokás
viselkedés egyáltalán.
Tényleg, szeretnék egy programot, amely arra kéri a felhasználó nevüket.
>> Szóval hogyan tudom ezt megtenni?
Nos, hadd lépjünk fel ide.
És mielőtt használni nyilatkozatot Scratch, mielőtt használni printf,
más néven egy funkciót, hadd először kérje a felhasználó valamelyik bemeneti.
>> Így kell ezt csinálni, azt kell nem egy pár dolgot.
Az egyik, hogy kell egy hely, hogy tárolja a felhasználó Nevét Megkértem őt, vagy
neki is.
Milyen konstrukció tudom kell használni valószínűleg A tárolókban a, mint ez?
A változó.
>> Tehát ellentétben a Scratch, ahol csak kap egy szép puzzle-darab, itt, meg kell
használható, természetesen, a szavakat kifejezzük magunkat.
És ettől kezdve, amikor csak akar egy szó vagy kifejezés, a programozás,
fogunk hívni, hogy a string.
Tehát egy sor olyan szó vagy kifejezés.
Ez egy sorozat nulla vagy több karakter, több hivatalosan.
>> És ha akarsz egy ilyen változó létezik, meg kell mondani, hogy nekem.
És az út, amit tenni, hogy azt mondják, s karakterlánc pontosvessző, ahol s lehet
amit akarsz.
Tény, hogy ez egy kicsit s underwhelming.
Hadd menjek előre, és több egyértelműen hívják nevét.
Adj egy string nevű nevet.
>> De most, hogy mi az a személy név alapértelmezés szerint?
Nos, ha az ember nem adja meg semmit be, természetesen, ott megy
hogy nincs értéke nevét.
És kiderül a C-ben, ha nem ad egy változó érték, akkor fog
van egy szemetes értéket.
Lehet, hogy néhány véletlenszerű nullák és is, így csak most fog látni
szemét, bizony, a képernyőn ha megpróbálod megjeleníteni.
>> De azt rögzíteni, hogy azzal, valóban, bolt belsejében név a
következő értéket.
Ahogy tárolja az adatokat változók ha van egy változó nevét a
balra, meg kell valahogy tenni, amit akarja tárolni benne a jobb oldalon, és
A szintaxis hogy megy hogy az alábbiak szerint.
>> Már nem láttam ilyet, de hogy a hit egy pillanatra, hogy
létezik egy nyilatkozatot a világon hogy fogok újra hívás funkció,
és ez a funkció nevezett kap string.
És ez szó szerint.
Ez valahogy kap egy karaktersor az emberi, majd
csinál valamit.
>> És ez úgy néz ki, mint a rejtélyes szintaxis.
Normális esetben, ha a jelek egyenlő - te vagy a világ, mondjuk,
algebra, és már tényleg mondván, x értéke 1.
Itt nem azt mondod, hogy az neve egyet kap string.
Azt mondod, hogy tárolja a név, mi a jobb oldali
Az, hogy az egyenlőségjel.
Az egyenlőségjel képvisel az értékadó operátor.
Ez a szintaxis hogy azt mondja, fel, mi van A jobb oldalon belül, mi
a bal oldalon.
Szóval string egy új darab funkció, amely nem csak
valami -
kéri a felhasználó egy sor -
hanem visszaküldi azt, hogy úgy mondjam.
>> Úgyhogy lássuk, mi a helyzet történik itt.
Én megyek előre, most és kicsinyíteni, és megyek, hogy egy pár
hiba az én gyors.
Megyek, hogy írja, hogy az egyéni, írja.
Wow.
Egy csomó hibát.
>> Rendben, ez a fajta elsöprő, minden bizonnyal az első, de a
kiderül, mindezeket nagyon bevallottan rejtélyes hibaüzenetek
utalva bizonyos mintákat, fogjuk kezdeni, hogy az idő múlásával.
Tehát ez az egyik én összeszedi le, mert először.
A be nem jelentett azonosító string.
>> Ez csak azt jelenti, hogy a gedit vagy csenget, ebben az esetben, nem tudja,
mit értek string.
És ez azért van, mert a C-, a programozási nyelv, ott valóban
nem változó string típusú.
C nem tudja, hogy a húrok létezik.
>> De mi, CS50 személyzet, nem.
És így előre osztály, létrehozott egy fájlt a CS50.h.
És belül a fájl - és inkább a szintaxis, hogy jöjjön -
belül ez a fájl meghatározása Az, amit most meg
verbálisan, mint a szöveg.
Így egyszerűen megkötésével ebben az egy sorban A kódot a programom, most
tanítás gedit és és csenget mind pedig milyen string.
>> Nem tudom, hogyan.
Néhány héten belül, fogjuk héja vissza ezt a réteget.
De most, tudjuk, hogy ez tanít a fordító milyen
karakterlánc valójában.
>> Tehát most hadd törlöm terminál ide.
Hadd újra futni, hogy az egyéni, és megoldotta az összes ilyen problémát.
Szóval ez is fog egy visszatérő téma.
Én csak írtam egy 9 line programot, és mégis volt 18 sor hibákat.
Ez elég félelmetes.
De észre, hogy gyakran olyan kaszkád hogy egy kis hibát vált ki
A zavart a fordító, és a úgy néz ki, sokkal rosszabb, mint amilyen valójában.
>> Tehát most egy ügyes megfigyelő tudni fogja , hogy kapok egy string a
felhasználó, de nem vagyok valójában mit csinál vele?
Én valójában nem csinál semmit vele.
Tehát, ha én tényleg futni szokás újra, ez megy, hogy csak ül ott.
Mi folyik itt?
Saját program úgy tűnik, hogy kell ragasztani milyen irányvonalat, azt mondod?
>> Szóval ez tényleg megragadt 7. sor.
És még nem láttam ilyet, de on line 7 van, megint, ez a
nyilatkozatot kap string.
És hogy mit is mond.
Ez vár most az emberi hogy a húr.
Ez teljesen unintuitive nekem, az ember, mert nem mondták
mi a teendő.
>> De hadd menjek előre, a hit és a hadd úgy, mintha Rob.
Enter.
Ez nem az a program, amit tervezett.
Tehát az első blog.
>> De próbáljuk meg érvelni a miért ez a helyzet.
Először is, hadd oldja meg a problémát az első.
Hadd tegyem hozzá, itt egy sor, amely azt mondja printf, mi a neved?
Csak csináljuk szoros idézet, Záró zárójel.
>> Most hadd újra futtatni a programot.
Probléma.
Én nem látta, hogy a.
>> Rendben.
Én nem azt újrafordítani.
Tehát egy nyelv, mint a C, mert változtatni a forráskód nem jelenti azt,
hogy megváltozott a tárgykód hogy új tárgykód,
új nullák.
Meg kell fordítanod.
Ha most újra fut szokás, írja, ah, egy kicsit világosabb.
A nevem Rob.
Still hibás.
>> És én vitatkozni van Néhány hiba most.
Ez csak úgy néz ki, undorító, őszintén szólva.
Mint minimálisan, kellett volna egy hely van, vagy helyezze át a
kurzor az új vonal.
>> És valóban, az új vonal.
Ez a fajta a kulcsfontosságú mondatot, hogy itt láttunk, de nem határozták meg.
A mód, ahogyan kapsz egy szöveget hogy mozog-ra a következő sorban,
ne csináld ezt.
Ez zavaró, hogy a számítógéphez.
Ez úgy néz ki, mint két külön sorba A kód, sem az, ami
tökéletesen megfelelő.
, Ahelyett kell egyértelműbb és mondjuk, adj egy új vonal, amit
képviselje C backslash n.
>> Szóval van egy pár ilyen karaktereket.
Backslash n rögzíti, hogy az esztétikai.
Hadd fordítanod a programot.
Hadd futtassa újra a programot.
>> Ez úgy néz ki jobban.
Ez még mindig elég primitív, de ez még mindig hibás.
Tehát van egy -
még akkor is, ha soha nem beprogramozott, akkor valószínűleg egy kitalálni
, miért ez a program még mindig hibás.
Mit kell tennem, hogy az Én nem csináltam még?
>> Szóval van, hogy ténylegesen valami nevet.
Csakúgy, mint a semmiből, akkor lehet, hogy tényleg hozzá egy változó, mint n vagy
ellen, mint a mi utolsó hét - egy értéket.
De ha nem csinál semmit, a meg, semmi sem fog történni.
>> Rendben, legyen fix.
Hadd írja a változó van, és hadd menjek le ide.
Hadd újrafordítani, hadd újra-run, Rob.
Most vagyok hülye, nem igaz?
>> Tehát ez nem igazán kap nekem tovább.
De ez egy teljesen természetes ösztön, én vitatkozni, ugye?
Ha a változó neve nevemet és én akarom, hogy menjen oda, miért nem csak
írja oda?
>> Hát persze, hogy van megkülönböztetni már
között, amit a szöveg?
Figyeljük meg, hogy idézet unquote Itt, halló név?
Ez tulajdonképpen maga a szöveg.
Nehéz kódolt.
Ez nem az az ember.
Ez tőlem, az eredeti programozó, de ez még mindig egy string.
>> Tehát, ha a szó szoros értelmében ír N-A-M-E belső egy string, mi fog
kap nyomtatott?
Nos, N-A-M-E. Mi ehelyett szükségünk mondani printf nem írja ki
ki szó szerint nevét.
Nyomtassa ki az értéke nevét.
>> És erre, akkor tegye a következőket.
És ez csak egy emberi egyezmény.
Mi ehelyett mondjuk% s, és a jelentése string.
És akkor a végén én közeli idézi, Megyek, hogy egy vesszőt és
át a második érv ezt az állítást.
Megyek típus neve is.
>> Tehát most észre, hogy van egy kissé új szintaxis.
Még mindig van két zárójel, és továbbiakban hadd mondjam, hogy a cucc
között zárójelben érvek egy funkció -
bemenetek, amelyek valamilyen módon fognak hogy befolyásolják a viselkedését.
Tehát a logika, hogy sok érv azonban úgy tűnik, hogy printf
vesz ebben a pillanatban?
>> Tehát úgy tűnik, hogy, hogy két, és ez valóban hallgatólagos
A vessző itt.
Tehát ez az egyik érv az idézőjelek között.
Annak ellenére, hogy a vessző benne, minden van idézi, ami azt jelenti,
ez egy hosszú string.
Vessző, változó nevét.
>> Tehát most hadd kicsinyíteni.
Hadd újra futtatni.
Rob-ot.
A fenébe is, mit csináltam rosszul?
>> Rendben, újra kell fordítanod.
Tehát újra, könnyen hibákat, hogy a korán újra és újra.
Tehát most újra fut szokás, Rob, be, és íme.
Most már van egy egyéni programot.
>> Szóval most van egy program, amely segítségével néhány jellemzőit
, hogy érdemes megjegyezni.
Egy, én vagyok a CS50.h, különben ismert, mint a CS50 könyvtárat.
És azon belül a CS50 könyvtár funkciókat, hogy más ember írta -
nevezetesen a személyzet -
használhat, és kap sor az egyik ezek közül.
>> Belül a 2. vonal stdio.h, és miért van ez itt?
Vegyünk egy tipp.
Milyen létezik belsejében szabványos IO szülő?
Printf.
Tehát printf, nem látod, hogy sehol még a képernyőn.
Meg kell jönnie a számítógép valahogy.
Honnan származik?
Ez a belső - ez kijelentette, hogy úgy mondjam, belső
nevű fájlt stdio.h.
>> Most, ez a cucc, akkor gyere vissza hogy végül, mert ez egy kicsit
zavaró most.
Ez vonatkozik a visszatérési típus.
Ez vonatkozik az érv.
De ma, mi elsősorban csak itt, ezeken a vonalakon.
>> Tehát string name, csak összefoglalva, mit tett ez értem?
Így kijelentette, változó string típusú.
Szóval ez azt jelentette, hogy a szavakat, nem a számok.
Csakúgy, mint egy félre, ha én nem akarom , hogy egy számot, azt mondanám,
valami ilyesmit int.
Ha akartam lenni lebegőpontos érték, amit egy tizedespont,
Azt mondanám, úszó.
De ma, épp most mondtam string.
>> És én adtam ezt a változót a név név, de nem tudtam
nevezték, semmit.
Sőt, eredetileg, hívtam, hogy S.
>> Ez itt csak egy nyilatkozatot.
Hány érv ez adatok figyelembe?
Tehát csak az egyiket, és az egyszerűen esztétikai részletét
megjelenítésére valamit A képernyő nekem.
Mi ez a 8. sorban csinál a laikus szempontból?
>> Kezd egy értéket a felhasználó - azaz, egy sor -
és mit csinál vele?
Ez lényegében átadja a srác a bal oldali
egyenlőségjel úgy, hogy ebben az esetben a név változó ténylegesen tárolni.
>> És akkor még egy printf például egy funkciót.
És azt mondjuk, hogy hívja a függvényt.
Használatához funkció hívni egy függvényt.
Ez a dolog látszólag két argumentuma.
Ez az egy, vessző, ez.
>> Ez is csak egy string tartalmazó helyőrző.
% S eszköz egy újabb szöveg itt.
És azáltal, hogy nevét a vessző, ez behelyezése
a dolog nekem.
>> Szóval lehet mással is.
Hadd menjek előre, most, és csinál egy kicsit buta programban, de hadd törölni ezt,
és hadd lógjon.
Miközben igaz.
A szimbólum igazi nyilvánvalóan mindig lesz igaz.
Szóval milyen loop vagyok indukáló írt egy sort?
>> Így egy végtelen ciklus, nem igaz?
Csak míg igaz.
Nincs mód arra, hogy változtatni a szót igaz, hogy bármi más, így ez
csak úgy futni örökre.
Tehát, ha valaha valóban volt egy program, a Mac vagy PC, hogy úgy tűnik
hogy zárva, vagy csinál valamit, és valami, és csak
nem tud a dolog, hogy kilép, ha nem indítsa újra a számítógépet, vagy húzza fel a
Feladatkezelő, vagy hasonlók, itt egy ilyen példa.
>> Azt lehet mondani, "Én vagyok a hibás program." Bezár idézet, közel
zárójel, pontosvessző.
Tehát újra, észre a mintákat.
Annak ellenére, hogy néhány új szintaxis, a kulcsszó, míg a kulcsszó igaz,
észre én ugyanolyan ilyen zárójelek.
Van egy pontosvessző és zárójel.
>> Tehát most menjünk előre és lefordításával.
Hogy az egyéni, egyedi.
Tehát ezen a ponton, akkor nem kell indítsa újra a készüléket, rendben?
Tehát a könnyű lecke itt a két ujját, vezérlés C,
majd kilép a program.
De láthatjuk, pontosan miért ez a dolog ismétli önmagát újra és újra.
>> Tehetek valamit, egy kicsit bonyolultabb, mint egy teaser.
Én megyek előre, és szerint a következő.
Az int, amely egy egész szám, i az éppen egy általános nevet adunk a legtöbb
változó programozási, amikor csak számít, értéke 0-ra.
Hadd menjek előre, és azt mondják, amíg én is, mondjuk, kevesebb, mint 100, én plus plus.
Majd vissza erre szintaxis, de ez csak azt jelenti,
növelni i újra és újra.
>> És mit akarok itt?
Printf "tudom számolni, hogy i." Ez egy hibás program.
Mit Igazából szándékozik itt?
>> Százalék nem s, de nem hiszem, e. % D egy decimális egész szám.
Vessző i.
Hadd visszaállíthatja.
>> Hadd újrafordítás a tenni.
Hadd futtassa újra egyéni.
Tudok számolni nagyon rohadt gyorsan, amikor Írok egy programot, mint ez.
>> Most csináljunk valami kis szándékos.
Mi lenne, csináljuk ezt, amíg én nagyobb vagy egyenlő 0-val.
Mit fog ez kiváltani?
Tehát logikus, hogy ez nem olyan bölcs, mert ha most futtassa újra ezt elmondani,
Most már számolni nagyon, nagyon magas.
Sajnos, körülbelül olyan magas, mint én gróf 4 milliárd, tehát ez lesz
hogy egy darabig.
>> Akkor miért nem hagyjuk ezt a Cliffhanger, megígérve, hogy a
Szerda, meglátjuk, ez a program kész.
Két, akkor be, hogy te magad írni a saját funkciója, hogy a nagyon
gyorsan, a szerda, fogjuk, ahogy átmenet Scratch a C, start
írásban valaha egyre összetettebb programok, amelyek sok,
sokkal több, mint ez.
Majd meglátjuk, akkor majd.
>> [Taps]
>> SPEAKER 1: A következő CS50, Puzzle nap sikeres volt.