SPEAKER 1: Pojďme napsat program, který vyzve uživatele k zadání jména a domy tří studentů. Ale spíše než jen tisknout jejich Jména a domy k obrazovce, pojďme místo uložení těchto informací na disk. Jinými slovy, pojďme vytvořit, řekněme, CSV soubor, na čárkou oddělených hodnot, což je vlastně jen textový soubor, který programy, jako je Excel nebo čísla můžete otevřít, a účinně zachránit ty, Jména a domy trvale tak, aby my je můžete prohlédnout později. Chcete-li tak učinit, pojďme se nejprve podívat na některé často používaný kód, který jsem začal již. Všimněte si, že první mezi záhlaví nahoru nahoru je nyní standard lib.h, které se stane, že některé funkce související na soubor I / O, vstup a výstup souborů. Všimněte si, že jsem také prohlásil, konstanta s názvem STUDENTI - ve všech čepice - jehož hodnota je pevný kódované jako tři. Všimněte si nyní, že vnitřek můj hlavní Program, jsem prohlásil řadu velikost tři použití této konstanty zvané STUDENTI každý z členů, jejichž je typ studentů. Připomeňme si nyní, že student, budeme definovat jak mít název a dům oba které jsou řetězce dle této Prohlášení pokyn, dot h. Nyní zpět v structs1.c, všimněte si, že jsem se pro smyčce tady, že se to přecházet od nuly do tří. Bude to mě výzva pro studenta Název a student dům Znovu a znovu a znovu. Pak se v dolní části tohoto programu, Všimněte si, že mám jiný pro smyčce že se to uvolnit i-tého studenta Název a i-tého studenta dům podobně konstruovány smyčky. Chcete-li mít jistotu, mohli bychom spojit ty smyčky na jen jeden, ale chtěl jsem, aby mají některé odlišné segmenty kódu kvůli diskuzi zde. Nyní se mezi ty, pro smyčky, pojďme ve skutečnosti mají jiný, a tenhle je Smyslem života je skutečně ušetřit všechny z těchto jmen a domů, které jsou V současné době v paměti RAM na disk ve formě z čárkou oddělených hodnot. Chcete-li tak učinit, budeme používat Tři nové funkce - F otevřená, F printf a F zavřít, který otevření souboru, tisk do souboru, a zavřete soubor. Můžeme je použít takto. FILE, ve všech velkých písmenech, což je poněkud zvědavost v C, soubor dostane fopen citace konec citátu a nyní název soubor, řekněme, students.CSV, ale nešlo říkají nejvíce cokoliv, čárka a teď jsem bude specifikovat jedno w uvnitř v uvozovkách. W, jak jste si mohl myslet už, Znamená to, že fopen by se měla otevřít tento soubor volal Students.CSV pro psaní, takže že můžeme skutečně ušetřit nějaký obsah do ní. Pojďme Další zkontrolovat, zda soubor není rovno null. Protože jestli je to, co má asi pokazilo v tomto případě jsme se Neměli byste pokračovat, aby se pokusili tisknout cokoliv na ni. Ale pokud to není null, pak uvnitř složené závorky Jdu k iteraci od i rovná 0 až na STUDENTY, a budu zvýšit i na každé iteraci. A uvnitř této smyčky, budu fprintf tak, aby tisk do souboru - konkrétně ten Už jsem otevřel - řetězec, který vypadá takto% s,% s zpětné lomítko n zavřít citace. A teď chci připojit ke každému tyto zástupné symboly skutečné hodnoty jména studenta a dům pomocí operátoru tečka. Studenti držák i.name, studenti Držák i.house zavřít závorka středník. Nyní pod tímto pro smyčce, já jsem prostě Zavolám fclose souboru tak, aby nakonec zavřete soubor. Teď, když jsem spustit tento program, měl bych to vlastně nic vidět na obrazovce, ale měl jsem po spuštění tento program soubor s názvem Students.CSV ve stejném adresáři, který I spustit příkaz v tom, že by obsahuje čárku oddělený seznam hodnot. Pojďme se podívat. Udělat structs 1. / Structs1 studenta jméno, řekněme David, že bude žít v Mather. Jméno studenta, řekněme, Lauren, ona bude žít v Leverett. Jméno studenta, řekněme, Rob, že bude žít v Kirkland. Nyní, opět, jak se očekávalo, se nic neobjeví aby se stalo, ale dovolte mi, abych pokračovat na příkazovém řádku a typu g upravit students.CSV v naději, že že soubor skutečně existuje. Gedit students.CSV ENTER, a opravdu, Všimněte si, že soubor, který obsahuje pouze textu, ale text oddělený čárkami pro každé pole, skutečně existuje. A když jsme používali, ne CS50 zařízení, ale známější Mac nebo PC, ukazuje se, že bychom mohli opravdu otevřít tento soubor CSV s více seznámit program, jako je Excel nebo čísel.