SPEAKER 1: Ejja jikteb programm li iqajjem l-utent għall-ismijiet u djar ta 'tliet studenti. Iżda pjuttost milli biss print out tagħhom ismijiet u djar għall-iskrin, ejja minflok tiffranka dik l-informazzjoni lill disk. Fi kliem ieħor, ejja joħolqu, ngħidu aħna, CSV file, għall-valuri separati virgola, li huwa attwalment biss fajl test li programmi bħal Excel jew Numri tista 'tiftaħ, u effettivament jiffranka dawk ismijiet u djar permanenti sabiex nistgħu jirreveduhom aktar tard. Biex tagħmel dan, ejja ewwel tagħti ħarsa lejn xi kodiċi boilerplate li stajt beda bil diġà. Avviż ewwel li fost l-intestaturi top up issa huwa lib.h standard li jiġri li jkollhom xi funzjonijiet relatati għall-fajl I / O, input fajl u output. Avviż li stajt ddikjarat ukoll kostanti imsejjaħ studenti - fil caps kollha - li l-valur huwa hard kkodifikati kif tlieta. Avviż issa li ġewwa ta 'prinċipali tiegħi programm, jien tiddikjara firxa ta ' daqs tliet jużaw dak kostanti imsejħa STUDENTI kull tal-membri li huwa ta ' tip istudenti. Recall issa li student aħna ser jiddefinixxu bħala li jkollhom isem u dar kemm ta ' li huma kordi bħala kull din dikjarazzjoni jordna, dot h. Issa lura fil structs1.c, avviż li jien jkunu a għal loop hawnhekk li għaddej biex jtenni minn żero sa tlieta. Huwa ser pront me għal tal student isem u d-dar ta 'student ġdid u għal darb'oħra u għal darb'oħra. Imbagħad fil-qiegħ ta 'dan il-programm, avviż li għandi ieħor għall loop li għaddej biex ħielsa l-istudent ith tal- isem u d-dar l-istudent ith fil a simili mibni loop. Biex tkun żgur, nistgħu jgħaqqdu dawk loops għal waħda biss, imma jien ridt li għandhom xi segmenti distinti ta 'kodiċi għall-fini ta 'diskussjoni hawn. Issa fl bejn dawk għall-linji, ejja attwalment ikollhom ieħor, u dan wieħed skop fil-ħajja huwa li attwalment jiffranka kollha ta 'dawn l-ismijiet u djar li huma attwalment fis-RAM disk fil-forma ta 'valuri separati virgola. Biex tagħmel dan, aħna qed tmur għall-użu tliet funzjonijiet ġodda - F miftuħa, F printf, u qrib F, li jiftaħ fajl, jistampaw għal fajl, u tagħlaq fajl. Nistgħu jużawhom kif ġej. FAJL, fil-limiti kollha, li hija kemmxejn ta ' kurżità fis-C, FILE gets fopen unquote kwotazzjoni u issa isem għall- fajl, jiġifieri, students.CSV, imma I jistgħu sejħa hija xi ħaġa aktar, comma u issa jien ser tispeċifika waħda w ġewwa ta 'kwotazzjonijiet doppja. W, kif inti tista 'diġà guessed, ifisser li fopen għandha tiftaħ dan il-fajl sejjaħ Students.CSV għall-kitba sabiex li nistgħu attwalment tiffranka xi kontenut għaliha. Ejja kontroll li jmiss jekk fajl mhuwiex ugwali għal null. Għaliex jekk huwa, xi ħaġa għandha probabbilment marret ħażin f'liema każ aħna m'għandux jipproċedi biex tipprova li jistampaw xejn magħha. Imma jekk mhuwiex null, allura ġewwa tal- braces kaboċċi jien ser jtenni minn i egwali għal 0 fuq sa STUDENTI, u jien ser inkrement i fuq kull iterazzjoni. U ġewwa ta 'dan loop, I vais fprintf sabiex jistampaw għal fajl - speċifikament l-waħda I diġà miftuħa - string li tidher bħal dan% s,% s backslash n quote qrib. U issa nixtieq li plagg fil lil kull wieħed dawk placeholders il-valuri attwali isem ta 'student u dar jużaw l-operatur dot. I.name istudenti bracket, studenti paren qrib i.house bracket semi-colon. Issa hawn taħt dan għal loop, jien sempliċiment ser sejħa fclose tal-fajl sabiex li finalment tagħlaq il-fajl. Issa meta I run dan il-programm, I m'għandhomx attwalment tara xejn fuq il- screen, imma I għandu jkollhom wara running dan il-programm fajl imsejjaħ Students.CSV fl-istess direttorju li I imexxu l-kmand f'dak għandhom fihom comma separati lista ta 'valuri. Ejja tagħti ħarsa. Jagħmlu structs 1. / Istudent structs1 tal isem, ejja ngħidu David, hu ser jgħixu fl Mather. Isem istudent, ejja ngħidu, Lauren, hi ser jgħixu fl Leverett. Isem istudent, ejja ngħidu, Rob, hu ser jgħixu fil Kirkland. Issa, għal darb'oħra, kif mistenni, xejn jidher li ġara, iżda let me jimxi 'l quddiem fil-pront kmand u t-tip g jeditjaw students.CSV fil jittama li dan il-fajl tabilħaqq jeżisti. Gedit students.CSV ENTER, u tabilħaqq, avviż li fajl li fih purament test, iżda test separati mill-virgoli għal kull qasam, tabilħaqq jeżisti. U jekk aħna kienu jużaw, mhux il-CS50 appliance, iżda Mac aktar familjari jew PC, jirriżulta li nistgħu tabilħaqq tiftaħ dan il-fajl CSV ma 'aktar programm familjari bħal Excel jew Numri.