[Muzikavimo] Davidas Malan: Gerai. Sveiki sugrįžę. Tai CS50, ir tai yra Savaitė Vienas, tęsinys. Taigi viena iš priežasčių, mes buvo išlaikęs apie technologijas, pavyzdžiui, "Google" Stiklas kad jie ateina su kažkas žinomas kaip API Taikomųjų programų sąsaja. Ir ką tai reiškia, kad su teisingi failai ir su teise dokumentacija, jūs iš tikrųjų galite rašyti programinė įranga net prietaisų, kaip šie. Ir taip, ką mes turime omenyje link semestro pabaigoje yra, jei projektas įtraukiant, pavyzdžiui, "Google" Stiklas gali apeliacinį skundą, mes pamatyti, ką mes galime padaryti sąlygos nedėkite jus su kai loaner įranga taip pat viešai prieinama API, kad būtų galima iš tikrųjų pradėti kurti programinę įrangą kuri veikia toje pačioje "Google" stiklo. Kitas prietaisas, kad mes buvo žaisti su per vėlai, kad mes manome, gali būti smagu semestro pabaigoje tai mažai ką čia. Tai vadinama šuolis Pasiūlymas, ir ką jūs pamatyti yra techniškai reklama prietaiso, tačiau nėra kalbėti, ką tai ypač prietaisas gali. Ir ji taip pat ateina su API per kuri galite rašyti programinę įrangą kontroliuoti savo kompiuterį taip, labai patiko šį vienos minutės filmas čia. [VIDEO PLAYBACK] [PABAIGA VIDEO PLAYBACK] Taigi dabar, šis prietaisas būna turi būti įgyvendinamas kaip mažai USB jungtis, kad jūs galite prijungti prie kompiuteris, bet aš nebūtų nustebinti jei iki kol mes turime šių rūšių technologijos kitą partiją kompiuteriai ir Mac, kad jūs iš tikrųjų gali bendrauti su juo panašaus būdu. Tiesą sakant, ką aš maniau aš padaryti, taip pat yra Aš iškedentas iki šiek tiek demonstraciją programa, kuri ateina su šia programine įranga. Taigi, aš įdėti šiek tiek jutiklis priešais mano nešiojamas. Ir kaip matote, jis jau supranta, kad mano ranka yra reguliavimui. Ir visa tai programa daro, yra sklandžiai smulkmenos tai patinka. Tačiau galite matyti, kad, tiesą sakant, Turiu penkis pirštus ten. Jei mes galime gauti jį padaryti viską, 10, jūs galite įsivaizduoti, tvarkingas pianinas paraiška ar panašiai. Taigi, jei norite sugalvoti po klasę šiandien ir žaisti su, kad gerai, kviečiame į. Taigi, daugiau apie tai link semestro pabaigos. Taigi administracinių pora pranešimai. Vienas iš jų, padaryti pjūvį šį penktadienį vidurdienį cs60.net/section. Kad URL yra aikštyno Tinklapis taip pat. Tuo tarpu, nors, supersections debiutuos šį sekmadienį. Supersections yra vienkartinis dalykas, nes jis nukelia mus šiek tiek laiko dirbti , kas yra, kurioje dalyje ir kur. Taigi šio ateinantį sekmadienį, ten bus vienas dalis tiems mažiau patogūs, vieną skyrių tiems patogesnė. Ir tie iš jūsų kažkur tarp kviečiame kreiptis į arba abu, arba nė vieno. Abu jie bus filmuojami. Jie bus didesnėje auditorijoje nei dalis, kuri paprastai būtų in Bet tikslas čia yra išmokyti jus su kai su problema komfortas nustatyti vieną, su C, su CS50 prietaiso, šio savaitgalį, dar prieš jums sužinoti jūsų formalus skyriuje užduotis. Taigi jūs patenkinti savo TF ir jūsų mažesnį grupė sectionmates maždaug savaitę laiko. Darbo valandos, tuo tarpu, jau vyksta. Ar jomis pasinaudoti vakarą arba rytoj vakare, jei norite. Problemą, 0 yra dėl penktadienį. Tai diena vėliau nei reguliariai pagal tvarkaraštį ketvirtadienį. Bet problemą, 1, pamatysite kad ji apima kai apšilimo pratimai su kuria jūs sau gali pratęsti savo Ketvirtadienis terminas iki penktadienio. Problema 1 rinkinys, tuo tarpu, bus debiutas nuo kurso tinklalapyje ateinantį Penktadienis, jei norite susirangyti su tai kaip aš kažkada vėlai Penktadienio naktį į savo kambarį. Taigi cs50.net/appliance yra vieta, kur galite gauti CS50 prietaisą kad mes pradėjome naudojant pirmadienį. Mes jį naudoti tiek daugiau šiandien. Tačiau būkite tikri, kad problema set 1 specifikacija padės jums Tiksliau veiksmai, kuriuos reikia gauti, kad ir veikia. Taigi nesijaudinkite apie tai, kad prieš Pset 1, jei nenorite. Gerai. Taigi, mes pažvelgė į pirmadienį kodą, bet į naują kontekstą programavimo kalba, ty C ir C, skirtingai nuo nulio, nėra grafinis. Tai ne įspūdį. Tai daugiau anglų kaip sintaksės. Ir ten iš etapus pora iš tikrųjų raštu ir veikia programa C, nes be šaltinio kodas, kaip šis, jums reikia ką nors vadinamas sudarytojas. Ir profanas sąlygomis, kas nėra sudarytojas daryti mums? Taip. STUDENTŲ: Ji konvertuoja kodą kad rašote į 0s ir 1s. Davidas Malan: Geras. Taigi ji perkoduoja kodą mes rašome 0s ir 1s. Ji konvertuoja vadinamąją šaltinio kodą Objekto kodas, o pastarasis atrodo šiek tiek kažką panašaus į tai. Ir tai jūsų procesoriaus, viduje iš smegenys jūsų kompiuteryje, kad dėl žmonės, kurie sukūrė tuos kompiuterius, žinote, ką tie sekas iš 0s ir 1s vidurkio. Gal tai reiškia, spausdinti. Gal tai reiškia pridėjimą. Gal tai reiškia, atimtis. Gal tai reiškia rodyti grafika. Yra iš anksto modelius bitų kad pasaulis nusprendė reiškia tam tikrų dalykų. Tačiau didžioji dalis šio kurso, mes dirbti aukštesniu lygiu, ir mes priimame kaip savaime suprantama, kad egzistuoja dalykų, pavyzdžiui, kompiliatorius, kuri gali kad mūsų kodo funkciją taip, mes ketiname. Taigi programos rašėme pirmasis praėjusią savaitę ir tada pradėjo į uostą, taip kalbėti, į C praėjusį Pirmadienis, buvo tai. Kai žalia vėliava paspaudėte, pasakyti labas. Tai buvo, žinoma, parašyta nulio. Ir aš teigė, kad lygiavertis programa C atrodė šiek tiek kažkas panašaus į tai. Taigi, ką aš maniau, mes norime padaryti iš pradžių yra tegul erzinti, išskyrus tai, kas atrodo iš pradžių žvilgsnis, tiesa, kaip gana paslaptingų sintaksė, bet jūs pradėsite pastebėti modeliai gana greitai. Kas mes taip pat padaryti šiandien, tai suteikti jūs su psichikos modelis kai kanoninė, keletas standartinių konstruktai programavimo. Ir tada mes iš tikrųjų gauti savo rankas purvinas su keletą pavyzdžių, taip pat. Taigi, tiems iš jūsų, patogesnis, suprasti, kad šią savaitę ir tada kitą savaitę gali labai gerai būti peržiūrėti tiek. Bet ypač kai įsilaužėlis leidimas Problemos nustatymas 1 išeina į Žinoma tinklapyje penktadienį, aš manau, jūs pamatysite, kad net užpildyti kai per kitą savaitę ar dvi, ruošiniai, jūs pradėsite gauti vis daugiau užginčytos ir susidurti naujų ir naujesnių dalykų. Taigi leiskite erzinti šią programą, išskyrus keletą eilučių vienu metu. Pačiame viršuje, mes turime tai, kas techniškai vadinama Preprocessor direktyva. Tai tik kodo eilutę, kad sako įtraukti į failo turinį, vadinamas standartiniu I / N standartinis įvesties - arba, atsiprašau, standartinis I / O, standartinis įėjimas / išėjimas,. h viduje mano atskira programa. Taigi, kitaip tariant, jei parašiau programa su paprastu teksto redaktoriumi, pavyzdžiui, gedit, paprastesnis atitikmuo kažkas panašaus į "Microsoft Word", kad instrukcija, # include stdio.h, yra tik ketina papasakoti kompiliatorių, patraukti turinys tos kitos bylos, stdio.h, ir įklijuoti juos čia. Dabar, kodėl aš priežiūrą? Ką galima teigti yra viduje šį failą vadinamas stdio.h, kuris yra saugomas kažkur mano kietajame diske, ar tai atveju, kažkur CS50 prietaiso? Kažkas jį ten man. Bet kas iš to? Taip, todėl deklaracija funkcija vadinama printf. Taigi printf primena funkcija, ekranai žodžiai ir simbolių ir numeriai ant ne mano siūlymų ekrane. Bet aš ne rašyti. CS50 nerašė jį. Kažkas metų rašė, ir jie iš esmės davė mums už jį receptą faile vadinamas stdio.h. Taigi, kad pirmoji eilutė tiesiog man suteikia prieigą funkcijoms, kad kažkas rašė metų, tarp kurie printf. Dabar kitą eilutę aš mojuoti MY rankų ir bent iki kitą savaitę. Bet dabar, žinau, kad int main (void) yra iš esmės tai lygiavertis geltona dėlionės gabalas, kai žalia vėliava paspausti. Pasaulį, metų, nusprendė, kad, jei rašote programą kalba vadinamas C pradėdami jūsų programa su linija kad atrodo, kad. Tik apie savaitę laiko, jis bus padaryti jausmas, kas int yra kas tuštumos. Bet dabar, tiesiog galvoti apie tai, nes tai geltona dėlionės gabalas. Dabar toliau, mes turime garbanotais petnešomis po kitu glaudžiai garbanotais petnešomis, taip sakant. Ir mes pamatysime tai visoje programos C, taip pat JavaScript ir PHP. Ir tai tik sutraukti susijusių eilučių kodo. Atvira garbanotas petnešomis iš esmės sako, čia ateina tam tikrą kodą. Ir uždara garbanotas petnešomis, kuris yra pasukti kita kryptimi, tiesiog reiškia, kad viskas už atitinkamas kodas. Taigi sultingas linija tai pirmasis programa yra paskutinis, printf, citata-citatos, hello world. Ir aš vadinamas dalykas tarp citatos, ką paskutinį kartą? Taigi, tai eilutė. Ir eilutė yra tik techniką terminas seka simbolių, žodžių, frazę. Net atskira raidė gali būti dvigubų kabučių. Bet tai nulis seka ar daugiau simbolių. Ukośnikiem-n, nors, atrodo, šiek tiek keista. Bet tai tiesiog reiškia kažką paprasta kompiuteriu. Kas Backslash-n? Naujoji linija. Taigi, tai tik ypatinga seka ženklai, kad pasaulis nusprendė reiškia įdėti eilutės lūžį teisę ten, nes kompiliatorius iš tikrųjų gauti supainioti, paprastai, jei jums labai suprantama, bet neteisingai, tiesiog pradėti pataikyti Įveskite įdėti naujų linijų kodą. Jūs turite būti šiek tiek daugiau aiškiai su kairiniu pasviruoju brūkšniu-n. Ir mes pamatysite ten keletas kitų tokių modelius specialiųjų simbolių. Pavyzdžiui, jei norite leisti savo galvą vaikščioti į kampinį atveju tarkime, kad aš norėjau spausdinti dvigubos kabutės ant ekrano kokios nors priežasties, kad atrodytų būti šiek tiek sudėtinga, tiesa? Nes jei aš įdėti dvigubai citata viduryje "Hello, World" dėl kokių nors priežastis, kodėl, kad atrodo tai gali būti problema? Ji sugenda eilutę. Sudarytojas yra tik programa. Kaip kompiliatoriaus programa yra tik ketina skaityti jūsų kodas viršaus į apačią, kairės į dešinę. Ir jei mato tris kabutes vietoj iš dviejų, jis nesiruošia žinoti jei turite galvoje, kad dalykas, į kairę turėtų būti eilutė, ar dalykas dešinę, arba visa tai. Tai dviprasmiškas, ir tai kas būdinga sudarytojas būtų padaryti, tai tiesiog freak out, ir duoti jums kai klaidos pranešimą ir kad jums susidoroti su šia problema. Taigi, turint omenyje, kad Backslash-n reiškia nauja linijos, kas būtų jūsų instinktai dabar pradėti, jei norite įtraukti kažkas nenormalu kaip dvigubai cituoti viduje apie tai kitaip cituojamas eilutę? Ukośnikiem-dvigubos kabutės. Ir todėl mes matome tai tipo modelis taip pat. Jei norite ką nors šiek tiek keista, jūs pamatysite, kad sprendimai dažnai sekti modelio, ir "Backslash reiškia avarinį seką. Ir tai tiesiog reiškia, kad kažką ypatingo kad mes turime atstovauti kitaip. Kaip kaip jūs atstovauti Backslash, gerai, mes grįžti prie to. Bet atsakymas taip pat yra iš tikrųjų tiek akivaizdus. Taigi tegul dabar pristatyti kai kurie kiti programavimo konstruktai kad matėte nulio. Jūs tikriausiai savaime suprantama jau jei jau nėrė į problema nustatote 0. Bet tegul dabar pristatyti į C sintaksę už tai kitaip gana intuityvus idėjos, bent keletas iš jų. Taigi ši sąlyga sąvoka arba filialas, o anksčiau mes atstovaujama jį kodu, kuris atrodė kaip tai ant nulio kairėje - jei x yra mažesnis nei y, tada pasakyti - o dabar C - leiskite man patobulinti on Paprasčiausiu atveju - mes tiesiog ketinate pasakyti, jei atidaryti skliaustelis, kad kažkas yra tiesa - Būlio išraiška ketina eiti kur sakiau sąlygą - Uždaryti skliaustelis, tada nereikia kas viduje tuos garbanotieji petnešų. Taigi čia taip pat garbanotas petnešos yra lyg subraižyti ųjų U-formos įspūdį. Ar kas viduje šių garbanotieji petnešų. Šiuo atveju velniop velniop. Ir pastebėti tai pirmyn velniop, o ne Atgal nerijos velniop. Persiųsti velniop, nerija, tiems, kurie jau užprogramuotas anksčiau, tiesiog reiškia - tai tik komentaras. Komentaras nėra linija kodo per se. Tai anglų linija, kad jūs, žmogaus, parašiau sau galbūt jums priminti, ką nors padaryti, kad paaiškinti sau, paaiškinti kažkas, ką jūsų kodas daro. Tai tik aprašomasis komentaras. Dabar, žinoma, mes galime turėti dviejų krypčių šakutės ant kelio tiesiog daro tai, trijų pakopų šakutės kelyje daro tai, ir jei ir toliau tai modelis, jūs galite turėti keturių kelią, Penkių krypčių, šešių būdas šakutės kelių, jei jums reikia valdyti, tiesą sakant, kad daug sąlygų. Ir tada pastebėsite lygiagretumo čia - if (sąlyga), else if (sąlyga), ir tik vienas, kad mažai keista yra paskutinis, kuris tik, kad kitur. Bet vėl, tai yra tapatūs, konceptualiai, ką mes padarėme jau, nors sintaksė užtrukti šiek tiek priprasti. Dabar, šiame pavyzdyje yra kai kurie kiti keista sintaksė. Mes matome printf vėl atidaryti skliaustų, ir arti skliaustelis. Ir viduje yra citavo eilutė. Skliausteliuose, tame kontekste printf, eikite į kairę ir teisė į tai, ką? Ką mes aprašome, kad kotiruojamos eilutę kaip apskritai? Taigi tai argumentas. Bet kuriuo metu jūs turite funkcija, pavyzdžiui, printf, ir tada atidaryti skliaustas ir Uždaryti skliaustas ir kažkas viduje tai, ar tai eilutė, arba sveikasis skaičius, ar kas nors kitas, dalykas tarp šių skliausteliuose vadinamas argumentas. Ir argumentas tiesiog veikia Ši funkcija elgesys. Šiuo atveju, tai gana aišku, kaip tai padaryti. x