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.