2 00:00:00,000 --> 00:00:02,470 >> SPEAKER 1: Oletame, kirjutada programm, mis küsib kasutajalt nime ja 3 00:00:02,470 --> 00:00:03,990 maja kolm õpilast. 4 00:00:03,990 --> 00:00:07,300 Aga mitte ainult välja printida oma nimed ja maja ekraan, olgem 5 00:00:07,300 --> 00:00:09,660 selle asemel salvestada et info kettale. 6 00:00:09,660 --> 00:00:14,530 Teisisõnu loome, ütleme, CSV fail, komaga eraldatud väärtuste 7 00:00:14,530 --> 00:00:17,720 mis on tegelikult lihtsalt tekstifaili programmid nagu Excel või numbrid 8 00:00:17,720 --> 00:00:21,690 saab avada ja tõhusalt salvestada need nimed ja majade püsivalt nii, et 9 00:00:21,690 --> 00:00:23,220 saame neid hiljem vaadata. 10 00:00:23,220 --> 00:00:25,960 >> Selleks teeme kõigepealt heita pilk mõned stereotüüp kood, mis ma olen 11 00:00:25,960 --> 00:00:27,650 algas juba. 12 00:00:27,650 --> 00:00:32,380 Pange tähele, et esiteks päisesse üleval on nüüd standard lib.h mis 13 00:00:32,380 --> 00:00:36,710 juhtub, et mõned funktsioonid, mis on seotud esitama I / O, faili sisend ja väljund. 14 00:00:36,710 --> 00:00:39,560 Pange tähele, et ma olen ka tunnistada pidev nimetatakse õpilased - 15 00:00:39,560 --> 00:00:42,380 kõik mütsid - mille väärtus on kõva kodeeritud kolm. 16 00:00:42,380 --> 00:00:45,820 Pange tähele, et nüüd, sees minu peamine programm, ma kuulutatakse massiivi 17 00:00:45,820 --> 00:00:50,270 suurus kolm kasutades, et pidev nimetatakse Õpilasi, kelle liikmed on 18 00:00:50,270 --> 00:00:51,650 kirjuta õpilastele. 19 00:00:51,650 --> 00:00:56,150 >> Meenuta nüüd, et õpilane me määratleda kellel on nimi ja maja mõlemale 20 00:00:56,150 --> 00:01:00,410 mis on stringid kohta see deklaratsioon teeb, dot h. 21 00:01:00,410 --> 00:01:04,680 Nüüd tagasi structs1.c, teate, et ma on silmus siin, et läheb 22 00:01:04,680 --> 00:01:06,750 itereerima nullist kuni kolmeni. 23 00:01:06,750 --> 00:01:10,020 See läheb küsib minult õpilase nimi ja üliõpilaste maja 24 00:01:10,020 --> 00:01:12,310 uuesti ja uuesti ja uuesti. 25 00:01:12,310 --> 00:01:15,620 >> Siis allosas Selle programmi teate, et mul on teine ​​silmus 26 00:01:15,620 --> 00:01:19,970 et läheb tasuta nda õpilase nimi ja nda õpilase maja 27 00:01:19,970 --> 00:01:21,570 sarnaselt ehitatud loop. 28 00:01:21,570 --> 00:01:24,480 Et olla kindel, et me võiksime ühendada need silmad arvesse ainult üks, aga ma tahtsin 29 00:01:24,480 --> 00:01:28,180 mõned segmentide kood pärast arutelu siin. 30 00:01:28,180 --> 00:01:31,920 >> Nüüd vahel neid, silmad, olgem tegelikult on teine, ja see on 31 00:01:31,920 --> 00:01:35,210 eesmärk elus on tegelikult salvestada kõik Nende nimed ja maja, mis on 32 00:01:35,210 --> 00:01:39,810 praegu RAM kettale kujul komadega eraldatud väärtused. 33 00:01:39,810 --> 00:01:42,080 Selleks, et me ei kavatse kasutada kolm uut funktsiooni - 34 00:01:42,080 --> 00:01:47,450 F avatud, F printf ja F lähedal, mis Faili avamiseks printida faili ja 35 00:01:47,450 --> 00:01:48,440 sulgege fail. 36 00:01:48,440 --> 00:01:49,690 Me ei kasuta neid järgmiselt. 37 00:01:49,690 --> 00:01:52,110 38 00:01:52,110 --> 00:01:58,240 >> FAIL, kõik mütsid, mis on mõnevõrra uudishimu C, muutub faili fopen 39 00:01:58,240 --> 00:02:03,020 tsitaat lõppeb ning nüüd nime fail, ütleme, students.CSV, kuid suutsin 40 00:02:03,020 --> 00:02:08,150 nimetavad seda kõige midagi, koma ja nüüd ma olen kavatse määrata ühte w sees 41 00:02:08,150 --> 00:02:09,390 jutumärgid. 42 00:02:09,390 --> 00:02:13,290 W, nagu te võib-olla arvasid juba, tähendab, et fopen peaksid seda faili avada 43 00:02:13,290 --> 00:02:17,360 nimetatakse Students.CSV kirjutamiseks nii et me saame tegelikult säästa 44 00:02:17,360 --> 00:02:19,370 sisu ta. 45 00:02:19,370 --> 00:02:23,080 >> Teeme järgmise kontrollida, kas fail ei ole võrdne null. 46 00:02:23,080 --> 00:02:25,860 Sest kui see on midagi, mida on ilmselt valesti sel juhul me 47 00:02:25,860 --> 00:02:28,340 ei tohiks jätkata proovida printida midagi ta. 48 00:02:28,340 --> 00:02:33,400 Aga kui see ei ole null, siis seestpoolt looksulg ma kinnitada, 49 00:02:33,400 --> 00:02:38,030 alates i võrdub 0 kuni üliõpilased, ja ma lähen 50 00:02:38,030 --> 00:02:40,180 juurdekasvu i iga iteratsiooni. 51 00:02:40,180 --> 00:02:45,750 Ja sees see silmus, ma fprintf et printida faili - 52 00:02:45,750 --> 00:02:47,940 konkreetselt ühte Ma juba avatud - 53 00:02:47,940 --> 00:02:54,650 string, mis näeb välja nagu see% s,% s kurakriips n lähedal tsiteerida. 54 00:02:54,650 --> 00:02:58,790 >> Ja nüüd ma tahan, et ühendada iga need kohahoidjad tegelikud väärtused 55 00:02:58,790 --> 00:03:03,390 õpilase nimi ja maja kasutades dot operaator. 56 00:03:03,390 --> 00:03:10,030 Õpilased sulg i.name õpilased sulg i.house lähedal paren 57 00:03:10,030 --> 00:03:11,230 semikooloniga. 58 00:03:11,230 --> 00:03:16,180 Nüüd alla see silmus, ma olen lihtsalt kutsun kirjutamisel faili, et 59 00:03:16,180 --> 00:03:18,520 lõpuks sulgeda fail. 60 00:03:18,520 --> 00:03:21,360 >> Nüüd kui ma saan selle programmi, ma ei peaks tegelikult näha midagi 61 00:03:21,360 --> 00:03:25,010 ekraan, kuid ma peaks peale jooksu Selle programmi fail nimega 62 00:03:25,010 --> 00:03:29,130 Students.CSV samas kataloogis, et Ma saan käsk, mis peaks 63 00:03:29,130 --> 00:03:32,480 sisaldada eralda eraldati väärtuste nimekirja. 64 00:03:32,480 --> 00:03:34,790 Võtame vaata. 65 00:03:34,790 --> 00:03:41,690 >> Tee structs 1 /. Structs1 õpilase Nime, oletame David, 66 00:03:41,690 --> 00:03:43,140 ta elab Mather. 67 00:03:43,140 --> 00:03:46,890 Student nimi, ütleme, Lauren, ta saab elada Leverett. 68 00:03:46,890 --> 00:03:50,800 Student nimi, ütleme, Rob, ta elab Kirkland. 69 00:03:50,800 --> 00:03:54,050 Nüüd jälle, nagu oodatud, ei kuvata on juhtunud, kuid lubage mul 70 00:03:54,050 --> 00:03:58,790 minna käsureale ja tüüp g edit students.CSV loodab, et 71 00:03:58,790 --> 00:04:00,850 et fail tegelikult olemas. 72 00:04:00,850 --> 00:04:07,010 >> Gedit students.CSV tulla ja tõepoolest, teade, et fail, mis sisaldab ainult 73 00:04:07,010 --> 00:04:11,320 teksti, kuid teksti komadega eraldatult iga valdkonna jaoks, tõepoolest olemas. 74 00:04:11,320 --> 00:04:14,530 Ja kui olime kasutades, ei CS50 aparaat, kuid rohkem tuttav Mac või 75 00:04:14,530 --> 00:04:18,080 PC, selgub, et me tõepoolest avada CSV faili rohkem 76 00:04:18,080 --> 00:04:20,400 tuttav programm nagu Excel või numbrid. 77 00:04:20,400 --> 00:04:22,906