1 00:00:00,000 --> 00:00:07,810 2 00:00:07,810 --> 00:00:09,840 >> JASON Hirschhorn: Welcome, kulħadd, sa Ġimgħa 6. 3 00:00:09,840 --> 00:00:14,790 Ninsab kuntenta li tara inti kollha ħaj u tajjeb wara Quiz 0, għaliex naf li 4 00:00:14,790 --> 00:00:15,810 kien daqsxejn mhux maħduma. 5 00:00:15,810 --> 00:00:18,370 Iżda Thankfully, inti kollha għamlet oerhört ukoll. 6 00:00:18,370 --> 00:00:21,680 U hekk dan huwa wunderbare. 7 00:00:21,680 --> 00:00:25,840 Jekk int fis-sezzjoni tiegħi, stajt mogħtija aktar inti back kwizzijiet tiegħek diġà. 8 00:00:25,840 --> 00:00:28,050 >> Koppja ta 'you, jien laqgħa wara klassi. 9 00:00:28,050 --> 00:00:32,360 U jekk int student estensjoni u ma rċevejtx kwizz tiegħek lura 10 00:00:32,360 --> 00:00:35,490 għadhom, TF tiegħek huwa probabbilment jaħdmu fuqu u gradazzjoni, u se tiksbu lura 11 00:00:35,490 --> 00:00:36,490 lilek dalwaqt. 12 00:00:36,490 --> 00:00:39,650 Allura studenti estensjoni tiegħi li huma jaraw dritt issa - nisperaw jgħixu - 13 00:00:39,650 --> 00:00:42,880 I se tikseb kwizzijiet tiegħek ftit ukoll. 14 00:00:42,880 --> 00:00:45,670 >> Aġenda tagħna għal-lum hija kif ġej. 15 00:00:45,670 --> 00:00:50,170 L-ewwel, aħna qed tmur biex jmorru fuq xi riżorsi li CS50 jipprovdi lilek. 16 00:00:50,170 --> 00:00:54,590 Aħna qed tmur biex jmorru fuq Quiz 0 jmiss, u I ser tirrispondi xi mistoqsijiet ħadd 17 00:00:54,590 --> 00:00:57,360 għandha madwar problemi partikolari. 18 00:00:57,360 --> 00:01:02,050 U mbagħad, aħna se jkunu għaddejjin fuq file I / O u l-problema stabbiliti 5. 19 00:01:02,050 --> 00:01:07,360 Dawk aħħar żewġ suġġetti se jieħu l-massa tat-taqsima illum. 20 00:01:07,360 --> 00:01:11,680 >> Nressaq din il-lista up kull ġimgħa bħala tfakkira lilek kollha, iżda tal-qalba 21 00:01:11,680 --> 00:01:14,650 taqsima, aħna biss 90 minuta - aħna mhumiex kapaċi tkopri dak kollu li I 22 00:01:14,650 --> 00:01:16,280 imħabba li tkopri għalik guys. 23 00:01:16,280 --> 00:01:21,170 Iżda aħna ma jkollhom ton ta 'riżorsi għall- inti timxi fuq kif inti isiru jafu 24 00:01:21,170 --> 00:01:24,000 il-materjal u x-xogħol permezz ta ' problema tiegħek settijiet. 25 00:01:24,000 --> 00:01:30,810 >> A tfakkira li għandi online test kaxxa, imwaqqaf għalik biex jimlew jekk inti 26 00:01:30,810 --> 00:01:33,250 xi feedback għalija, kemm pożittivi u kemm 27 00:01:33,250 --> 00:01:35,180 kostruttiv, dwar it-taqsima. 28 00:01:35,180 --> 00:01:38,600 Dan URL tinsab dritt isfel hawn. 29 00:01:38,600 --> 00:01:43,250 Allura jekk jogħġbok, tieħu mument jekk għandek xi feedback, jekk waqt it-taqsima, 30 00:01:43,250 --> 00:01:48,030 jew wara, jew wara li inti tara l-video online, li tagħti me feedback tiegħek. 31 00:01:48,030 --> 00:01:52,100 I verament japprezzaw kwalunkwe u kollha ta 'dan. 32 00:01:52,100 --> 00:01:55,730 >> Allura stajt ġiet wara konverżazzjonijiet żgħar bil-lott ta tiegħi 33 00:01:55,730 --> 00:01:59,350 l-istudenti matul il-ġimgħa - kif I idejn kwizzijiet lura, jitkellem dwar il- 34 00:01:59,350 --> 00:02:01,480 kors, jaraw kif qed tagħmel. 35 00:02:01,480 --> 00:02:05,120 U tema waħda għandha toħroġ fuq u aktar fil jitkellem dwar - fil 36 00:02:05,120 --> 00:02:05,660 partikolari - 37 00:02:05,660 --> 00:02:07,710 problema settijiet. 38 00:02:07,710 --> 00:02:13,090 U jien inkapsulati dik it-tema fuq il-bord dritt issa. 39 00:02:13,090 --> 00:02:16,630 >> Essenzjalment, hemm differenza bejn tidwir fil xi ħaġa li hija 40 00:02:16,630 --> 00:02:19,590 isir b'mod korrett u xi ħaġa li qed isir sew. 41 00:02:19,590 --> 00:02:22,920 Ħafna nies kienu jagħmlu meraviljuż f'termini ta 'korrettezza - 42 00:02:22,920 --> 00:02:25,460 5 jew 4 dwar psets kollha. 43 00:02:25,460 --> 00:02:27,930 Ħafna nies qed jersqu dawk l-ħin kollu. 44 00:02:27,930 --> 00:02:31,150 >> Madankollu, sempliċiment għaliex inti ghamilt xi ħaġa tajba ma jfissirx li inti ħadthom 45 00:02:31,150 --> 00:02:34,450 isir xi ħaġa elegantly, jew effiċjenti, jew bħala nadif kif inti 46 00:02:34,450 --> 00:02:35,270 seta 'jsir. 47 00:02:35,270 --> 00:02:36,790 U dan huwa dak id-disinn - 48 00:02:36,790 --> 00:02:39,230 u għal grad, stil inqas - 49 00:02:39,230 --> 00:02:40,450 assi huma għall. 50 00:02:40,450 --> 00:02:45,130 So I am imbuttar inti kollha, u TFS oħra huma imbuttar inti guys, biex mhux biss dawran 51 00:02:45,130 --> 00:02:48,320 fl-affarijiet li huma korretti, iżda dawran fl-affarijiet li huma kodifikati tajjeb. 52 00:02:48,320 --> 00:02:53,060 >> Ma tagħmel bla bżonn għall-loops, ma terġa 'tikkalkula varjabbli jekk 53 00:02:53,060 --> 00:02:53,800 inti ma għandekx. 54 00:02:53,800 --> 00:02:58,520 Per eżempju, tħares lura għall-problema stabbiliti 4, meta jqiegħdu l-briks fuq il- 55 00:02:58,520 --> 00:03:03,070 screen, kull ringiela - kull briks fil- ringiela mogħtija għandha l-istess y-jikkoordinaw - 56 00:03:03,070 --> 00:03:04,390 l-istess għoli jikkoordinaw. 57 00:03:04,390 --> 00:03:07,930 >> Allura li y-jikkoordinaw ma kellhomx bżonn jkun ikkalkulat ġewwa l-interjuri 58 00:03:07,930 --> 00:03:11,070 nested GĦALL loop li inti probabbli li tintuża biex tqiegħed dawn briks fuq l-iskrin. 59 00:03:11,070 --> 00:03:14,030 Hija biss għandha tiġi kkalkolata kull darba li inti switched ringiela, jew 60 00:03:14,030 --> 00:03:15,200 mċaqalqa isfel filliera. 61 00:03:15,200 --> 00:03:19,760 Allura ngħid jekk hemm 10 bricks fil- ringiela, kull briks jista 'jkollhom l-istess 62 00:03:19,760 --> 00:03:22,260 y-jikkoordina, u li y jikkoordinaw tista 'biss tiġi kkalkulata 63 00:03:22,260 --> 00:03:23,550 darba għal dawk kollha. 64 00:03:23,550 --> 00:03:27,810 >> Dan ma jeħtieġx li jiġu kkalkulati 10 drabi, lanqas ma dik il-ħtieġa ta 'kalkolu 65 00:03:27,810 --> 00:03:30,220 li jiġri fil-attwali funzjoni tas-sejħa - 66 00:03:30,220 --> 00:03:33,020 l-sejħa l-ġdida funzjoni gracked. 67 00:03:33,020 --> 00:03:37,820 Allura jekk dan kien ftit konfuża għall- int, aktar ġeneriku, l-affarijiet li 68 00:03:37,820 --> 00:03:40,730 m'għandhomx bżonn li jiġri kull darba waħda inti tmur permezz loop GĦALL m'għandhiex tkun 69 00:03:40,730 --> 00:03:42,900 titqiegħed ġewwa s loop GĦALL, u m'għandhiex jiġri kull darba li inti tmur 70 00:03:42,900 --> 00:03:44,080 permezz tal-linja GĦALL. 71 00:03:44,080 --> 00:03:49,270 >> Eżempju ieħor disinn tajjeb rajna fil-Ġimgħa 3 għall-15, inti tista 'żżomm 72 00:03:49,270 --> 00:03:50,500 track tal-żero. 73 00:03:50,500 --> 00:03:53,600 Allura meta inti initialize-bord, inti tiffranka - fil-varjabbli globali, forsi - 74 00:03:53,600 --> 00:03:56,140 il-x u y-jikkoordinaw tal-żero. 75 00:03:56,140 --> 00:03:57,520 U mbagħad kull meta inti - 76 00:03:57,520 --> 00:04:00,310 fil-funzjoni pass tiegħek, kull meta inti tagħmel mossa suċċess, inti taġġorna l- 77 00:04:00,310 --> 00:04:02,040 post tal-żero. 78 00:04:02,040 --> 00:04:06,240 >> Dan jiffranka inti milli jkollhom jagħmlu nested għal-linji biex tfittex permezz tal- 79 00:04:06,240 --> 00:04:10,700 abbord kull darba fil-funzjoni pass tiegħek u jsibu l-żero, jew isibu l-madum, 80 00:04:10,700 --> 00:04:12,460 u mbagħad tiċċekkja x'hemm li jmiss lilu. 81 00:04:12,460 --> 00:04:16,329 Minflok, inti għandek l-post ta 'l- żero, inti tista 'biss ħarsa fuq, taħt, 82 00:04:16,329 --> 00:04:21,160 u lejn ix-xellug u tal-lemin ta 'dan, isibu il-maduma inti kienu qed ifittxu. 83 00:04:21,160 --> 00:04:24,970 >> Allura f'termini tal-programmi aħna qed miktub, dawn qed qatt kbir biżżejjed 84 00:04:24,970 --> 00:04:28,580 li xi wħud minn dawn id-deċiżjonijiet tad-disinn huma verament se jfixklu tiegħek 85 00:04:28,580 --> 00:04:31,670 programm, jew jagħmilha run aktar bil-mod, jew forsi saħansitra jispiċċaw tal-memorja. 86 00:04:31,670 --> 00:04:35,030 Iżda aħna qed għadhom imbuttar inti guys li tikteb bħala eleganti u 87 00:04:35,030 --> 00:04:36,450 kodiċi effiċjenti possibbli. 88 00:04:36,450 --> 00:04:39,910 >> Mela jekk inti tispiċċa bil-miktub affarijiet li jkollhom akbar b'mod sinifikanti 89 00:04:39,910 --> 00:04:44,660 ambitu, dawn se jkunu miktuba bil tajba disinn minbarra li jkunu korretti. 90 00:04:44,660 --> 00:04:46,300 Allura numru ta 'għandek miġjuba dik out. 91 00:04:46,300 --> 00:04:48,560 Dik xi ħaġa li aħna qed tfittex - xi ħaġa li aħna qed tmur biex tkompli 92 00:04:48,560 --> 00:04:49,840 push inti guys fuq. 93 00:04:49,840 --> 00:04:52,460 >> Jekk qatt ikollok xi mistoqsijiet dwar l- disinn tal-programm tiegħek, tħossok liberu 94 00:04:52,460 --> 00:04:56,870 biex jilħqu lili, u jien kuntent li walk permezz tal-programm tiegħek miegħek, 95 00:04:56,870 --> 00:05:01,320 u l-punt barra xi wħud mill-disinn deċiżjonijiet li inti magħmula, u jagħtuk xi 96 00:05:01,320 --> 00:05:06,240 suġġerimenti dwar kif jagħmlu anki disinn deċiżjonijiet aħjar. 97 00:05:06,240 --> 00:05:08,870 >> Allura aħna qed tmur biex jimxu fuq biex jitkellem dwar Quiz 0. 98 00:05:08,870 --> 00:05:11,300 Qabel nagħmlu dan, ma xi ħadd xi mistoqsijiet dwar dak li 99 00:05:11,300 --> 00:05:14,252 Stajt koperti s'issa? 100 00:05:14,252 --> 00:05:21,500 >> [ISTORBJU rustling] 101 00:05:21,500 --> 00:05:22,750 >> JASON Hirschhorn: Seba sekondi. 102 00:05:22,750 --> 00:05:23,250 OK. 103 00:05:23,250 --> 00:05:24,970 Ejja nitkellmu dwar Quiz 0 għal bit. 104 00:05:24,970 --> 00:05:26,700 Ħafna minnkom Quiz tiegħek 0 dahar. 105 00:05:26,700 --> 00:05:29,820 Jekk inti ma, nisperaw tiftakar hija daqsxejn. 106 00:05:29,820 --> 00:05:34,770 Imma jekk inti ħadt Quiz 0, allura inti wkoll ikollu aċċess għat-PDF online 107 00:05:34,770 --> 00:05:35,890 l-soluzzjonijiet tal-kampjun. 108 00:05:35,890 --> 00:05:39,480 >> Ħadd ma jkollu xi mistoqsijiet qabel aħna jaqbżu fil-materjal tal-ġimgħa dwar 109 00:05:39,480 --> 00:05:41,520 problema partikolari fuq Quiz 0 - 110 00:05:41,520 --> 00:05:44,630 għaliex it-tweġiba hija għalxiex? 111 00:05:44,630 --> 00:05:47,255 Huwa xi ħadd konfuż dwar xi ħaġa? 112 00:05:47,255 --> 00:05:50,230 Anke jekk inti sibt il-problema dritt, imma biss tixtieq lili biex jispjegaw daqsxejn 113 00:05:50,230 --> 00:05:52,640 aktar, jien kuntent li jagħmlu dan issa. 114 00:05:52,640 --> 00:05:57,800 >> So I talbu inti guys biex jiġu ppreparati ma 'xi 115 00:05:57,800 --> 00:05:59,440 ħsibijiet dwar Quiz 0. 116 00:05:59,440 --> 00:06:02,660 Hekk li tixtieq tikseb us beda bil mistoqsija jew 117 00:06:02,660 --> 00:06:04,655 jikkummentaw dwar Quiz 0? 118 00:06:04,655 --> 00:06:07,435 119 00:06:07,435 --> 00:06:10,410 >> [Rustling PAPER] 120 00:06:10,410 --> 00:06:11,470 >> JASON Hirschhorn: Mhux kulħadd għamlet perfettament. 121 00:06:11,470 --> 00:06:12,720 So I know [laughs] 122 00:06:12,720 --> 00:06:15,950 hemm bżonn li jkun hemm xi mistoqsijiet dwar Quiz 0. 123 00:06:15,950 --> 00:06:27,940 124 00:06:27,940 --> 00:06:28,590 OK. 125 00:06:28,590 --> 00:06:29,210 Iva. 126 00:06:29,210 --> 00:06:29,600 Ompica. 127 00:06:29,600 --> 00:06:30,520 >> OMPICA: Numru 10. 128 00:06:30,520 --> 00:06:33,560 >> JASON Hirschhorn: Numru 10. 129 00:06:33,560 --> 00:06:35,400 Liema wieħed kien numru 10? 130 00:06:35,400 --> 00:06:35,840 >> OMPICA: Il - 131 00:06:35,840 --> 00:06:36,420 >> JASON Hirschhorn: I haven't - 132 00:06:36,420 --> 00:06:37,670 >> OMPICA: Il jinkludu - 133 00:06:37,670 --> 00:06:40,060 134 00:06:40,060 --> 00:06:42,180 >> JASON Hirschhorn: Numru 10 kienet tmien biex i - miktub tmienja biex i? 135 00:06:42,180 --> 00:06:42,980 >> OMPICA: Yeah. 136 00:06:42,980 --> 00:06:43,630 >> JASON Hirschhorn: OK. 137 00:06:43,630 --> 00:06:47,390 Allura mistoqsija oħra jista 'jkollok kien staqsa am I prescient? 138 00:06:47,390 --> 00:06:48,630 It-tweġiba hija iva. 139 00:06:48,630 --> 00:06:52,060 Fit-taqsima qabel l-kwizz, I talab inti guys għall-kodiċi kemm Sterling u 140 00:06:52,060 --> 00:06:52,980 tmienja għal i. 141 00:06:52,980 --> 00:06:54,770 Kemm minnhom ġara jidhru fuq il-kwizz. 142 00:06:54,770 --> 00:06:57,510 Hekk nisperaw, int titħallas attenzjoni għal dan. 143 00:06:57,510 --> 00:07:02,520 >> U jekk kellek, allura inti jkollok probabbilment isir ukoll fuq dawk iż-żewġ. 144 00:07:02,520 --> 00:07:06,030 Imma tmienja li i, aħna ma attwalment kodiċi fil-klassi, iżda kienet, għal darb'oħra, 145 00:07:06,030 --> 00:07:07,500 talab fuq il-kwizz. 146 00:07:07,500 --> 00:07:13,270 Allura koppja ta 'affarijiet li tieħu jinnota waqt il-kodifika tmienja għal i. 147 00:07:13,270 --> 00:07:17,320 L-ewwel ħaġa, kull l-kwistjoni, kienet li għandek bżonn biex jiċċekkjaw jekk l-sekwenza 148 00:07:17,320 --> 00:07:20,300 kien ugwali għal null. 149 00:07:20,300 --> 00:07:28,060 >> A nies koppja ppruvaw biex jiċċekkjaw aktar tard fil-programm jekk i bracket kien i - 150 00:07:28,060 --> 00:07:30,940 hekk karattru speċifiku li string - kien ugwali għal null. 151 00:07:30,940 --> 00:07:35,600 Imma ftakar, li null huwa essenzjalment - huwa tajjeb li wieħed jaħseb ta ' 152 00:07:35,600 --> 00:07:39,100 null bħala pointer zero - pointer għal żero - 153 00:07:39,100 --> 00:07:40,920 someplace fil-memorja fejn int qatt ma tista 'aċċess. 154 00:07:40,920 --> 00:07:44,730 >> Mela jekk xi ħaġa hija ugwali għal null, inti taf li ma ġiex initialized, 155 00:07:44,730 --> 00:07:46,430 jew hemm xejn hemmhekk. 156 00:07:46,430 --> 00:07:50,950 Allura s hija stilla char, s i bracket huwa char. 157 00:07:50,950 --> 00:07:57,410 Għalhekk jagħmel sens li tqabbel i li null, iżda mhux i bracket i li null. 158 00:07:57,410 --> 00:07:59,390 Iżda għal darb'oħra - għalhekk ma kienx l-ewwel ħaġa li inti kienu suppost tagħmel - 159 00:07:59,390 --> 00:08:03,510 jivverifika sabiex ikun żgur li inti fil-fatt ltqajna string reali. 160 00:08:03,510 --> 00:08:08,020 >> Sussegwentement, inti riedu li jmorru permezz kull karattru fis-sekwenza. 161 00:08:08,020 --> 00:08:12,500 U hekk li tkun bħal parentesi s i, per eżempju, jekk i huwa iterator tiegħek. 162 00:08:12,500 --> 00:08:17,250 U jieħdu dan il-karattru, u jiksbu valur attwali tiegħu. 163 00:08:17,250 --> 00:08:21,800 Ikollok maħżuna bħala char, iżda il-valur ASCII għal żero - 164 00:08:21,800 --> 00:08:23,010 żero bħala karattru - 165 00:08:23,010 --> 00:08:25,450 ma tkunx attwalment n-numru sħiħ żero. 166 00:08:25,450 --> 00:08:28,700 Huwa xi numru ieħor li inti tista ' tfittex up fit-tabella ASCII. 167 00:08:28,700 --> 00:08:30,790 >> Allura mod wieħed biex jikkoreġu għal dan - probabbilment l-aħjar mod biex tikkoreġi għall- 168 00:08:30,790 --> 00:08:33,760 li - huwa naqqas minnha il-valur karattru - 169 00:08:33,760 --> 00:08:35,140 żero bħala karattru. 170 00:08:35,140 --> 00:08:38,490 Kwotazzjoni waħda Allura minus, żero, kwotazzjoni wieħed ieħor. 171 00:08:38,490 --> 00:08:44,620 Li se jieħdu kwalunkwe numru għandek bħala char, u ġġibu ugwali għal 172 00:08:44,620 --> 00:08:46,720 in-numru bħala numru sħiħ attwali. 173 00:08:46,720 --> 00:08:50,300 >> U li hija simili ħafna għall-metodu ħafna nies ħadu fil- 174 00:08:50,300 --> 00:08:52,800 problema sett 2, bl Caesar u Viginere - 175 00:08:52,800 --> 00:08:55,160 dawk ciphers, meta inti kienu jduru magħhom. 176 00:08:55,160 --> 00:08:59,210 Allura wara ikollok bħala numru minn żero għal disgħa, allura - jiddependi fuq 177 00:08:59,210 --> 00:09:02,750 fejn din tmur fin-numru aħħari - għandek bżonn biex immoltiplika lilha 178 00:09:02,750 --> 00:09:04,120 minn qawwa ta '10. 179 00:09:04,120 --> 00:09:07,340 >> Xi nies mċaqalqa mid-dahar għall- quddiem, u moltiplikata l-individwu 180 00:09:07,340 --> 00:09:08,940 Numru minn setgħa ta '10. 181 00:09:08,940 --> 00:09:11,160 Xi nies mċaqalqa minn l quddiem għal wara - 182 00:09:11,160 --> 00:09:14,430 u għalhekk ħa l-ogħla numri tordna ewwel - 183 00:09:14,430 --> 00:09:18,190 u jiffranka dawk fil- varjabbli counter globali. 184 00:09:18,190 --> 00:09:20,880 U mbagħad kull darba permezz tal GĦALL loop, timmultiplika din ġgant globali 185 00:09:20,880 --> 00:09:25,640 kontro varjabbli minn 10, biex jagħmlu ispazju għall-char jmiss. 186 00:09:25,640 --> 00:09:28,750 >> Allura li kien ftit konfuża mingħajr me miktub fuq il-bord. 187 00:09:28,750 --> 00:09:31,550 Iżda l-soluzzjoni tal-kampjun huwa disponibbli lilek. 188 00:09:31,550 --> 00:09:32,870 Iżda dawk kienu l-affarijiet kbar aħna kienu qed ifittxu. 189 00:09:32,870 --> 00:09:36,400 Wkoll kontroll biex tiżgura li kull karattru individwali kienet tabilħaqq 190 00:09:36,400 --> 00:09:39,780 karattru bejn żero u disa ', u mhux xi karattru ieħor, bħal A, 191 00:09:39,780 --> 00:09:41,160 per eżempju. 192 00:09:41,160 --> 00:09:43,150 >> Dawk kienu l-affarijiet konna qed ifittxu f'dak kwistjoni. 193 00:09:43,150 --> 00:09:46,510 194 00:09:46,510 --> 00:09:47,980 Does li iwieġeb il-mistoqsija tiegħek? 195 00:09:47,980 --> 00:09:49,320 >> OMPICA: Yeah. 196 00:09:49,320 --> 00:09:50,240 >> JASON Hirschhorn: OK. 197 00:09:50,240 --> 00:09:53,940 Hemm xi mistoqsijiet oħra dwar Quiz 0? 198 00:09:53,940 --> 00:09:55,440 What about kompilazzjoni? 199 00:09:55,440 --> 00:09:56,740 Kulħadd kompilazzjoni dritt? 200 00:09:56,740 --> 00:09:58,370 Nru. 201 00:09:58,370 --> 00:09:58,840 Kien hemm - 202 00:09:58,840 --> 00:10:01,010 [Laughs] 203 00:10:01,010 --> 00:10:03,265 Xi mistoqsijiet dwar l- proċess kumpilazzjoni? 204 00:10:03,265 --> 00:10:06,050 205 00:10:06,050 --> 00:10:06,966 Ara naqra. 206 00:10:06,966 --> 00:10:11,090 >> [Rustling PAPER] 207 00:10:11,090 --> 00:10:11,520 >> JASON Hirschhorn: Iva. 208 00:10:11,520 --> 00:10:11,700 Michael. 209 00:10:11,700 --> 00:10:14,140 >> MICHAEL: Huwa numru 7 - każwali? 210 00:10:14,140 --> 00:10:16,500 >> JASON Hirschhorn: Numru 7. 211 00:10:16,500 --> 00:10:20,670 Numru 7 kienet tikseb numru sħiħ każwali. 212 00:10:20,670 --> 00:10:21,110 Eċċellenti. 213 00:10:21,110 --> 00:10:25,630 Allura int tingħata integer a u integer b, u inti tixtieq każwali 214 00:10:25,630 --> 00:10:28,710 numru sħiħ bejn u b. 215 00:10:28,710 --> 00:10:31,740 Nistgħu attwalment tikteb dan wieħed fuq il-bord, għaliex dan wieħed 216 00:10:31,740 --> 00:10:33,320 kienet linja waħda tal-kodiċi - 217 00:10:33,320 --> 00:10:34,390 mod wieħed biex tagħmel dan. 218 00:10:34,390 --> 00:10:37,810 >> Allura aħna qed jingħata drand bħala funzjoni nistgħu jużaw. 219 00:10:37,810 --> 00:10:38,820 U dak ma drand - 220 00:10:38,820 --> 00:10:40,290 jekk wieħed jassumi huwa kien miżruha - 221 00:10:40,290 --> 00:10:42,316 dak ma drand ritorn? 222 00:10:42,316 --> 00:10:44,840 >> MICHAEL: A float bejn 0.0 u 1.0. 223 00:10:44,840 --> 00:10:45,530 >> JASON Hirschhorn: A numru - yeah. 224 00:10:45,530 --> 00:10:47,910 A numru bejn 0 u 1. 225 00:10:47,910 --> 00:10:51,760 U hekk għandna b u a. 226 00:10:51,760 --> 00:10:55,480 U allura għandna numru bl-addoċċ tagħna bejn 0 u 1 mogħtija lilna mill drand. 227 00:10:55,480 --> 00:11:01,480 228 00:11:01,480 --> 00:11:06,630 Xi nies ppruvaw li jpoġġi b, jew b minus a, jew xi ħaġa ġewwa dawk 229 00:11:06,630 --> 00:11:07,960 parentesi. 230 00:11:07,960 --> 00:11:11,210 Dan ikun ifisser li dawn qed argumenti għal din il-funzjoni. 231 00:11:11,210 --> 00:11:13,450 >> drand ma tieħu ebda argument - bħal getString ma 232 00:11:13,450 --> 00:11:14,330 ma tieħu ebda argument. 233 00:11:14,330 --> 00:11:16,600 Allura huwa biss paren miftuħa, qrib paren - u li, hija stess, hija 234 00:11:16,600 --> 00:11:17,330 is-sejħa funzjoni. 235 00:11:17,330 --> 00:11:19,770 U li jagħtik numru bejn 0 u 1. 236 00:11:19,770 --> 00:11:22,820 Of course, għandna firxa sħiħa li n-numri tista 'tkun pulzieri 237 00:11:22,820 --> 00:11:28,470 >> Jiġifieri, jekk b huwa 10 u huwa 5, aħna verament jridu numru ma 'firxa ta' 5. 238 00:11:28,470 --> 00:11:36,940 Allura l-ħaġa li jmiss li għandna bżonn tagħmel hu li immoltiplika dan mill-firxa b minus a. 239 00:11:36,940 --> 00:11:40,380 Allura jekk wieħed jassumi li s immultiplikat. 240 00:11:40,380 --> 00:11:42,590 U li ser tagħtina numru f'firxa mogħtija. 241 00:11:42,590 --> 00:11:46,610 U li firxa speċifika hija l- differenza bejn b minus a. 242 00:11:46,610 --> 00:11:50,030 >> U fl-aħħarnett, li ser jagħtu biss mill - jiġifieri l-firxa bejn b nieqes 243 00:11:50,030 --> 00:11:52,520 huwa 5, li ser tagħtina numru 0-5. 244 00:11:52,520 --> 00:11:56,000 Iżda jekk fil-fatt 5, għandna bżonn li tingħata spinta din il-firxa sa fejn huwa 245 00:11:56,000 --> 00:12:01,380 attwalment mistennija li jkunu, billi żżid. 246 00:12:01,380 --> 00:12:02,580 Allura li gets-dritt loġika. 247 00:12:02,580 --> 00:12:03,745 U allura, kieku inti għandek mistoqsija oħra? 248 00:12:03,745 --> 00:12:04,547 >> MICHAEL: Le 249 00:12:04,547 --> 00:12:06,010 I biss jħossu verament mutu dritt issa. 250 00:12:06,010 --> 00:12:06,405 [Laughs] 251 00:12:06,405 --> 00:12:06,730 >> JASON Hirschhorn: Le 252 00:12:06,730 --> 00:12:08,640 M'għandekx tħoss verament dumb. 253 00:12:08,640 --> 00:12:10,560 Numru ta 'nies tħabtu din il-kwistjoni. 254 00:12:10,560 --> 00:12:13,920 U mbagħad, il-kwistjoni oħra hija, drand, inti qal, jagħtik float - 255 00:12:13,920 --> 00:12:14,940 jirritorna float. 256 00:12:14,940 --> 00:12:18,020 Iżda din il-funzjoni fil-fatt talab għal integer jiġu rritornati. 257 00:12:18,020 --> 00:12:23,700 >> Inti ma għandekx bżonn li jitfa dan b'mod espliċitu għal numru sħiħ, minħabba li dawn 258 00:12:23,700 --> 00:12:29,090 operazzjonijiet se titratta dan bħala kollha ta ' float - bħala numru b'punt li jvarja. 259 00:12:29,090 --> 00:12:31,570 Bħal dan se - anki jekk dan huwa integer, dan se 260 00:12:31,570 --> 00:12:32,890 jiġi mmultiplikat korrett. 261 00:12:32,890 --> 00:12:34,000 L-multiplikazzjoni se taħdem. 262 00:12:34,000 --> 00:12:35,060 Inti ma għandekx bżonn li jitfa hawnhekk. 263 00:12:35,060 --> 00:12:36,480 Fil-fatt, inti m'għandekx mitfugħa. 264 00:12:36,480 --> 00:12:37,310 >> Li kieku - 265 00:12:37,310 --> 00:12:40,750 jekk inti mitfugħa numru dan huwa bejn 0 u 1 - 266 00:12:40,750 --> 00:12:42,680 numru bl-addoċċ, punt floating - 267 00:12:42,680 --> 00:12:47,850 allura la se jkun biss 0 jew 1, hekk inti ser titlef kollha ta 'dak preċiżjoni. 268 00:12:47,850 --> 00:12:50,120 Iżda fl-aħħar, meta inti tirritorna, awtomatikament jiġrilha 269 00:12:50,120 --> 00:12:51,620 jintbagħtu lura bħala numru sħiħ. 270 00:12:51,620 --> 00:12:56,870 Allura inti m'għandekx bżonn tagħmel li ikkastjar yourself. 271 00:12:56,870 --> 00:13:00,810 >> Allura dan kien it-tweġiba għal din id-domanda, numru 7. 272 00:13:00,810 --> 00:13:02,190 Kwalunkwe mistoqsijiet oħra fuq Quiz 0? 273 00:13:02,190 --> 00:13:03,300 Yeah, Annie. 274 00:13:03,300 --> 00:13:05,050 >> ANNIE: Meta do nużaw rikursivi - 275 00:13:05,050 --> 00:13:07,850 meta ma nużaw loops iterattiv? 276 00:13:07,850 --> 00:13:10,210 >> JASON Hirschhorn: Meta tuza rikursivi - hekk b'mod aktar ġenerali, il- 277 00:13:10,210 --> 00:13:14,110 vantaġġi u liżvantaġġi ta recursion versus approċċ iterattiv. 278 00:13:14,110 --> 00:13:17,110 Jista 'xi ħadd joffru pro jew con? 279 00:13:17,110 --> 00:13:19,460 Jekk jogħġbok? 280 00:13:19,460 --> 00:13:20,140 Mhux Jista 'xi ħadd. 281 00:13:20,140 --> 00:13:22,526 Li jistgħu joffru pro jew con? 282 00:13:22,526 --> 00:13:26,963 >> [Rustling PAPER] 283 00:13:26,963 --> 00:13:29,730 >> STUDENT 1: rikursivi huwa inqas kodifikazzjoni - inqas ittajpjar? 284 00:13:29,730 --> 00:13:33,170 >> JASON Hirschhorn: Allura ġenerali, recursion speċjalment, funzjoni - 285 00:13:33,170 --> 00:13:35,750 jew algoritmu simili jingħaqdu sort - li huwa adatt 286 00:13:35,750 --> 00:13:37,300 għal approċċ rikursivi - 287 00:13:37,300 --> 00:13:40,710 jista 'jkun aktar sempliċi għall-kodiċi recursively. 288 00:13:40,710 --> 00:13:43,940 U biss tagħmel aktar sens biex tagħmel dan recursively. 289 00:13:43,940 --> 00:13:46,230 Allura li tkun pro biex recursion. 290 00:13:46,230 --> 00:13:46,610 Oħrajn? 291 00:13:46,610 --> 00:13:47,467 Yeah? 292 00:13:47,467 --> 00:13:49,240 >> STUDENT 2: Con għall recursion - 293 00:13:49,240 --> 00:13:50,940 Hija tuża memorja aktar. 294 00:13:50,940 --> 00:13:52,200 >> JASON Hirschhorn: Allura eżattament id-dritt. 295 00:13:52,200 --> 00:13:55,720 A funzjoni jirrikorri ser ikompli jżid munzell frames għall-munzell. 296 00:13:55,720 --> 00:13:59,690 Mela jekk inti qed joperaw fuq lott ta ' numri, u għandek sejħa dan 297 00:13:59,690 --> 00:14:02,560 jiffunzjonaw ħafna, allura inti se ċertament jieħdu memorja aktar, filwaqt li 298 00:14:02,560 --> 00:14:05,810 approċċ iterattiv se jqiegħdu wieħed biss munzell qafas fuq il-munzell, minħabba 299 00:14:05,810 --> 00:14:08,420 dan kollu jiġri fi ħdan funzjoni waħda. 300 00:14:08,420 --> 00:14:11,010 >> Kwalunkwe vantaġġi u liżvantaġġi oħra? 301 00:14:11,010 --> 00:14:11,500 Yeah. 302 00:14:11,500 --> 00:14:12,550 >> STUDENT 3: Pros għall recursion. 303 00:14:12,550 --> 00:14:15,950 Inti ma għandekx biex tiddetermina quddiem kif ħafna drabi l- 304 00:14:15,950 --> 00:14:17,660 kodiċi kellhom jiġu ripetuti. 305 00:14:17,660 --> 00:14:22,810 Inti jista 'jkollhom numru predeterminat ta' żminijiet li inti għandek jtenni, imbagħad 306 00:14:22,810 --> 00:14:26,420 recursion huwa aħjar, għaliex hija tieħu dak ir-riżultat. 307 00:14:26,420 --> 00:14:27,780 >> JASON Hirschhorn: Naħseb li veru. 308 00:14:27,780 --> 00:14:30,770 Imma naħseb fiż-żewġ każijiet inti qatt - 309 00:14:30,770 --> 00:14:33,290 inti probabilment tikseb xi input mill-utent. 310 00:14:33,290 --> 00:14:35,990 Jew din il-funzjoni ikollu xi input li jiddeterminaw kif ħafna drabi huwa 311 00:14:35,990 --> 00:14:36,730 għandhom jiddekorru. 312 00:14:36,730 --> 00:14:39,520 Allura ġeneralment, inti ma tkunx kodiċi hard - anki f'approċċ iterattiv - kif 313 00:14:39,520 --> 00:14:40,940 bosta drabi li loop għandha titmexxa. 314 00:14:40,940 --> 00:14:46,100 315 00:14:46,100 --> 00:14:48,670 >> Kellek ieħor inti kienu jaħsbu dwar, Annie? 316 00:14:48,670 --> 00:14:49,330 OK. 317 00:14:49,330 --> 00:14:51,650 Għalhekk dawn huma probabbilment l-żewġ - 318 00:14:51,650 --> 00:14:54,370 il-pro-akbar u l-akbar con għal rikursivi versus 319 00:14:54,370 --> 00:14:57,080 approċċ iterattiv. 320 00:14:57,080 --> 00:14:57,690 OK. 321 00:14:57,690 --> 00:14:59,465 Xi ħaġa oħra fuq Quiz 0? 322 00:14:59,465 --> 00:15:08,940 323 00:15:08,940 --> 00:15:09,920 >> Ejja jimxu fuq. 324 00:15:09,920 --> 00:15:15,260 File I / O. Hemm qasir isbaħ din il-ġimgħa fuq il-fajl I / O li nisperaw 325 00:15:15,260 --> 00:15:19,270 għandek jaraw multipli darbiet, u ammirajt. 326 00:15:19,270 --> 00:15:22,910 Ħafna xogħol marru fis dan, u stajt sema huwa insanely utli. 327 00:15:22,910 --> 00:15:25,740 I wkoll inklużi l-link fuq din il-slide, fil-każ li ma kellhomx 328 00:15:25,740 --> 00:15:29,160 ċans sabiex isegwu din 10 darbiet. 329 00:15:29,160 --> 00:15:35,280 >> Allura, aħna se jmorru fil-qosor fuq il- passi kbar għall-ftuħ u tax-xogħol 330 00:15:35,280 --> 00:15:38,400 ma 'fajls, u mbagħad aħna ser adsa fis-problema kodifikazzjoni qabel 331 00:15:38,400 --> 00:15:40,400 jeżamina l-sett problema. 332 00:15:40,400 --> 00:15:44,330 Għalhekk għal darb'oħra, jien ser tpoġġi dan fuq l-iskrin, imma jien ser jitkellmu għal 333 00:15:44,330 --> 00:15:47,630 biss minuta dwar dak li aħna qed tagħmel hawn mal-fajl I/O-- 334 00:15:47,630 --> 00:15:49,090 xi jfisser? 335 00:15:49,090 --> 00:15:55,280 >> Dan ifisser li nistgħu noħolqu tagħna programmi, u mbagħad ikollhom programmi tagħna 336 00:15:55,280 --> 00:16:00,370 ħruġ, u ma għamlu ebda impatt fuq l-dinja ta 'barra tal-programm tagħna. 337 00:16:00,370 --> 00:16:04,630 Imma meta aħna tibda taħdem ma 'fajls - tnejn qari tagħhom fil-u l-ħolqien 338 00:16:04,630 --> 00:16:10,460 minnhom - aħna jista 'jkollha xi effett fuq l- dinja ta 'barra tal-programm tagħna. 339 00:16:10,460 --> 00:16:15,440 >> Eżatt bħal jekk Microsoft Word ma kienx kapaċi biex tagħmel xi Word dokumenti, imbagħad 340 00:16:15,440 --> 00:16:18,710 ladarba Microsoft Word nieqaf, kollha tiegħek xogħol tkun marret, u dan iwassal 341 00:16:18,710 --> 00:16:19,740 verament tkun inutli. 342 00:16:19,740 --> 00:16:23,620 We do finalment jridu jkunu kapaċi jiktbu programmi li jistgħu jaffettwaw l- 343 00:16:23,620 --> 00:16:31,350 dinja ta 'madwarhom, kemm billi tieħu fl inputs kumplessi - f'termini ta 'fajls u 344 00:16:31,350 --> 00:16:37,080 permezz fajls, u wkoll joħolqu interessanti u outputs konvinċenti - 345 00:16:37,080 --> 00:16:39,520 f'termini ta 'tipi differenti ta' fajls. 346 00:16:39,520 --> 00:16:43,730 >> Allura huwa għalhekk li aħna qed jibdew jitgħallmu kif jaħdmu ma 'fajls. 347 00:16:43,730 --> 00:16:47,080 B'mod aktar speċifiku, liema nagħmlu hija kif ġej. 348 00:16:47,080 --> 00:16:47,680 Huwa sempliċi ħafna. 349 00:16:47,680 --> 00:16:51,530 Hemm biss ftit passi, u huma elenkati hawn fuq dan il-kodiċi. 350 00:16:51,530 --> 00:16:55,130 Allura aħna qed tmur biex jgħaddu din il-linja kodiċi b'linja. 351 00:16:55,130 --> 00:16:57,630 >> L-ewwel, tara enfasizzat - 352 00:16:57,630 --> 00:17:01,330 meta int taħdem ma 'fajl, irrispettivament mit-tip tal-fajl huwa, 353 00:17:01,330 --> 00:17:02,670 għandek bżonn biex tiftħu. 354 00:17:02,670 --> 00:17:05,130 U li huwa ma sejħa għal fopen - 355 00:17:05,130 --> 00:17:05,950 dritt hawn. 356 00:17:05,950 --> 00:17:07,980 You jinkludu l-isem tal-fajl. 357 00:17:07,980 --> 00:17:11,930 Jekk il-fajl ma jkunx fl-direttorju tiegħek, jew il-folder fejn dan il-programm 358 00:17:11,930 --> 00:17:15,910 ħajja, imbagħad inti għandek bżonn ukoll li jinkludu triq ta 'fejn dan il-fajl huwa. 359 00:17:15,910 --> 00:17:19,099 >> Aħna qed tmur biex wieħed jassumi li dan fajl imsejħa "text.txt" - 360 00:17:19,099 --> 00:17:24,220 dokument test sempliċi - huwa fil- istess folder bħal dan il-programm hu. 361 00:17:24,220 --> 00:17:26,859 Allura dak ħaġa oħra li wieħed iżomm mind - li jekk inti tixtieq li tiftaħ fajl 362 00:17:26,859 --> 00:17:30,050 x'imkien ieħor, inti fil-fatt bżonn li tinkludi post tagħha. 363 00:17:30,050 --> 00:17:33,520 >> It-tieni, inti tista 'tgħaddi l-argument li fopen, u dan huwa dak li inti trid tagħmel 364 00:17:33,520 --> 00:17:34,620 mal-fajl. 365 00:17:34,620 --> 00:17:38,450 Hemm tliet argumenti prinċipali li int ser jgħaddu għal fopen. 366 00:17:38,450 --> 00:17:40,060 Min jista 'jagħti me dawk it-tliet? 367 00:17:40,060 --> 00:17:44,960 368 00:17:44,960 --> 00:17:47,130 Min jista 'jagħti me wieħed minnhom? 369 00:17:47,130 --> 00:17:48,130 Iva. 370 00:17:48,130 --> 00:17:50,010 >> STUDENT 4: L-isem ta 'fajl? 371 00:17:50,010 --> 00:17:50,440 >> JASON Hirschhorn: Jiddispjacini. 372 00:17:50,440 --> 00:17:55,490 Tliet argumenti ewlenin inti tista 'tgħaddi bħala t-tieni argument li fopen. 373 00:17:55,490 --> 00:17:57,060 Int dritt - l-isem ta 'fajl hija l-ewwel argument. 374 00:17:57,060 --> 00:18:01,620 Iżda t-tieni argument li fopen huma ġeneralment tliet kordi, u - iva. 375 00:18:01,620 --> 00:18:02,210 Aleja. 376 00:18:02,210 --> 00:18:03,490 >> Aleja: A għall tehmeż. 377 00:18:03,490 --> 00:18:06,840 >> JASON Hirschhorn: A, jekk inti tixtieq li tehmeż għal fajl li diġà teżisti. 378 00:18:06,840 --> 00:18:07,810 >> STUDENT 5: R għall jinqara. 379 00:18:07,810 --> 00:18:09,930 >> JASON Hirschhorn: R, jekk inti trid tinqara minn fajl. 380 00:18:09,930 --> 00:18:10,670 >> STUDENT 6: W għal jiktbu. 381 00:18:10,670 --> 00:18:12,840 >> JASON Hirschhorn: U w, jekk inti jridu jiktbu għal fajl. 382 00:18:12,840 --> 00:18:17,570 Allura f'dan il-każ, aħna qed miktub għall-fajl, hekk aħna w. 383 00:18:17,570 --> 00:18:22,360 Inti tiftaħ dan, inti ukoll għandek biex isalva l- fajl x'imkien, u li bl- 384 00:18:22,360 --> 00:18:26,000 kodiċi għall-naħa tax-xellug tal- l-operatur assenjazzjoni - 385 00:18:26,000 --> 00:18:31,220 Jien ħolqien ta 'pointer għall-fajl imsejħa, f'dan il-każ, inkartament. 386 00:18:31,220 --> 00:18:36,070 >> Aħna mhux se joqogħdu jinkwetaw dak dan ħaġa FILE caps kollha hu. 387 00:18:36,070 --> 00:18:40,600 Biżżejjed ngħid, dan huwa twil nixxiegħa ta 'żerijiet u dawk. 388 00:18:40,600 --> 00:18:44,970 U li kif se nkunu qed toperahiex u jifhmuha. 389 00:18:44,970 --> 00:18:47,300 >> Il-ħaġa li rridu nagħmlu - u dan huwa oerhört importanti - 390 00:18:47,300 --> 00:18:49,070 kull meta inti tiftaħ fajl - 391 00:18:49,070 --> 00:18:54,250 fil-fatt, kull meta inti sejħa malloc, għall- eżempju, u nikseb xi memorja u jippruvaw 392 00:18:54,250 --> 00:18:57,980 u ħlief fil-pointer, inti dejjem tixtieq li jivverifika sabiex ikun żgur li din 393 00:18:57,980 --> 00:19:00,230 funzjoni ma reġgħux lura null. 394 00:19:00,230 --> 00:19:05,230 >> Allura f'dan il-każ, aħna verifika biex jagħmlu żgur li aħna attwalment fetaħ il- 395 00:19:05,230 --> 00:19:10,230 fajl korrett, u kien hemm ebda żball fil-programm tagħna. 396 00:19:10,230 --> 00:19:15,160 Sussegwentement, ladarba aħna ħadthom ċċekkjati sabiex jiġi żgurat li għandna fajl tax-xogħol, nistgħu 397 00:19:15,160 --> 00:19:18,520 jikteb lill, jew taqra minn, jew tehmeż għall-fajl. 398 00:19:18,520 --> 00:19:24,270 F'dan il-każ, I am sempliċiment istampar linja waħda għal dan il-fajl. 399 00:19:24,270 --> 00:19:25,450 >> Kif inkun naf li? 400 00:19:25,450 --> 00:19:27,990 Well, jien jużaw din il-funzjoni imsejħa fprintf. 401 00:19:27,990 --> 00:19:30,970 Kollha tal-funzjonijiet tkun se tuża meta tikteb li, jew qari minn, jew 402 00:19:30,970 --> 00:19:34,950 timmanipula fajls se jkunu simili għal funzjonijiet inti stajt tidher qabel, iżda 403 00:19:34,950 --> 00:19:38,420 tibda bl-ittra F, permanenti għall-fajl. 404 00:19:38,420 --> 00:19:43,440 U fprintf, b'differenza print normali tagħna app, jieħu argument addizzjonali, 405 00:19:43,440 --> 00:19:47,800 u li huwa l-fajl fejn inti tixtieq li jistampaw din il-linja għal. 406 00:19:47,800 --> 00:19:50,640 >> I ma jkollhom xejn id-dritt ta ohai. 407 00:19:50,640 --> 00:19:52,860 I ma jkollhomx it-tielet argument li printf - 408 00:19:52,860 --> 00:19:57,030 jew it-tieni argument li printf, il- tielet argument li fprintf, minħabba I 409 00:19:57,030 --> 00:19:59,480 m'għandhom l-ebda placeholders hawn. 410 00:19:59,480 --> 00:20:01,070 Jien ma jinkludux kwalunkwe varjabbli. 411 00:20:01,070 --> 00:20:06,070 Iżda għal darb'oħra, fprintf u dawn kollha fajl funzjonijiet li joperaw ma 'fajls 412 00:20:06,070 --> 00:20:09,820 huma ġeneralment ser jeħtieġu l-fajl li fuqhom qed joperaw. 413 00:20:09,820 --> 00:20:15,960 >> Fl-aħħarnett, l-aħħar ħaġa importanti li tagħmel huwa li jagħlaq il-fajl, bħad 414 00:20:15,960 --> 00:20:19,530 ma '- kull meta aħna malloc xi ħaġa, irridu li jillibera xi ħaġa, lest we 415 00:20:19,530 --> 00:20:22,730 jkollhom nixxija memorja - irridu li tagħlaq fajl tagħna. 416 00:20:22,730 --> 00:20:28,180 Jekk dan il-programm ħareġ mingħajr għeluq il-fajl, odds huma xejn imur 417 00:20:28,180 --> 00:20:30,050 ħażin, speċjalment jekk kien file żgħir. 418 00:20:30,050 --> 00:20:35,020 >> Iżda huwa ċertament stil kodifikazzjoni tajba u l-prattika li dejjem tagħlaq fajl tiegħek 419 00:20:35,020 --> 00:20:38,050 meta int lest tużah. 420 00:20:38,050 --> 00:20:43,630 Allura dan huwa l-baŜi tal-fajl I / O. You ħadthom probabbilment jidhru li qabel, jew 421 00:20:43,630 --> 00:20:45,710 jaraw li f'dak qasir meraviljuż. 422 00:20:45,710 --> 00:20:48,410 Ħadd ma jkollu xi mistoqsijiet, qabel immorru fis xi kodifikazzjoni prattika 423 00:20:48,410 --> 00:20:51,800 problemi, madwar file I / O jew il- passi I biss marru fuq? 424 00:20:51,800 --> 00:21:00,198 425 00:21:00,198 --> 00:21:03,162 >> [Ittajpjar Ħsejjes] 426 00:21:03,162 --> 00:21:04,150 >> JASON Hirschhorn: Do you mistoqsija, Avi? 427 00:21:04,150 --> 00:21:04,660 >> AVI: Le 428 00:21:04,660 --> 00:21:04,740 >> JASON Hirschhorn: OK. 429 00:21:04,740 --> 00:21:06,746 Jien ser tistenna ieħor seba 'sekondi. 430 00:21:06,746 --> 00:21:07,590 [Laughs] 431 00:21:07,590 --> 00:21:08,620 Li ponta verament tajba. 432 00:21:08,620 --> 00:21:10,750 Inti guys biss ma simili tistaqsi mistoqsijiet. 433 00:21:10,750 --> 00:21:11,660 Li l-multa. 434 00:21:11,660 --> 00:21:12,330 OK. 435 00:21:12,330 --> 00:21:17,620 Allura problema tagħna prattika ewwel hija, aħna ser jidduplikaw l-funzjoni ta ' 436 00:21:17,620 --> 00:21:22,330 għodda kmand tal-linja li inti probabilment użati qabel - kopja - 437 00:21:22,330 --> 00:21:23,500 l-għodda kopja. 438 00:21:23,500 --> 00:21:28,050 Jekk għandek tip cp u mbagħad tgħaddiha tnejn argumenti fis terminal tiegħek, inti tista ' 439 00:21:28,050 --> 00:21:28,980 kopja fajl. 440 00:21:28,980 --> 00:21:31,220 U dan huwa dak li se nkunu qed jiktbu dritt issa. 441 00:21:31,220 --> 00:21:35,830 >> Għalhekk għal darb'oħra, qari off ta 'dan slide, I d inti tikteb programm li jieħu 442 00:21:35,830 --> 00:21:38,130 tnejn u kmand tal-linja tnejn biss argumenti - 443 00:21:38,130 --> 00:21:40,750 fajl sors u fajl destinazzjoni - 444 00:21:40,750 --> 00:21:44,590 u kopji l-kontenut tas-sors fajl għall-fajl destinazzjoni 445 00:21:44,590 --> 00:21:46,960 byte wieħed kull darba. 446 00:21:46,960 --> 00:21:48,510 Hekk li l-lott li titlob. 447 00:21:48,510 --> 00:21:52,200 >> Għal darb'oħra, approċċ tajjeb għal dan huwa li tmurx dritti għall-kodiċi C, iżda 448 00:21:52,200 --> 00:21:54,280 din tinqasam koppja ta 'passi. 449 00:21:54,280 --> 00:21:58,400 L-ewwel, jaħsbu dwar il-loġika - eżattament dak li jien inti titlob sabiex tagħmel - 450 00:21:58,400 --> 00:22:00,620 u jifhmu kollha ta 'l- passi biex din il-problema. 451 00:22:00,620 --> 00:22:04,410 Mhux C, biss f'xi pseudocode, jew saħansitra mudell mentali ta ' 452 00:22:04,410 --> 00:22:06,030 x'inhu għaddej. 453 00:22:06,030 --> 00:22:10,050 >> Sussegwentement, ladarba inti għandek l pseudocode isfel, figura kif l pseudocode 454 00:22:10,050 --> 00:22:14,600 mapep għal fuq għodod u affarijiet konna tgħallmu jużaw fil C. 455 00:22:14,600 --> 00:22:19,070 >> U fl-aħħarnett, ladarba inti għandek dak kollu li flimkien, inti tista kodiċi l-problema. 456 00:22:19,070 --> 00:22:23,370 Ħu 5 sa 10 minuti biex jaħdmu fuq din il-problema. 457 00:22:23,370 --> 00:22:25,800 I ser jitqiegħdu l-istruzzjonijiet back up fit-tieni. 458 00:22:25,800 --> 00:22:27,990 U allura aħna qed tmur biex jmorru fuq l pseudocode, u l-kodiċi 459 00:22:27,990 --> 00:22:29,230 it jgħixu bħala grupp. 460 00:22:29,230 --> 00:22:31,640 >> Jekk għandek xi mistoqsijiet waqt li int jaħdmu fuq dan, tħossok liberu li tqajjem 461 00:22:31,640 --> 00:22:34,260 naħa tiegħek, u jien se jidħlu madwar u tweġiba għalihom. 462 00:22:34,260 --> 00:22:37,020 463 00:22:37,020 --> 00:22:39,330 >> STUDENT 7: Nista swipe biċċa karta? 464 00:22:39,330 --> 00:22:41,537 >> JASON Hirschhorn: X'hemm up? 465 00:22:41,537 --> 00:26:46,047 466 00:26:46,047 --> 00:26:48,043 >> [Ittajpjar Ħsejjes] 467 00:26:48,043 --> 00:26:48,730 >> JASON Hirschhorn: OK. 468 00:26:48,730 --> 00:26:51,710 Ejja jmorru fuq il-pseudocode ewwel, u imbagħad I ser jagħtuk ftit aktar 469 00:26:51,710 --> 00:26:52,960 minuti biex jintemm kodifikazzjoni. 470 00:26:52,960 --> 00:26:55,540 471 00:26:55,540 --> 00:26:58,650 >> Li jixtiequ jibdew me off l-ewwel linja ta ' 472 00:26:58,650 --> 00:27:00,030 pseudocode għal din il-funzjoni? 473 00:27:00,030 --> 00:27:03,330 474 00:27:03,330 --> 00:27:05,740 >> STUDENT 8: Iċċekkja biex tiżgura li inti ngħataw żewġ fajls. 475 00:27:05,740 --> 00:27:06,990 >> JASON Hirschhorn: OK. 476 00:27:06,990 --> 00:27:21,270 477 00:27:21,270 --> 00:27:22,990 U jekk aħna mhux qed? 478 00:27:22,990 --> 00:27:25,974 >> STUDENT 8: Nixtieq ritorn 0. 479 00:27:25,974 --> 00:27:27,872 >> JASON Hirschhorn: Jekk nerġgħu lura 0? 480 00:27:27,872 --> 00:27:30,182 >> STUDENT 8: Ritorn a - 481 00:27:30,182 --> 00:27:30,650 lilhom infushom. 482 00:27:30,650 --> 00:27:30,850 Jiddispjacini. 483 00:27:30,850 --> 00:27:31,210 >> JASON Hirschhorn: Yeah. 484 00:27:31,210 --> 00:27:32,710 Probabbilment le 0. 485 00:27:32,710 --> 00:27:34,680 Minħabba 0 ifisser kollox kien tajjeb. 486 00:27:34,680 --> 00:27:35,030 OK. 487 00:27:35,030 --> 00:27:36,730 Allura dak hu l-ewwel linja ta pseudocode. 488 00:27:36,730 --> 00:27:38,715 Min għandu l-tieni linja ta 'pseudocode? 489 00:27:38,715 --> 00:27:40,630 >> STUDENT 9: Open kemm il-fajls? 490 00:27:40,630 --> 00:27:41,880 >> JASON Hirschhorn: Iftaħ iż-żewġ fajls. 491 00:27:41,880 --> 00:27:49,970 492 00:27:49,970 --> 00:27:50,920 OK? 493 00:27:50,920 --> 00:27:52,850 >> STUDENT 10: Iċċekkja biex tara jekk il-fajl huwa NULL? 494 00:27:52,850 --> 00:28:10,906 495 00:28:10,906 --> 00:28:12,580 >> JASON Hirschhorn: Jivverifika sabiex ikun żgur la huma NULL. 496 00:28:12,580 --> 00:28:15,800 Bħala twarrib - 497 00:28:15,800 --> 00:28:17,540 mmejla 0 - 498 00:28:17,540 --> 00:28:18,887 hija li NULL? 499 00:28:18,887 --> 00:28:20,080 >> STUDENT 11: No 500 00:28:20,080 --> 00:28:21,190 >> JASON Hirschhorn: Li mhux NULL. 501 00:28:21,190 --> 00:28:23,400 Li huwa msejjaħ il-terminatur NULL. 502 00:28:23,400 --> 00:28:25,580 Huwa fil-fatt spelt ma l waħda biss. 503 00:28:25,580 --> 00:28:28,580 Allura iċċekkjar xi ħaġa kontra li - li attwalment karattru - 504 00:28:28,580 --> 00:28:31,710 hekk iċċekkjar xi ħaġa kontra li hija mhux l-istess bħala verifika biex tara jekk 505 00:28:31,710 --> 00:28:32,690 ugwali NULL. 506 00:28:32,690 --> 00:28:34,100 >> U xi nies - 507 00:28:34,100 --> 00:28:36,040 fuq kwizzijiet tagħhom u l-problema tagħhom settijiet - jkunu kisbu l- 508 00:28:36,040 --> 00:28:36,890 tnejn ta 'dawk konfuż. 509 00:28:36,890 --> 00:28:38,830 Imma tnejn minn dawn huma fil-fatt differenti. 510 00:28:38,830 --> 00:28:40,220 Wieħed jispiċċa string - 511 00:28:40,220 --> 00:28:43,210 wieħed huwa pointer għal 0. 512 00:28:43,210 --> 00:28:46,490 >> STUDENT 12: Għaliex ma inti tiċċekkja li kun żgur li l-fajls ma jkunux NULL 513 00:28:46,490 --> 00:28:48,670 qabel ma inti tiftaħ minnhom? 514 00:28:48,670 --> 00:28:54,772 >> JASON Hirschhorn: So open jiffranka xi ħaġa fil-fajl. 515 00:28:54,772 --> 00:28:57,780 U jekk inti tmur lura hawn - 516 00:28:57,780 --> 00:28:59,520 hekk din il-linja - fopen - 517 00:28:59,520 --> 00:29:05,300 se jagħtik l-indirizz u jaħżnu li l-indirizz fil-fajl jekk xogħlijiet. 518 00:29:05,300 --> 00:29:07,650 Jekk ma jaħdimx, dan se taħżen NULL - 519 00:29:07,650 --> 00:29:08,020 >> STUDENT 12: Oh. 520 00:29:08,020 --> 00:29:08,180 OK. 521 00:29:08,180 --> 00:29:08,500 Ltqajna inti. 522 00:29:08,500 --> 00:29:09,050 >> JASON Hirschhorn: Fil-fajl. 523 00:29:09,050 --> 00:29:11,990 Allura inti ma tistax tivverifika għall NULL qabel ma inti ħadthom jinfetħu minnhom. 524 00:29:11,990 --> 00:29:13,520 NULL ifisser xi ħaġa ma jaħdmu b'mod korrett. 525 00:29:13,520 --> 00:29:18,030 526 00:29:18,030 --> 00:29:18,740 OK. 527 00:29:18,740 --> 00:29:22,590 Allura jivverifika sabiex ikun żgur la hu? 528 00:29:22,590 --> 00:29:23,200 Jew huma? 529 00:29:23,200 --> 00:29:23,770 What do naħsbu? 530 00:29:23,770 --> 00:29:24,310 Aħna ser imorru ma 'dak. 531 00:29:24,310 --> 00:29:24,520 >> STUDENT 13: Jinsab. 532 00:29:24,520 --> 00:29:25,020 >> JASON Hirschhorn: Huwa? 533 00:29:25,020 --> 00:29:25,930 La hu? 534 00:29:25,930 --> 00:29:26,350 >> STUDENT 13: Jinsab. 535 00:29:26,350 --> 00:29:26,390 >> JASON Hirschhorn: OK. 536 00:29:26,390 --> 00:29:28,510 Aħna jidhru li jkollhom xi kunsens dwar dan. 537 00:29:28,510 --> 00:29:30,520 La huwa NULL. 538 00:29:30,520 --> 00:29:32,250 OK, linja li jmiss ta pseudocode. 539 00:29:32,250 --> 00:29:33,600 Min ma tani linja għadhom? 540 00:29:33,600 --> 00:29:37,350 541 00:29:37,350 --> 00:29:38,295 Aħna se tistenna għalik. 542 00:29:38,295 --> 00:29:39,020 Yeah. 543 00:29:39,020 --> 00:29:40,895 >> STUDENT 14: Int għandek taqra mill-ewwel file? 544 00:29:40,895 --> 00:29:42,290 >> JASON Hirschhorn: OK. 545 00:29:42,290 --> 00:29:46,240 >> STUDENT 14: Or nużaw fscanf jew xi ħaġa bħal dik l-ewwel fajl? 546 00:29:46,240 --> 00:29:50,650 >> JASON Hirschhorn: Allura rridu aqra mill-ewwel fajl u - 547 00:29:50,650 --> 00:29:51,900 ejja tpoġġi dan id-dritt hawn. 548 00:29:51,900 --> 00:30:00,600 549 00:30:00,600 --> 00:30:01,880 Aqra mill-fajl sors. 550 00:30:01,880 --> 00:30:05,370 U mbagħad, dak li nagħmlu wara we jinqara mill-sors fajl? 551 00:30:05,370 --> 00:30:06,620 Xi ħadd ieħor? 552 00:30:06,620 --> 00:30:09,150 553 00:30:09,150 --> 00:30:12,190 >> STUDENT 15: Ikteb in l-fajl destinazzjoni? 554 00:30:12,190 --> 00:30:22,080 555 00:30:22,080 --> 00:30:25,620 >> JASON Hirschhorn: Niktbu sabiex l-fajl destinazzjoni, u - 556 00:30:25,620 --> 00:30:26,210 OK. 557 00:30:26,210 --> 00:30:30,030 X'iktar aħna neqsin? 558 00:30:30,030 --> 00:30:32,460 Xi ħadd ieħor li ma tani linja tal-kodiċi s'issa - ta pseudocode. 559 00:30:32,460 --> 00:30:33,510 Yeah. 560 00:30:33,510 --> 00:30:36,540 >> STUDENT 16: Forsi inti tista 'dejjem jivverifika jekk hemm xi ħaġa li taqra għal, 561 00:30:36,540 --> 00:30:37,970 bħall-linja li jmiss? 562 00:30:37,970 --> 00:30:39,550 Li huma simili l-linja li jmiss, ara jekk dan jeżisti. 563 00:30:39,550 --> 00:30:40,660 >> [Ħoss ELETTRONIKA] 564 00:30:40,660 --> 00:30:41,095 >> JASON Hirschhorn: Oops. 565 00:30:41,095 --> 00:30:43,120 C'est software journaling tiegħi. 566 00:30:43,120 --> 00:30:43,580 Yeah? 567 00:30:43,580 --> 00:30:44,960 >> STUDENT 16: Yeah. 568 00:30:44,960 --> 00:30:48,940 >> JASON Hirschhorn: So jagħtu lili waħda aktar ħin. 569 00:30:48,940 --> 00:30:51,640 >> STUDENT 16: Iċċekkja jekk hemm xorta linja li jmiss mill- 570 00:30:51,640 --> 00:30:52,920 sors fajl biex jinqara. 571 00:30:52,920 --> 00:30:53,500 >> JASON Hirschhorn: OK. 572 00:30:53,500 --> 00:30:56,060 Allura aħna mhux qed taqra linji - ġew qari bytes hawn - 573 00:30:56,060 --> 00:30:57,590 imma int korretta. 574 00:30:57,590 --> 00:31:00,040 Aħna rridu li jaqraw u jiktbu sakemm m'hemm l-ebda aktar bytes. 575 00:31:00,040 --> 00:31:11,430 576 00:31:11,430 --> 00:31:11,735 OK. 577 00:31:11,735 --> 00:31:16,940 U hekk dawn għandhom verament tkun indentata daqsxejn, għaliex qed taħt hemmhekk. 578 00:31:16,940 --> 00:31:17,470 Dritt? 579 00:31:17,470 --> 00:31:20,620 Sakemm aħna qed barra ta 'bytes, aħna qed tmur biex jinqara mill-fajl sors u jiktbu 580 00:31:20,620 --> 00:31:22,160 għall-fajl destinazzjoni. 581 00:31:22,160 --> 00:31:24,510 >> U mbagħad, dak li huwa l-aħħar linja ta 'pseudocode? 582 00:31:24,510 --> 00:31:26,380 Xi ħadd li ma jingħatawx me xi ħaġa s'issa. 583 00:31:26,380 --> 00:31:29,270 584 00:31:29,270 --> 00:31:30,260 >> STUDENT 17: Agħlaq l-fajls? 585 00:31:30,260 --> 00:31:31,510 >> JASON Hirschhorn: Eżattament. 586 00:31:31,510 --> 00:31:36,370 587 00:31:36,370 --> 00:31:37,450 Agħlaq il-fajls. 588 00:31:37,450 --> 00:31:38,400 Allura hemm pseudocode tagħna. 589 00:31:38,400 --> 00:31:41,870 Jien ser tpoġġi l-pseudocode fis gedit, u fi ftit minuti aħna 590 00:31:41,870 --> 00:31:44,626 se kodiċi dan flimkien. 591 00:31:44,626 --> 00:33:55,280 592 00:33:55,280 --> 00:33:56,000 >> OK. 593 00:33:56,000 --> 00:33:58,290 Let us tibda bħala grupp. 594 00:33:58,290 --> 00:33:59,940 Nishant, I jkollhom fajl ġdid tiegħi. 595 00:33:59,940 --> 00:34:01,130 Stajt biss miftuħa dan up. 596 00:34:01,130 --> 00:34:01,880 Dokument Untitled 1. 597 00:34:01,880 --> 00:34:05,490 X'inhu l-ewwel ħaġa I għandha tagħmel? 598 00:34:05,490 --> 00:34:07,040 >> Nishant: Inkludi libreriji? 599 00:34:07,040 --> 00:34:08,219 >> JASON Hirschhorn: OK. 600 00:34:08,219 --> 00:34:11,070 What libreriji? 601 00:34:11,070 --> 00:34:17,570 >> Nishant: Stdio.h, stdlib.h, nemmen? 602 00:34:17,570 --> 00:34:18,000 >> JASON Hirschhorn: OK. 603 00:34:18,000 --> 00:34:21,592 X'inhu stdlib għall? 604 00:34:21,592 --> 00:34:23,010 >> Nishant: I nesa. 605 00:34:23,010 --> 00:34:23,219 >> JASON Hirschhorn: OK. 606 00:34:23,219 --> 00:34:24,179 Allura jinkludu stdio. 607 00:34:24,179 --> 00:34:28,630 X'għandi nagħmel anke qabel I tibda kodifikazzjoni? 608 00:34:28,630 --> 00:34:29,710 >> Nishant: Ikteb header? 609 00:34:29,710 --> 00:34:31,830 >> JASON Hirschhorn: Kif nista 'nikseb dan kkulurita? 610 00:34:31,830 --> 00:34:34,060 >> [Voices INTERPOSING] 611 00:34:34,060 --> 00:34:35,040 >> Nishant: Kif tista 'tikseb it kkulurita? 612 00:34:35,040 --> 00:34:38,060 >> JASON Hirschhorn: Kif nista kulur kodifikazzjoni? 613 00:34:38,060 --> 00:34:38,570 >> Nishant: I do not know. 614 00:34:38,570 --> 00:34:38,830 Oh. 615 00:34:38,830 --> 00:34:39,389 Ħlief. 616 00:34:39,389 --> 00:34:39,929 >> JASON Hirschhorn: Save. 617 00:34:39,929 --> 00:34:40,270 Iva. 618 00:34:40,270 --> 00:34:41,760 I għandha ħlief bħala. C. 619 00:34:41,760 --> 00:34:46,239 Allura jiffrankaw fuq il-desktop bħala cp.c. 620 00:34:46,239 --> 00:34:47,280 Sweet. 621 00:34:47,280 --> 00:34:51,199 U jekk irrid li tikseb stil sħiħ punti, dak li għandi 622 00:34:51,199 --> 00:34:53,085 jinkludu fil-quċċata? 623 00:34:53,085 --> 00:34:58,390 >> Nishant: Inti tista 'tikteb ismek, isem tal-programm, u l-iskop 624 00:34:58,390 --> 00:34:59,640 tal-programm kif ukoll? 625 00:34:59,640 --> 00:35:08,400 626 00:35:08,400 --> 00:35:10,040 >> JASON Hirschhorn: Jidher tajjeb. 627 00:35:10,040 --> 00:35:10,470 Eċċellenti. 628 00:35:10,470 --> 00:35:12,940 Allura inti ħadthom bdew us off perfettament. 629 00:35:12,940 --> 00:35:13,720 # Jinkludu - 630 00:35:13,720 --> 00:35:15,365 aħna ser wkoll tikteb - 631 00:35:15,365 --> 00:35:30,050 632 00:35:30,050 --> 00:35:30,870 OK. 633 00:35:30,870 --> 00:35:33,520 So I think jien kollha stabbiliti biex tmur. 634 00:35:33,520 --> 00:35:38,003 Min għandu l-ewwel linja tal-kodiċi għalija - jew l-ewwel linji ta 'kodiċi li 635 00:35:38,003 --> 00:35:41,280 li ser jieħu biex jissodisfaw l-ewwel tagħna tikkummenta bil pseudocode? 636 00:35:41,280 --> 00:35:41,985 You. 637 00:35:41,985 --> 00:35:48,780 >> STUDENT 18: Jekk Ma Ikun int argc, u mbagħad char * ARGV? 638 00:35:48,780 --> 00:35:49,490 >> JASON Hirschhorn: Naħseb int dritt. 639 00:35:49,490 --> 00:35:56,270 Ejja bidla li int prinċipali, paren miftuħa, argc int, comma, char * ARGV? 640 00:35:56,270 --> 00:35:57,150 Bħal dik? 641 00:35:57,150 --> 00:35:57,410 >> STUDENT 18: Brazzi. 642 00:35:57,410 --> 00:35:58,260 >> JASON Hirschhorn: Brazzi. 643 00:35:58,260 --> 00:35:59,860 Parentesi miftuħa, parentesi magħluqa, ġenitur qrib. 644 00:35:59,860 --> 00:36:00,240 Perfect. 645 00:36:00,240 --> 00:36:02,160 Now I tista 'tieħu l-argumenti kmand tal-linja. 646 00:36:02,160 --> 00:36:02,430 OK. 647 00:36:02,430 --> 00:36:04,250 Naraw li qed jingħataw żewġ fajls. 648 00:36:04,250 --> 00:36:07,905 Inti tista 'tagħti me dan ukoll. 649 00:36:07,905 --> 00:36:09,180 >> STUDENT 18: Jekk argc - 650 00:36:09,180 --> 00:36:11,060 dan wieħed ma ugwali 3. 651 00:36:11,060 --> 00:36:14,360 >> JASON Hirschhorn: Jekk paren miftuħa argc ma ugwali 3? 652 00:36:14,360 --> 00:36:16,970 >> STUDENT 18: Yeah, inti tirritorna 1 jew xejn. 653 00:36:16,970 --> 00:36:17,460 >> JASON Hirschhorn: Jiddispjacini. 654 00:36:17,460 --> 00:36:19,120 >> STUDENT 18: Return 1 jew xejn. 655 00:36:19,120 --> 00:36:20,270 >> JASON Hirschhorn: Ritorn 1. 656 00:36:20,270 --> 00:36:22,230 OK? 657 00:36:22,230 --> 00:36:22,970 Great. 658 00:36:22,970 --> 00:36:24,290 Iftaħ iż-żewġ fajls. 659 00:36:24,290 --> 00:36:26,160 Min jista 'jgħini tiftaħ fajls kemm? 660 00:36:26,160 --> 00:36:28,125 Min ma tani kodiċi għadhom? 661 00:36:28,125 --> 00:36:31,510 662 00:36:31,510 --> 00:36:32,320 Kurt? 663 00:36:32,320 --> 00:36:36,145 >> Kurt: Allura tappijiet kollha F-I-L-E sors star. 664 00:36:36,145 --> 00:36:39,390 665 00:36:39,390 --> 00:36:40,920 >> JASON Hirschhorn: jien ser li tieħu l-vokali. 666 00:36:40,920 --> 00:36:41,570 Dawk huma jibred. 667 00:36:41,570 --> 00:36:42,716 Huwa simili Tumblr. 668 00:36:42,716 --> 00:36:44,610 >> STUDENT 18: Ugwali fopen - 669 00:36:44,610 --> 00:36:46,612 >> JASON Hirschhorn: Ugwali fopen? 670 00:36:46,612 --> 00:36:49,870 >> STUDENT 18: paren Open, ARGV, parentesi miftuħa. 671 00:36:49,870 --> 00:36:50,055 >> JASON Hirschhorn: Stenna. 672 00:36:50,055 --> 00:36:50,240 Jiddispjacini. 673 00:36:50,240 --> 00:36:51,050 Paren Open. 674 00:36:51,050 --> 00:36:51,456 OK. 675 00:36:51,456 --> 00:36:53,080 >> STUDENT 18: Yeah. 676 00:36:53,080 --> 00:36:55,110 ARGV sub 1. 677 00:36:55,110 --> 00:36:55,860 >> JASON Hirschhorn: Sub 1? 678 00:36:55,860 --> 00:36:56,140 >> STUDENT 18: Yeah. 679 00:36:56,140 --> 00:36:58,540 ARGV bracket open 1 - 680 00:36:58,540 --> 00:36:59,730 iva. 681 00:36:59,730 --> 00:37:06,470 U mbagħad comma, u mbagħad miftuħa double kwotazzjoni, r, kwotazzjoni doppja, 682 00:37:06,470 --> 00:37:08,250 paren qrib, virgola. 683 00:37:08,250 --> 00:37:09,450 >> JASON Hirschhorn: Sweet. 684 00:37:09,450 --> 00:37:10,950 U xi ngħidu dwar l-ieħor? 685 00:37:10,950 --> 00:37:16,030 >> STUDENT 18: Simili ħafna, iżda minflok ta 'S-R-C, youd sejħa hija D-S-T. 686 00:37:16,030 --> 00:37:17,060 >> JASON Hirschhorn: Oo! 687 00:37:17,060 --> 00:37:17,772 I bħal dik. 688 00:37:17,772 --> 00:37:20,010 >> STUDENT 18: Just D-S-T. Yeah. 689 00:37:20,010 --> 00:37:23,057 U mbagħad ARGV, parentesi miftuħa, 2. 690 00:37:23,057 --> 00:37:23,200 Yeah. 691 00:37:23,200 --> 00:37:26,720 U mbagħad w minflok r. 692 00:37:26,720 --> 00:37:27,620 Yeah. 693 00:37:27,620 --> 00:37:29,630 >> JASON Hirschhorn: Great. 694 00:37:29,630 --> 00:37:31,360 Koppja li jmiss ta 'linji. 695 00:37:31,360 --> 00:37:34,040 Ukoll, jekk xi ħadd ikollu l-affarijiet li żżid mal linji li aħna ghamilt, tħossok liberu li 696 00:37:34,040 --> 00:37:35,690 żid dawk ukoll. 697 00:37:35,690 --> 00:37:37,520 Iċċekkja biex tiżgura la huwa NULL. 698 00:37:37,520 --> 00:37:41,450 Min jista 'jagħti me-kodiċi I bżonn jissodisfaw dik il-linja ta 'pseudocode? 699 00:37:41,450 --> 00:37:44,430 700 00:37:44,430 --> 00:37:45,870 Archer. 701 00:37:45,870 --> 00:37:58,645 >> ARCHER: Jekk src ugwali ugwali NULL jew DST ugwali ugwali 702 00:37:58,645 --> 00:38:04,590 NULL, allura inti tirritorna - 703 00:38:04,590 --> 00:38:07,130 704 00:38:07,130 --> 00:38:07,976 >> JASON Hirschhorn: What? 705 00:38:07,976 --> 00:38:08,890 >> ARCHER: Ritorn 2? 706 00:38:08,890 --> 00:38:09,760 >> JASON Hirschhorn: Ritorn 2. 707 00:38:09,760 --> 00:38:14,400 Mela jekk src paren open ugwali ugwali NULL, jew - 708 00:38:14,400 --> 00:38:15,590 kwalunkwe li thing's - pajp? 709 00:38:15,590 --> 00:38:16,346 Pipe? 710 00:38:16,346 --> 00:38:17,140 Aħna ser sejħa hija pajp. 711 00:38:17,140 --> 00:38:22,340 Pipe, pajpijiet, DST ugwali ugwali NULL, ritorn 2. 712 00:38:22,340 --> 00:38:23,900 OK? 713 00:38:23,900 --> 00:38:26,060 Sakemm aħna qed barra ta 'bytes - 714 00:38:26,060 --> 00:38:29,820 aħna tip ta 'skipped fuq dan il-pass mill- il-parti pseudocode li tmur hawn. 715 00:38:29,820 --> 00:38:31,970 >> Iżda sakemm aħna qed barra ta 'bytes - dak ma li ħoss bħal? 716 00:38:31,970 --> 00:38:34,680 Liema tip ta 'struttura C - 717 00:38:34,680 --> 00:38:36,160 imma jien ma jużawx l-istruttura kelma, għaliex aħna qed tmur biex tibda tuża 718 00:38:36,160 --> 00:38:37,350 li f'każijiet oħra - 719 00:38:37,350 --> 00:38:39,495 iżda għodda C ma li ħoss bħal? 720 00:38:39,495 --> 00:38:39,970 >> STUDENT 19: A loop. 721 00:38:39,970 --> 00:38:40,980 >> JASON Hirschhorn: A loop. 722 00:38:40,980 --> 00:38:43,060 Ħsejjes bħal loop. 723 00:38:43,060 --> 00:38:49,670 Hekk li tista 'tagħti me l-ewwel linja tal-kodiċi loop dritt hawn? 724 00:38:49,670 --> 00:38:56,320 725 00:38:56,320 --> 00:39:01,980 Tista 'wkoll pick liema tip ta' loop trid, jekk inti tagħti me 726 00:39:01,980 --> 00:39:03,215 din il-linja tal-kodiċi. 727 00:39:03,215 --> 00:39:04,150 Hemm tliet tipi. 728 00:39:04,150 --> 00:39:06,530 Ikollok li pick. 729 00:39:06,530 --> 00:39:08,080 Nissuġġerixxi wieħed minn dawn. 730 00:39:08,080 --> 00:39:08,410 Avi. 731 00:39:08,410 --> 00:39:09,230 Liema wieħed tridu? 732 00:39:09,230 --> 00:39:09,960 >> AVI: GĦALL. 733 00:39:09,960 --> 00:39:11,460 >> JASON Hirschhorn: GĦALL. 734 00:39:11,460 --> 00:39:15,180 >> AVI: Int I ugwali żero. 735 00:39:15,180 --> 00:39:17,360 >> JASON Hirschhorn: OK. 736 00:39:17,360 --> 00:39:18,570 >> AVI: Din il-parti M'inix ċert dwar. 737 00:39:18,570 --> 00:39:29,080 Imma i huwa inqas mid-daqs ta 'sors star? 738 00:39:29,080 --> 00:39:31,128 M'inix ċert ta 'dak. 739 00:39:31,128 --> 00:39:32,580 >> JASON Hirschhorn: OK. 740 00:39:32,580 --> 00:39:35,870 >> AVI: Għaliex inti tixtieq l- daqs tal-fajl, id-dritt? 741 00:39:35,870 --> 00:39:41,090 >> JASON Hirschhorn: Allura dan probabbilment mhux se tagħtina l-daqs tal-attwali 742 00:39:41,090 --> 00:39:43,010 fajl fil-bytes. 743 00:39:43,010 --> 00:39:47,680 Allura dak li inkella jista 'nagħmlu? 744 00:39:47,680 --> 00:39:48,810 Liema hija tip ieħor ta loop? 745 00:39:48,810 --> 00:39:50,180 Jew għandna twaħħal mal-loop GĦALL? 746 00:39:50,180 --> 00:39:55,350 747 00:39:55,350 --> 00:39:57,900 >> STUDENT 20: Tista 'tagħmel loop WAQT? 748 00:39:57,900 --> 00:40:01,350 U mbagħad, dak youd tagħmel huwa you'd - 749 00:40:01,350 --> 00:40:03,930 għaliex għandna char * għall-fajl. 750 00:40:03,930 --> 00:40:07,950 Allura jekk aħna biss iżommu inkrementazzjoni li sakemm aħna'd ssib il-karattru NULL fuq 751 00:40:07,950 --> 00:40:08,500 l-aħħar ta 'dan? 752 00:40:08,500 --> 00:40:11,130 Jew l-ebda, huwa li mhux kif fajls taħdem? 753 00:40:11,130 --> 00:40:14,300 >> JASON Hirschhorn: Allura nistgħu iżommu inkrementazzjoni tad char * 754 00:40:14,300 --> 00:40:16,340 sakemm insibu l-NULL - 755 00:40:16,340 --> 00:40:18,580 >> STUDENT 20: Essenzjalment jibqgħu għaddejjin karattru minn karattru sakemm aħna hit 756 00:40:18,580 --> 00:40:21,250 l-aħħar tal-fajl. 757 00:40:21,250 --> 00:40:21,600 >> JASON Hirschhorn: Iva. 758 00:40:21,600 --> 00:40:22,560 Allura dak hu li rridu nagħmlu. 759 00:40:22,560 --> 00:40:24,545 Aħna tixtieq li żżomm qari, karattri minn karattru, sakemm aħna jiksbu l 760 00:40:24,545 --> 00:40:25,080 l-aħħar tal-fajl. 761 00:40:25,080 --> 00:40:25,375 >> STUDENT 20: Yeah. 762 00:40:25,375 --> 00:40:25,860 Sib - 763 00:40:25,860 --> 00:40:28,540 x'inhu l-aħħar jew sinjal stop fl-aħħar ta 'fajl test. 764 00:40:28,540 --> 00:40:28,620 >> JASON Hirschhorn: OK. 765 00:40:28,620 --> 00:40:30,140 Allura meta aħna tikseb sa l-aħħar tal-fajl - kif nafu aħna lħaqniha 766 00:40:30,140 --> 00:40:33,200 it-tmiem ta 'fajl? 767 00:40:33,200 --> 00:40:34,710 Jekk jien ssejjaħ - 768 00:40:34,710 --> 00:40:35,910 hekk ejja pass lura. 769 00:40:35,910 --> 00:40:37,550 X'inhu funzjoni? 770 00:40:37,550 --> 00:40:39,360 Ejja mur din il-linja dritt hawn. 771 00:40:39,360 --> 00:40:40,630 Aqra mill-fajl sors. 772 00:40:40,630 --> 00:40:41,880 Min jista 'jagħti me dik il-linja tal-kodiċi? 773 00:40:41,880 --> 00:40:45,592 774 00:40:45,592 --> 00:40:47,590 >> STUDENT 21: Fscanf? 775 00:40:47,590 --> 00:40:49,110 >> JASON Hirschhorn: Fscanf. 776 00:40:49,110 --> 00:40:49,510 OK. 777 00:40:49,510 --> 00:40:52,240 X'jiġri jekk I trid taqra, ħafna speċifikament, byte wieħed? 778 00:40:52,240 --> 00:40:55,012 779 00:40:55,012 --> 00:40:56,860 >> STUDENT 21: I do not know. 780 00:40:56,860 --> 00:40:57,110 >> JASON Hirschhorn: OK. 781 00:40:57,110 --> 00:40:59,380 Saħansitra aktar sempliċi milli fscanf - dak li hu - 782 00:40:59,380 --> 00:41:01,890 Irrid li tinqara minn fajl sors? 783 00:41:01,890 --> 00:41:03,720 Tinqara minn fajl sors. 784 00:41:03,720 --> 00:41:04,850 X'inhu funzjoni - yeah. 785 00:41:04,850 --> 00:41:05,380 >> STUDENT 22: Huwa fread? 786 00:41:05,380 --> 00:41:06,070 >> JASON Hirschhorn: Fread. 787 00:41:06,070 --> 00:41:07,550 I think ejja nibqgħu ma li wieħed għal issa. 788 00:41:07,550 --> 00:41:10,380 789 00:41:10,380 --> 00:41:13,650 Liema tip ta 'argumenti ma fread tieħu? 790 00:41:13,650 --> 00:41:17,410 >> STUDENT 22: Probabbilment l-fajl tat-tip, u mbagħad post fil-fajl? 791 00:41:17,410 --> 00:41:19,550 >> JASON Hirschhorn: X'nista 'tip here ċifra barra dak it-tip ta 'argumenti 792 00:41:19,550 --> 00:41:20,950 fread tieħu? 793 00:41:20,950 --> 00:41:23,710 >> STUDENTI MULTIPLU: Man fread. 794 00:41:23,710 --> 00:41:24,740 >> JASON Hirschhorn: Man fread u fwrite. 795 00:41:24,740 --> 00:41:25,980 Id-Dehra hang out flimkien. 796 00:41:25,980 --> 00:41:29,589 Allura fread tieħu kif ħafna argumenti? 797 00:41:29,589 --> 00:41:30,920 >> STUDENT 23: Erba. 798 00:41:30,920 --> 00:41:32,690 >> JASON Hirschhorn: Huwa jieħu erba 'argumenti. 799 00:41:32,690 --> 00:41:41,100 Huwa jieħu pointer, daqs, u li ħaġa, li huwa stramb, u xi fajl. 800 00:41:41,100 --> 00:41:42,000 OK? 801 00:41:42,000 --> 00:41:43,990 Ejja taqra dwar dan id-dritt hawn. 802 00:41:43,990 --> 00:41:49,370 "Il fread funzjoni taqra memb n elementi ta 'data, kull bytes daqs 803 00:41:49,370 --> 00:41:53,840 twil, mill-fluss indikat mill fluss, ħażna lilhom fil-post 804 00:41:53,840 --> 00:41:56,170 mogħtija minn pointer. " 805 00:41:56,170 --> 00:41:57,960 >> Allura erba 'argumenti. 806 00:41:57,960 --> 00:42:04,510 Għaliex ma I biss kopja dan, u paste dritt hawn. 807 00:42:04,510 --> 00:42:10,060 808 00:42:10,060 --> 00:42:10,770 OK. 809 00:42:10,770 --> 00:42:13,673 Hekk li tista 'tibda timla l- dawn l-argumenti għalija? 810 00:42:13,673 --> 00:42:15,840 Avi. 811 00:42:15,840 --> 00:42:17,720 >> AVI: Oħroġ l-vojt. 812 00:42:17,720 --> 00:42:20,530 Poġġi biss src. 813 00:42:20,530 --> 00:42:23,142 Oħroġ pointer u l-istilla. 814 00:42:23,142 --> 00:42:26,102 Poġġi src. 815 00:42:26,102 --> 00:42:27,050 Imbagħad - 816 00:42:27,050 --> 00:42:28,500 >> JASON Hirschhorn: So jien ser tieqaf int hemm, għaliex dan huwa żbaljat. 817 00:42:28,500 --> 00:42:32,590 818 00:42:32,590 --> 00:42:34,710 Int dritt ma src, iżda fejn għandhom src imorru? 819 00:42:34,710 --> 00:42:35,960 >> [Voices INTERPOSING] 820 00:42:35,960 --> 00:42:38,976 821 00:42:38,976 --> 00:42:41,610 >> JASON Hirschhorn: għandu jmorru fuq hawn. 822 00:42:41,610 --> 00:42:43,790 Dik hija l src - src tagħna huwa tip. 823 00:42:43,790 --> 00:42:44,610 Ejja nħarsu hawn. 824 00:42:44,610 --> 00:42:49,610 Dan qed titlob għal FILE tip *, aħna fil-fatt normalment tara minnhom bħal dik. 825 00:42:49,610 --> 00:42:57,630 Allura dan qed titlob sabiex argument ta ' tip ta 'fajl * imsejjaħ stream li src. 826 00:42:57,630 --> 00:42:58,480 OK? 827 00:42:58,480 --> 00:43:00,410 >> X'inhu d-daqs ta 'affarijiet do irridu taqra? 828 00:43:00,410 --> 00:43:03,340 Jiena ħadt dan fil- deskrizzjoni problema. 829 00:43:03,340 --> 00:43:04,370 >> STUDENT 24: byte wieħed kull darba. 830 00:43:04,370 --> 00:43:05,340 >> JASON Hirschhorn: One byte. 831 00:43:05,340 --> 00:43:08,205 Kif big huwa byte? 832 00:43:08,205 --> 00:43:11,642 Id-daqs tiegħu huwa fil-bytes, iva, liema nista 'nagħmel hemm dritt? 833 00:43:11,642 --> 00:43:12,910 >> STUDENT 25: One. 834 00:43:12,910 --> 00:43:14,730 >> JASON Hirschhorn: One. 835 00:43:14,730 --> 00:43:17,020 Dritt. 836 00:43:17,020 --> 00:43:19,940 Id-daqs tiegħu huwa unità byte, għalhekk 1 huwa 1 byte. 837 00:43:19,940 --> 00:43:22,284 Kemm nista trid taqra fi żmien. 838 00:43:22,284 --> 00:43:23,520 >> STUDENT 26: One? 839 00:43:23,520 --> 00:43:24,270 >> JASON Hirschhorn: Ħaġa waħda. 840 00:43:24,270 --> 00:43:28,540 I trid taqra ħaġa waħda tad-daqs 1, wieħed gidma fi żmien. 841 00:43:28,540 --> 00:43:32,110 U fejn nista poġġiha, ladarba I taqraha? 842 00:43:32,110 --> 00:43:35,050 843 00:43:35,050 --> 00:43:36,510 >> STUDENT 27: Destinazzjoni? 844 00:43:36,510 --> 00:43:39,270 >> JASON Hirschhorn: So I ma tista 'tpoġġi dan straight fis destinazzjoni. 845 00:43:39,270 --> 00:43:40,800 >> STUDENT 28: Inti tpoġġi gonna fis terz pointer? 846 00:43:40,800 --> 00:43:41,780 >> STUDENT 27: Sal-destinazzjoni. 847 00:43:41,780 --> 00:43:42,270 >> JASON Hirschhorn: OK. 848 00:43:42,270 --> 00:43:42,630 Yeah. 849 00:43:42,630 --> 00:43:46,820 >> STUDENT 29: Inti tista 'tiddikjara xi ħaġa li taġixxi bħala ħażna temporanja qabel. 850 00:43:46,820 --> 00:43:47,350 >> JASON Hirschhorn: OK. 851 00:43:47,350 --> 00:43:50,080 Agħti me li. 852 00:43:50,080 --> 00:43:53,930 >> STUDENT 29: file ieħor pointer, forsi? 853 00:43:53,930 --> 00:43:54,220 >> JASON Hirschhorn: OK. 854 00:43:54,220 --> 00:43:55,585 Allura dan huwa star vojt - 855 00:43:55,585 --> 00:43:57,750 huwa tip null star, u għalhekk ma għandek tkun pointer fajl. 856 00:43:57,750 --> 00:44:02,520 U jekk jien qari byte wieħed, fejn tkun post tajjeb 857 00:44:02,520 --> 00:44:03,850 li jaħżen byte wieħed? 858 00:44:03,850 --> 00:44:04,660 >> STUDENT 29: Firxa? 859 00:44:04,660 --> 00:44:05,770 >> JASON Hirschhorn: An firxa. 860 00:44:05,770 --> 00:44:07,730 OK. 861 00:44:07,730 --> 00:44:14,040 U x'iktar hija xi ħaġa li l- biss qies tal byte wieħed? 862 00:44:14,040 --> 00:44:16,980 863 00:44:16,980 --> 00:44:18,060 >> STUDENT 30: A char *? 864 00:44:18,060 --> 00:44:18,530 >> STUDENT 29: Yeah. 865 00:44:18,530 --> 00:44:19,880 >> JASON Hirschhorn: A char * mhuwiex byte wieħed. 866 00:44:19,880 --> 00:44:20,440 >> STUDENT 29: A char. 867 00:44:20,440 --> 00:44:21,810 >> JASON Hirschhorn: A char huwa byte wieħed. 868 00:44:21,810 --> 00:44:22,920 Dritt? 869 00:44:22,920 --> 00:44:26,740 Mela ejja sejħa dan buffer huwa ġeneriku isem użat għal dawn l-affarijiet biex jaħżnu 870 00:44:26,740 --> 00:44:27,910 xi ħaġa temporanjament. 871 00:44:27,910 --> 00:44:30,880 So I joħolqu buffer. 872 00:44:30,880 --> 00:44:31,150 Dritt? 873 00:44:31,150 --> 00:44:32,990 Iżda dan ma tieħu vojt *. 874 00:44:32,990 --> 00:44:38,660 Allura forsi inti dritt, li għandu jkun buffer mid-daqs 0. 875 00:44:38,660 --> 00:44:41,070 Allura huwa jaħżen waħda - 876 00:44:41,070 --> 00:44:41,280 dritt. 877 00:44:41,280 --> 00:44:43,560 >> Minħabba dan id-dritt hawn - char buffer huwa karattru, iżda 878 00:44:43,560 --> 00:44:45,110 dan jieħu vojt * - 879 00:44:45,110 --> 00:44:45,870 a pointer. 880 00:44:45,870 --> 00:44:50,640 So I tista 'tagħmel dan u issa buffer hija pointer. 881 00:44:50,640 --> 00:44:53,214 X'aktar jista 'nagħmel? 882 00:44:53,214 --> 00:44:55,775 >> STUDENT 31: Poġġi stilla li jmiss char. 883 00:44:55,775 --> 00:44:58,380 >> JASON Hirschhorn: I jista ' ħolqu dan char *. 884 00:44:58,380 --> 00:45:00,216 OK. 885 00:45:00,216 --> 00:45:03,131 X'hemm ħaġa oħra I tista 'tagħmel? 886 00:45:03,131 --> 00:45:04,050 Jew ejja jmorru ma 'dan wieħed. 887 00:45:04,050 --> 00:45:05,740 Char * buffer, iva, liema npoġġi fil hawn? 888 00:45:05,740 --> 00:45:08,290 889 00:45:08,290 --> 00:45:09,310 >> STUDENT 31: Riserva. 890 00:45:09,310 --> 00:45:10,560 >> JASON Hirschhorn: Riserva. 891 00:45:10,560 --> 00:45:12,640 892 00:45:12,640 --> 00:45:14,500 Buffer hija pointer għal char. 893 00:45:14,500 --> 00:45:19,480 U f'dak il-lok, aħna qed tqegħid byte wieħed ta 'xi ħaġa li aħna stajt taqra. 894 00:45:19,480 --> 00:45:19,980 Yeah. 895 00:45:19,980 --> 00:45:20,700 Avi. 896 00:45:20,700 --> 00:45:21,230 >> AVI: Just a quick kwistjoni. 897 00:45:21,230 --> 00:45:24,440 Tixtieq li malloc buffer? 898 00:45:24,440 --> 00:45:25,930 >> JASON Hirschhorn: Min jista ' twieġeb din il-kwistjoni? 899 00:45:25,930 --> 00:45:30,210 >> STUDENT 32: Well, ma verament punt li xejn dritt issa, hekk - 900 00:45:30,210 --> 00:45:32,610 >> JASON Hirschhorn: Imma irridu malloc dan? 901 00:45:32,610 --> 00:45:35,600 >> STUDENT 32: Jekk ġejt biex tagħmel dan li mod, I raden, yeah, għaliex youd bżonn 902 00:45:35,600 --> 00:45:36,990 xi post għal dan il-punt li. 903 00:45:36,990 --> 00:45:38,350 >> JASON Hirschhorn: Do we għandek malloc dan? 904 00:45:38,350 --> 00:45:40,580 >> STUDENT 33: Jekk int ser jużawha barra tal-linja. 905 00:45:40,580 --> 00:45:42,524 >> JASON Hirschhorn: Are we ser jużawha barra tal-linja? 906 00:45:42,524 --> 00:45:44,392 >> STUDENT 34: Iva. 907 00:45:44,392 --> 00:45:44,860 >> STUDENT 35: Stenna. 908 00:45:44,860 --> 00:45:46,980 Do irridu li tiddikjaraha fil-linja li lil hinn? 909 00:45:46,980 --> 00:45:50,100 >> JASON Hirschhorn: So I raden għandna xi psewdo WAQT loop hawnhekk li aħna qed 910 00:45:50,100 --> 00:45:51,950 jippruvaw figura, li aħna ma gotten li s'issa. 911 00:45:51,950 --> 00:45:54,710 912 00:45:54,710 --> 00:45:56,010 Aħna ma bżonn li malloc dan. 913 00:45:56,010 --> 00:45:59,310 Aħna qed joperaw fil-prinċipali, huwa biss se biex jintużaw ġewwa dan loop. 914 00:45:59,310 --> 00:46:00,540 Dan ma jeħtieġx li jeżistu barra dan. 915 00:46:00,540 --> 00:46:02,340 >> Allura jista 'jkun fattur varjabbli lokali. 916 00:46:02,340 --> 00:46:03,925 Għandek pointer biex varjabbli lokali. 917 00:46:03,925 --> 00:46:07,984 918 00:46:07,984 --> 00:46:09,590 >> STUDENT 36: Imma din mhix tipponta lejn xejn. 919 00:46:09,590 --> 00:46:11,540 >> JASON Hirschhorn: Le, mhuwiex initialized għal xejn. 920 00:46:11,540 --> 00:46:12,790 Iżda aħna ma tkunx qed tmur biex jużawh ukoll. 921 00:46:12,790 --> 00:46:15,300 Aħna qed tmur biex xi ħaġa fil- hija l-ewwel darba nużawha. 922 00:46:15,300 --> 00:46:16,580 Allura li jidher OK. 923 00:46:16,580 --> 00:46:17,780 Hekk aħna ma bżonn malloc hawn. 924 00:46:17,780 --> 00:46:19,360 U naħseb li huwa OK kif inhu. 925 00:46:19,360 --> 00:46:24,350 926 00:46:24,350 --> 00:46:25,790 OK. 927 00:46:25,790 --> 00:46:27,190 Għandna l-linja fread. 928 00:46:27,190 --> 00:46:28,490 Ejja nagħmlu l-linja li jmiss. 929 00:46:28,490 --> 00:46:32,984 >> Jekk irridu li jikteb lill fajl, dak li huwa funzjoni tajba għall-użu li tagħmel dan? 930 00:46:32,984 --> 00:46:33,770 >> STUDENT 37: Fwrite? 931 00:46:33,770 --> 00:46:35,140 >> STUDENT 38: Fprintf? 932 00:46:35,140 --> 00:46:36,010 >> JASON Hirschhorn: Fprintf hija waħda. 933 00:46:36,010 --> 00:46:37,260 X'hemm wieħed ieħor? 934 00:46:37,260 --> 00:46:37,680 >> STUDENT 39: Fwrite. 935 00:46:37,680 --> 00:46:38,510 >> JASON Hirschhorn: Fwrite. 936 00:46:38,510 --> 00:46:41,250 U għall-iskopijiet tagħna, fwrite, li rajna hawn, huwa 937 00:46:41,250 --> 00:46:42,500 probabbilment l-aħjar għażla. 938 00:46:42,500 --> 00:46:51,970 939 00:46:51,970 --> 00:46:53,950 Huwa jieħu erba 'argumenti kif ukoll. 940 00:46:53,950 --> 00:46:57,570 Nishant, inti tista 'tagħti me-argumenti? 941 00:46:57,570 --> 00:47:00,570 >> Nishant: għaddejjin L-ewwel wieħed li jkun biss buffer. 942 00:47:00,570 --> 00:47:02,210 >> JASON Hirschhorn: OK. 943 00:47:02,210 --> 00:47:06,752 >> Nishant: It-tieni l-waħda biss se tkun l-1. 944 00:47:06,752 --> 00:47:09,510 It-tielet wieħed għaddej biex tkun 1. 945 00:47:09,510 --> 00:47:11,470 U r-raba wieħed se tkun DST. 946 00:47:11,470 --> 00:47:18,010 947 00:47:18,010 --> 00:47:19,550 >> JASON Hirschhorn: Does xi ħadd ikollu xi mistoqsijiet dwar dik il-linja? 948 00:47:19,550 --> 00:47:28,370 949 00:47:28,370 --> 00:47:29,130 Li jidher tajjeb. 950 00:47:29,130 --> 00:47:29,590 OK. 951 00:47:29,590 --> 00:47:34,250 Allura issa jidher qisu l-unika ħaġa li aħna qed nieqsa - fil-fatt, ejja ikteb 952 00:47:34,250 --> 00:47:35,090 dan l-aħħar linja. 953 00:47:35,090 --> 00:47:36,300 Agħlaq il-fajls. 954 00:47:36,300 --> 00:47:38,880 Min jista 'finitura us up miktub dawn l-aħħar żewġ linji? 955 00:47:38,880 --> 00:47:39,120 Iva. 956 00:47:39,120 --> 00:47:39,850 Jiddispjacini, dak l-isem tiegħek? 957 00:47:39,850 --> 00:47:40,580 >> LUCY: Lucy. 958 00:47:40,580 --> 00:47:41,580 >> JASON Hirschhorn: Lucy. 959 00:47:41,580 --> 00:47:47,560 >> LUCY: src Fclose u mbagħad destinazzjoni fclose. 960 00:47:47,560 --> 00:47:52,430 >> JASON Hirschhorn: Fclose, paren miftuħa, src, paren qrib, virgola. 961 00:47:52,430 --> 00:47:53,680 U fclose - 962 00:47:53,680 --> 00:47:57,560 963 00:47:57,560 --> 00:47:58,090 yeah? 964 00:47:58,090 --> 00:48:01,710 >> LUCY: parentesi Open, DST u mbagħad virgola. 965 00:48:01,710 --> 00:48:02,520 >> JASON Hirschhorn: Great. 966 00:48:02,520 --> 00:48:04,338 U dak li għandi jinkludi fl-aħħar? 967 00:48:04,338 --> 00:48:05,210 >> LUCY: Ritorn 0. 968 00:48:05,210 --> 00:48:05,570 >> JASON Hirschhorn: Ritorn 0. 969 00:48:05,570 --> 00:48:06,820 Għandi? 970 00:48:06,820 --> 00:48:10,560 971 00:48:10,560 --> 00:48:12,590 Just mistoqsija. 972 00:48:12,590 --> 00:48:14,957 Do we għandhom jinkludu ritorn 0? 973 00:48:14,957 --> 00:48:16,240 >> STUDENTI MULTIPLU: Le 974 00:48:16,240 --> 00:48:16,430 >> JASON Hirschhorn: Le 975 00:48:16,430 --> 00:48:18,090 Main ma awtomatikament jekk ikollok l-aħħar. 976 00:48:18,090 --> 00:48:20,580 Imma naħseb li huwa sabiħ li jinkludu b'mod espliċitu. 977 00:48:20,580 --> 00:48:23,860 Speċjalment meta aħna qed jirritornaw oħra affarijiet matul il-programm. 978 00:48:23,860 --> 00:48:24,810 OK. 979 00:48:24,810 --> 00:48:26,230 Dan huwa dak li aħna qed nieqsa - 980 00:48:26,230 --> 00:48:28,520 WAQT liema? 981 00:48:28,520 --> 00:48:31,630 Min jistgħu jaħsbu xi - 982 00:48:31,630 --> 00:48:35,240 għandha xi sens ta 'liema affarijiet tista 'tmur fil hemm? 983 00:48:35,240 --> 00:48:37,350 Anki jekk huwa biss f'xi pseudocode bħal lingwa? 984 00:48:37,350 --> 00:48:41,330 >> Liema huma aħna verament - liema do irridu imorru sa? 985 00:48:41,330 --> 00:48:41,980 Yeah, Lucy. 986 00:48:41,980 --> 00:48:43,240 >> LUCY: It-tmiem tal-fajl. 987 00:48:43,240 --> 00:48:44,990 >> JASON Hirschhorn: It-tmiem tal-fajl. 988 00:48:44,990 --> 00:48:49,280 Allura dak li taħseb jfisser minn tmiem tal-fajl? 989 00:48:49,280 --> 00:48:50,955 >> LUCY: Ladarba inti tilħaq il- tmiem tal-file, stop. 990 00:48:50,955 --> 00:48:51,240 >> JASON Hirschhorn: OK. 991 00:48:51,240 --> 00:48:53,460 Allura ladarba aħna jilħqu t-tmiem tal-file. 992 00:48:53,460 --> 00:48:56,893 Kif inkunu nafu meta aħna lħaqniha l-aħħar tal-fajl? 993 00:48:56,893 --> 00:48:59,900 >> STUDENT 40: I think buffer se jiġu ffissati għal NULL. 994 00:48:59,900 --> 00:49:01,885 >> STUDENT 41: Riserva ikun iddikjarat ġewwa l-linja. 995 00:49:01,885 --> 00:49:03,670 >> JASON Hirschhorn: Allura inti taħseb buffer se jiġu ffissati għal NULL. 996 00:49:03,670 --> 00:49:05,850 Għaliex kieku buffer jiġu stabbiliti biex NULL? 997 00:49:05,850 --> 00:49:10,420 >> STUDENT 40: Għaliex meta inti fread, int jippruvaw joħolqu 998 00:49:10,420 --> 00:49:13,528 xejn fis buffer. 999 00:49:13,528 --> 00:49:13,980 >> JASON Hirschhorn: OK. 1000 00:49:13,980 --> 00:49:15,550 Allura inti qed jaħsbu fread - 1001 00:49:15,550 --> 00:49:19,000 meta konna laħqu t-tmiem tal- file, x'inhu fread se jagħmlu? 1002 00:49:19,000 --> 00:49:21,230 Naħseb li l-kwistjoni għandna biex insemmu. 1003 00:49:21,230 --> 00:49:21,960 X'jagħmel fread do? 1004 00:49:21,960 --> 00:49:25,640 Ma tpoġġi NULL fl buffer, jew ma tagħmel xi ħaġa oħra? 1005 00:49:25,640 --> 00:49:27,510 Kif nistgħu ċifra barra dak li ma? 1006 00:49:27,510 --> 00:49:28,190 >> STUDENT 42: Man. 1007 00:49:28,190 --> 00:49:28,810 >> JASON Hirschhorn: Man. 1008 00:49:28,810 --> 00:49:32,280 Mela ejja nħarsu hawn fuq. 1009 00:49:32,280 --> 00:49:34,000 Ritorn valur. 1010 00:49:34,000 --> 00:49:39,620 Fuq is-suċċess, fread u fwrite jirritorna l- numru ta 'oġġetti jaqraw jew jiktbu. 1011 00:49:39,620 --> 00:49:43,700 Dan in-numru huwa ugwali għan-numru ta 'bytes trasferiti biss meta d-daqs huwa 1. 1012 00:49:43,700 --> 00:49:47,780 Jekk isir żball, jew it-tmiem tal- fajl jintlaħaq, il-valur tar-ritorn hija 1013 00:49:47,780 --> 00:49:51,490 għadd oġġett qasir jew 0. 1014 00:49:51,490 --> 00:49:57,860 >> Allura għall-għanijiet tagħna, jekk jilħaq fread l-aħħar tal-fajl, u jaqra minn 1015 00:49:57,860 --> 00:50:02,100 l-aħħar tal-fajl, hemm xejn xellug biex jinqraw, dak li huwa għaddej biex jirritornaw? 1016 00:50:02,100 --> 00:50:03,290 >> STUDENT 43: Zero? 1017 00:50:03,290 --> 00:50:04,540 >> JASON Hirschhorn: What? 1018 00:50:04,540 --> 00:50:05,300 >> STUDENT 43: Zero? 1019 00:50:05,300 --> 00:50:05,690 >> JASON Hirschhorn: Zero. 1020 00:50:05,690 --> 00:50:06,940 Huwa ser jirritorna żero. 1021 00:50:06,940 --> 00:50:09,360 1022 00:50:09,360 --> 00:50:13,010 Allura aħna nafu li fread, meta konna laħqu t-tmiem tal-fajl, huwa għaddej 1023 00:50:13,010 --> 00:50:13,690 li jirritornaw żero. 1024 00:50:13,690 --> 00:50:17,460 Kif nistgħu nużaw dan għall-vantaġġ tagħna? 1025 00:50:17,460 --> 00:50:21,733 >> AVI: Tista 'tiddikjara varjabbli barra tal-linja imsejħa check. 1026 00:50:21,733 --> 00:50:27,040 Jekk check ugwali - 1027 00:50:27,040 --> 00:50:28,190 għal issa - wieħed. 1028 00:50:28,190 --> 00:50:28,920 >> JASON Hirschhorn: OK. 1029 00:50:28,920 --> 00:50:38,050 >> AVI: U allura inti tista 'tpoġġi IF dikjarazzjoni dritt wara fread tgħid jekk 1030 00:50:38,050 --> 00:50:42,600 fread ugwali zero - 1031 00:50:42,600 --> 00:50:43,850 no. 1032 00:50:43,850 --> 00:50:46,002 1033 00:50:46,002 --> 00:50:47,252 >> JASON Hirschhorn: Min jistgħu jgħinu Avi out? 1034 00:50:47,252 --> 00:50:49,690 1035 00:50:49,690 --> 00:50:52,410 >> AVI: X'inhu l-valur lura mill fread? 1036 00:50:52,410 --> 00:50:54,060 >> JASON Hirschhorn: Aħna biss marru fuq li. 1037 00:50:54,060 --> 00:50:55,450 >> AVI: Kif inti jirrappreżentaha? 1038 00:50:55,450 --> 00:50:57,190 >> JASON Hirschhorn: Allura dan jirritorna - ejja tfittex up hawn - dan jirritorna a 1039 00:50:57,190 --> 00:50:59,340 size_t, li huwa essenzjalment integer. 1040 00:50:59,340 --> 00:51:02,240 1041 00:51:02,240 --> 00:51:03,410 Allura dan jirritorna numru sħiħ. 1042 00:51:03,410 --> 00:51:05,160 U fil-każ tagħna, se ritorn 1 jew 0 - 1043 00:51:05,160 --> 00:51:08,760 1 jekk tinqara ħaġa waħda - byte wieħed, u 0 jekk aħna ħadthom laħqu t-tmiem. 1044 00:51:08,760 --> 00:51:13,560 1045 00:51:13,560 --> 00:51:16,450 Mela jekk fread - 1046 00:51:16,450 --> 00:51:16,855 yeah? 1047 00:51:16,855 --> 00:51:20,330 >> STUDENT 45: Ma tistax inti biss tpoġġi l-sħiħ fread (buffer, 1, 1, SRC) fil- 1048 00:51:20,330 --> 00:51:21,660 filwaqt li loop? 1049 00:51:21,660 --> 00:51:26,510 >> JASON Hirschhorn: Allura inti tipproponi tagħmel dan fil hemmhekk? 1050 00:51:26,510 --> 00:51:27,600 >> [Voices INTERPOSING] 1051 00:51:27,600 --> 00:51:29,520 >> JASON Hirschhorn: Żomm fuq. 1052 00:51:29,520 --> 00:51:30,885 Allura aħna qed ħelset lid 'dak. 1053 00:51:30,885 --> 00:51:33,300 Allura inti qed tipproponi tqegħid fread fis hemmhekk? 1054 00:51:33,300 --> 00:51:35,457 Dak li għandna wkoll timxi jekk inti tixtieq li tagħmel dan? 1055 00:51:35,457 --> 00:51:36,740 >> STUDENT 45: Il-buffer barra. 1056 00:51:36,740 --> 00:51:38,110 >> JASON Hirschhorn: Aħna għandhom wkoll timxi dan hawn. 1057 00:51:38,110 --> 00:51:41,700 >> STUDENT 45: Iżda ma li kontinwament jġorrhom quddiem? 1058 00:51:41,700 --> 00:51:42,950 >> [Voices INTERPOSING] 1059 00:51:42,950 --> 00:51:46,540 1060 00:51:46,540 --> 00:51:47,470 >> JASON Hirschhorn: OK. 1061 00:51:47,470 --> 00:51:50,570 Allura dan huwa dak Okshar propost. 1062 00:51:50,570 --> 00:51:51,930 Aħna joħolqu buffer tagħna. 1063 00:51:51,930 --> 00:51:57,020 Aħna fread WAQT, allura aħna fwrite. 1064 00:51:57,020 --> 00:51:59,760 Ħsibijiet dwar dan? 1065 00:51:59,760 --> 00:52:04,050 >> STUDENT 46: biss mistoqsija tiegħi hija, kieku fil-fatt twettaq il-fread kmand? 1066 00:52:04,050 --> 00:52:06,175 >> JASON Hirschhorn: mistoqsija Great. 1067 00:52:06,175 --> 00:52:11,050 Meta int tqegħid sejħa funzjoni ġewwa ta 'kondizzjoni, ma li 1068 00:52:11,050 --> 00:52:12,300 sejħa funzjoni tesegwixxi? 1069 00:52:12,300 --> 00:52:15,760 1070 00:52:15,760 --> 00:52:17,770 Imxejna eżempji ta 'dan qabel. 1071 00:52:17,770 --> 00:52:24,900 1072 00:52:24,900 --> 00:52:25,660 Dritt? 1073 00:52:25,660 --> 00:52:26,125 >> STUDENT 46: OK. 1074 00:52:26,125 --> 00:52:26,590 Yeah. 1075 00:52:26,590 --> 00:52:30,140 Għalhekk ma tesegwixxi. 1076 00:52:30,140 --> 00:52:31,790 >> JASON Hirschhorn: Imxejna affarijiet dehru qabel bħal dik, fejn għandna 1077 00:52:31,790 --> 00:52:33,550 sejħa funzjoni ġewwa ta 'kundizzjoni. 1078 00:52:33,550 --> 00:52:35,540 Does li sejħa funzjoni tesegwixxi? 1079 00:52:35,540 --> 00:52:36,350 Iva. 1080 00:52:36,350 --> 00:52:37,410 Għalhekk it-tweġiba hija iva. 1081 00:52:37,410 --> 00:52:41,010 Din is-sejħa funzjoni se tesegwixxi. 1082 00:52:41,010 --> 00:52:42,418 Iżda għal darb'oħra, huwa dak li rridu? 1083 00:52:42,418 --> 00:52:49,250 1084 00:52:49,250 --> 00:52:52,204 >> Liema huwa mod wieħed kif nistgħu figura out jekk huwa dak li rridu? 1085 00:52:52,204 --> 00:52:53,470 >> STUDENTI MULTIPLU: Run? 1086 00:52:53,470 --> 00:52:54,460 >> JASON Hirschhorn: Nistgħu run. 1087 00:52:54,460 --> 00:52:57,500 Iżda qabel ma nagħmlu dan, nistgħu raġuni wkoll permezz ta 'dan. 1088 00:52:57,500 --> 00:52:57,920 Jekk - 1089 00:52:57,920 --> 00:53:01,920 ngħidu aħna għandna byte wieħed fil tagħna fajl, aħna ser jiksbu l hawn, 1090 00:53:01,920 --> 00:53:02,660 aħna ser jiksbu għal dan il-kodiċi. 1091 00:53:02,660 --> 00:53:03,620 Dan se jibqa 'għaddej. 1092 00:53:03,620 --> 00:53:07,780 fread se terġa 'lura byte wieħed u jaħżnuh fil-buffer. 1093 00:53:07,780 --> 00:53:11,290 U dan se tevalwa 1, dritt, wara li jirritorna 1. 1094 00:53:11,290 --> 00:53:12,640 >> Għalhekk, filwaqt li 1. 1095 00:53:12,640 --> 00:53:15,325 Ma jfissirx li l-kodiċi ġewwa l loop WAQT se tesegwixxi? 1096 00:53:15,325 --> 00:53:15,453 >> STUDENT 47: Yeah. 1097 00:53:15,453 --> 00:53:16,040 Huwa veru. 1098 00:53:16,040 --> 00:53:16,290 >> JASON Hirschhorn: Iva. 1099 00:53:16,290 --> 00:53:17,490 1 huwa veru. 1100 00:53:17,490 --> 00:53:18,240 Mhuwiex 0. 1101 00:53:18,240 --> 00:53:20,360 Allura l-kodiċi ġewwa hawnhekk se tesegwixxi. 1102 00:53:20,360 --> 00:53:22,300 Allura aħna ser jiktbu dak. 1103 00:53:22,300 --> 00:53:25,340 Aħna ser jimxu lura għal dan line għal darb'oħra. 1104 00:53:25,340 --> 00:53:26,850 Issa għandna - 1105 00:53:26,850 --> 00:53:28,550 aħna qed fl-aħħar tal-fajl tagħna. 1106 00:53:28,550 --> 00:53:30,980 Naqraw mill-aħħar tal-fajl tagħna, għaliex aħna biss kellhom byte wieħed fiha. 1107 00:53:30,980 --> 00:53:34,270 >> Fread jirritorna 0, ħwienet xi ħaġa buffer. 1108 00:53:34,270 --> 00:53:35,890 I onestament ma nafx dak huwa jaħżen fil buffer. 1109 00:53:35,890 --> 00:53:38,380 Nistgħu probabbilment tfittex up biex tara dak li tagħmel. 1110 00:53:38,380 --> 00:53:40,130 Li jien onestament ma nafx. 1111 00:53:40,130 --> 00:53:43,090 Ma nafux, quién dak huwa jaħżen fil buffer? 1112 00:53:43,090 --> 00:53:44,010 Iżda dan ma ritorn 0. 1113 00:53:44,010 --> 00:53:45,440 U se Filwaqt 0 tesegwixxi? 1114 00:53:45,440 --> 00:53:49,950 1115 00:53:49,950 --> 00:53:51,180 >> WAQT 0, mhux se jwettqu. 1116 00:53:51,180 --> 00:53:54,030 Mela allura aħna ser jimxu stabbiliti hawn. 1117 00:53:54,030 --> 00:53:58,870 Mela ejja jiksbu turija tal-idejn jekk dan huwa l-kodiċi għandna run, jew jekk aħna 1118 00:53:58,870 --> 00:54:00,140 għandha tagħmel bidliet ewwel. 1119 00:54:00,140 --> 00:54:02,180 Mela jekk inti taħseb - għandek tivvota. 1120 00:54:02,180 --> 00:54:06,885 Jekk taħseb li għandna run dan il-kodiċi kif inhu, jekk jogħġbok jgħollu naħa tiegħek. 1121 00:54:06,885 --> 00:54:12,440 1122 00:54:12,440 --> 00:54:13,400 >> OK. 1123 00:54:13,400 --> 00:54:14,315 Hemm wieħed - 1124 00:54:14,315 --> 00:54:17,260 do għandek xi mistoqsija, tħassib? 1125 00:54:17,260 --> 00:54:18,080 Yeah. 1126 00:54:18,080 --> 00:54:21,240 >> STUDENT 48: Wara nimxu buffer barra tal-loop, do we 1127 00:54:21,240 --> 00:54:22,670 għandek malloc dan? 1128 00:54:22,670 --> 00:54:23,310 >> JASON Hirschhorn: mistoqsija Great. 1129 00:54:23,310 --> 00:54:26,670 Wara nimxu bafer barra tal- loop, għandna biex malloc dan? 1130 00:54:26,670 --> 00:54:28,400 Din hija kwistjoni ambitu. 1131 00:54:28,400 --> 00:54:32,130 Jekk aħna initialize buffer barra ta 'dan loop, se jeżistu 1132 00:54:32,130 --> 00:54:33,534 ġewwa tal-linja? 1133 00:54:33,534 --> 00:54:35,230 >> STUDENTI MULTIPLU: Iva. 1134 00:54:35,230 --> 00:54:35,580 >> JASON Hirschhorn: Iva. 1135 00:54:35,580 --> 00:54:40,100 Tkun tkopri l-ġewwa mill-linja, u, verament, xejn taħt dan ġewwa 1136 00:54:40,100 --> 00:54:42,460 ta 'dan il-kodiċi, inkluż l- affarijiet ġewwa hawn. 1137 00:54:42,460 --> 00:54:43,930 Hekk aħna ma bżonn li malloc dan. 1138 00:54:43,930 --> 00:54:47,766 Huwa varjabbli lokali, u l-ambitu tagħha għadu jinkludi l-loop. 1139 00:54:47,766 --> 00:54:49,540 >> STUDENT 49: Għandna bżonn ħielsa it? 1140 00:54:49,540 --> 00:54:51,770 >> JASON Hirschhorn: Do we bżonn buffer free? 1141 00:54:51,770 --> 00:54:53,860 >> STUDENT 49: Yeah, jekk aħna ma malloc. 1142 00:54:53,860 --> 00:54:55,750 >> JASON Hirschhorn: Do we bżonn buffer free? 1143 00:54:55,750 --> 00:54:57,160 Aħna ma. 1144 00:54:57,160 --> 00:55:01,280 Għal darb'oħra, huwa varjabbli lokali, hekk aħna ma bżonn biex ħielsa minnha. 1145 00:55:01,280 --> 00:55:02,170 OK. 1146 00:55:02,170 --> 00:55:03,480 Ejja naraw x'jiġri. 1147 00:55:03,480 --> 00:55:17,290 1148 00:55:17,290 --> 00:55:18,220 Għalhekk huwa uninitialized. 1149 00:55:18,220 --> 00:55:20,830 Dan kien dak li xi ħaġa li Marcus proposti aktar kmieni. 1150 00:55:20,830 --> 00:55:25,340 Allura aħna għandna dan l-iżball, buffer varjabbli huwa uninitialized meta użat hawnhekk. 1151 00:55:25,340 --> 00:55:26,590 >> Kif nistgħu jiffissaw dan? 1152 00:55:26,590 --> 00:55:29,460 1153 00:55:29,460 --> 00:55:30,960 >> STUDENT 50: malloc dan? 1154 00:55:30,960 --> 00:55:31,770 >> STUDENT 51: Ugwali NULL? 1155 00:55:31,770 --> 00:55:33,000 >> STUDENT 52: Say buffer ugwali NULL. 1156 00:55:33,000 --> 00:55:34,250 >> JASON Hirschhorn: OK. 1157 00:55:34,250 --> 00:55:40,040 1158 00:55:40,040 --> 00:55:40,770 Jidher tajjeb. 1159 00:55:40,770 --> 00:55:42,410 Għandna issa. 1160 00:55:42,410 --> 00:55:45,630 Ejja tinħoloq xi ħaġa li jippruvaw ikkupjar. 1161 00:55:45,630 --> 00:56:08,990 1162 00:56:08,990 --> 00:56:10,490 Allura aħna għandna fajl test tagħna. 1163 00:56:10,490 --> 00:56:11,740 Kif nistgħu run dan il-programm? 1164 00:56:11,740 --> 00:56:14,140 1165 00:56:14,140 --> 00:56:15,472 Yeah. 1166 00:56:15,472 --> 00:56:22,230 >> STUDENT 53: Tista 'tagħmel dot mmejla cp, test.txt. 1167 00:56:22,230 --> 00:56:25,140 U allura inti tista 'isem ieħor fajl li se taħżen fis. 1168 00:56:25,140 --> 00:56:25,510 >> JASON Hirschhorn: OK. 1169 00:56:25,510 --> 00:56:27,380 Aħna ser sejħa hija out.txt. 1170 00:56:27,380 --> 00:56:28,630 Kessaħ? 1171 00:56:28,630 --> 00:56:31,700 1172 00:56:31,700 --> 00:56:34,320 Tort seg. 1173 00:56:34,320 --> 00:56:35,570 Ħsibijiet dwar it-tort seg? 1174 00:56:35,570 --> 00:56:40,900 1175 00:56:40,900 --> 00:56:41,390 Dan huwa kbir. 1176 00:56:41,390 --> 00:56:45,040 Kif nistgħu taf fejn it-tort seg hu? 1177 00:56:45,040 --> 00:56:45,680 What? 1178 00:56:45,680 --> 00:56:45,990 >> STUDENT 54: GDB. 1179 00:56:45,990 --> 00:56:47,240 >> JASON Hirschhorn: GDB. 1180 00:56:47,240 --> 00:56:51,400 1181 00:56:51,400 --> 00:56:55,300 We run GDB billi tikteb GDB dot mmejla, l-isem tal-programm tagħna. 1182 00:56:55,300 --> 00:56:57,020 Ebda argumenti linja tal-kmand hemmhekk. 1183 00:56:57,020 --> 00:56:59,570 Aħna ser jistabbilixxu 'fini fuq prinċipali. 1184 00:56:59,570 --> 00:57:02,190 Jekk nixtieq li jibdew GDB, x'għandi nagħmel? 1185 00:57:02,190 --> 00:57:02,730 >> STUDENT 55: R. 1186 00:57:02,730 --> 00:57:08,910 >> JASON Hirschhorn: R. U allura dak? 1187 00:57:08,910 --> 00:57:09,400 >> STUDENT 55: L-argumenti? 1188 00:57:09,400 --> 00:57:10,650 >> JASON Hirschhorn: Imbagħad il- argumenti kmand tal-linja. 1189 00:57:10,650 --> 00:57:15,890 1190 00:57:15,890 --> 00:57:17,120 Ejja walk permezz. 1191 00:57:17,120 --> 00:57:19,090 N huwa biss tieħu me linja b'linja. 1192 00:57:19,090 --> 00:57:21,450 Jien se jmorru sa I nikseb tort seg tiegħi. 1193 00:57:21,450 --> 00:57:22,700 Hemm tort seg tiegħi. 1194 00:57:22,700 --> 00:57:24,960 1195 00:57:24,960 --> 00:57:27,875 Jidher qisu fread kkawżata tort seg tiegħi. 1196 00:57:27,875 --> 00:57:30,570 1197 00:57:30,570 --> 00:57:32,770 Naf fread kkawżati tort seg tiegħi, minħabba li kienet l- 1198 00:57:32,770 --> 00:57:34,950 line aħna biss esegwiti. 1199 00:57:34,950 --> 00:57:36,530 >> U l-unika ħaġa li kien jiġri f'dik il-linja - 1200 00:57:36,530 --> 00:57:37,520 żewġ affarijiet kienu qed jiġri. 1201 00:57:37,520 --> 00:57:40,610 Fread kien għaddej, u mbagħad konna jagħmlu xi kontroll WAQT. 1202 00:57:40,610 --> 00:57:44,820 Jien lest li bet li l WAQT verifika ma kienet qed tikkawża tort seg tiegħi. 1203 00:57:44,820 --> 00:57:46,950 Ħafna probabbli, fread kien jikkawżaw tort seg tiegħi. 1204 00:57:46,950 --> 00:57:49,260 I wkoll tara xi ħaġa hawn, memcopy. 1205 00:57:49,260 --> 00:57:50,500 >> Kopja memorja. 1206 00:57:50,500 --> 00:57:53,820 Ħsejjes bħal jiċċaqilqu memorja minn post għall-ieħor. 1207 00:57:53,820 --> 00:57:56,890 Ħsejjes bħal xi ħaġa li jiġri fil fread, forsi xi memorja 1208 00:57:56,890 --> 00:57:58,910 jiċċaqalqu minn hawn hawn. 1209 00:57:58,910 --> 00:58:01,740 1210 00:58:01,740 --> 00:58:03,860 Ejja jgħaddu din darb'oħra. 1211 00:58:03,860 --> 00:58:06,900 Kif nista 'tibda dan matul u run mill-ġdid? 1212 00:58:06,900 --> 00:58:08,092 Yeah. 1213 00:58:08,092 --> 00:58:15,140 >> STUDENT 56: Għandek bżonn biex l ampersand qabel buffer? 1214 00:58:15,140 --> 00:58:17,800 >> JASON Hirschhorn: So ampersand qabel buffer jagħtu me l-indirizz tal- 1215 00:58:17,800 --> 00:58:22,330 buffer, li huwa char *. 1216 00:58:22,330 --> 00:58:25,250 Ejja run permezz ta 'dan wieħed aktar ħin. 1217 00:58:25,250 --> 00:58:28,248 Kif nista run permezz tiegħu waħda aktar ħin? 1218 00:58:28,248 --> 00:58:29,210 >> STUDENT 57: Tista 'biss tip darb'oħra? 1219 00:58:29,210 --> 00:58:32,050 >> JASON Hirschhorn: Just tip run mill-ġdid. 1220 00:58:32,050 --> 00:58:33,415 Allura aħna qed mhux se jesegwixxi din il-linja. 1221 00:58:33,415 --> 00:58:36,250 1222 00:58:36,250 --> 00:58:39,240 Allura buffer hija pointer NULL. 1223 00:58:39,240 --> 00:58:40,490 Tikkoreġi? 1224 00:58:40,490 --> 00:58:45,870 1225 00:58:45,870 --> 00:58:47,060 Huwa tipponta lejn - ejja ara. 1226 00:58:47,060 --> 00:58:48,500 Jekk għandna tagħna - 1227 00:58:48,500 --> 00:58:50,430 tfassal stampa ta 'malajr ta' dan. 1228 00:58:50,430 --> 00:58:53,500 Jista kulħadd ara jekk I jiktbu hawn fuq? 1229 00:58:53,500 --> 00:59:02,890 >> Allura fil-ċmieni, għandna lokali varjabbli u huwa msejjaħ buffer, u 1230 00:59:02,890 --> 00:59:08,230 huwa pointer għal char. 1231 00:59:08,230 --> 00:59:10,325 X'inhu l-indirizz huwa dan char fi? 1232 00:59:10,325 --> 00:59:12,550 >> STUDENT 58: 0x0. 1233 00:59:12,550 --> 00:59:13,400 >> JASON Hirschhorn: Dritt. 1234 00:59:13,400 --> 00:59:14,200 Dak hu li dan huwa. 1235 00:59:14,200 --> 00:59:17,600 Fil hawn, ġewwa buffer, huwa maħżun 0x0. 1236 00:59:17,600 --> 00:59:20,480 Dan huwa dak li għandna - it- setup għandna dritt issa. 1237 00:59:20,480 --> 00:59:27,540 Għalhekk din il-linja, fread, tpoġġi xi ħaġa minn sors fejn? 1238 00:59:27,540 --> 00:59:30,560 F'din il-kaxxa jew il-kaxxa? 1239 00:59:30,560 --> 00:59:31,060 Liema kaxxa? 1240 00:59:31,060 --> 00:59:33,290 Xellug kaxxa jew kaxxa dritt? 1241 00:59:33,290 --> 00:59:34,750 Din il-kaxxa dritt. 1242 00:59:34,750 --> 00:59:38,440 >> Dan isegwi l-pointer, u tqiegħdu fil hawn. 1243 00:59:38,440 --> 00:59:42,620 Meta nippruvaw u l-memorja touch fuq post 0, liema do we? 1244 00:59:42,620 --> 00:59:45,050 A tort segmentazzjoni. 1245 00:59:45,050 --> 00:59:46,550 Dik hija l-iżball li għandna dritt issa. 1246 00:59:46,550 --> 00:59:46,970 Yeah. 1247 00:59:46,970 --> 00:59:48,410 >> STUDENT 59: Ma ikollok tpoġġi buffer star? 1248 00:59:48,410 --> 00:59:49,180 Jew xejn? 1249 00:59:49,180 --> 00:59:50,050 Għal fread? 1250 00:59:50,050 --> 00:59:51,450 >> JASON Hirschhorn: So fread jieħu pointer. 1251 00:59:51,450 --> 00:59:54,920 1252 00:59:54,920 --> 00:59:55,900 Għalhekk jgħaddi fi buffer. 1253 00:59:55,900 --> 00:59:58,980 U allura dan ser de-referenza x'imkien ġewwa fread. 1254 00:59:58,980 --> 01:00:00,700 Iżda għal darb'oħra, rajna, hija tieħu pointer. 1255 01:00:00,700 --> 01:00:02,560 Aħna ma bżonn li tgħaddi dan buffer star. 1256 01:00:02,560 --> 01:00:05,350 Li tkun tgħaddi huwa x'ikun l hawn. 1257 01:00:05,350 --> 01:00:07,980 U li probabbilment tagħtina żball għaliex aħna qed de-referenzar dan. 1258 01:00:07,980 --> 01:00:08,150 >> Dritt? 1259 01:00:08,150 --> 01:00:10,690 Meta aħna de-referenza dan il-werrej, meta aħna tipprova l-aċċess dan il-post, 1260 01:00:10,690 --> 01:00:13,140 aħna jkollna żball - tort segmentazzjoni tagħna. 1261 01:00:13,140 --> 01:00:15,800 So - 1262 01:00:15,800 --> 01:00:16,690 oops. 1263 01:00:16,690 --> 01:00:19,090 Aħna ser nieqaf out GDB. 1264 01:00:19,090 --> 01:00:20,160 Linja tagħna - 1265 01:00:20,160 --> 01:00:22,990 problema tagħna - huwa dritt hawn fuq din il-linja. 1266 01:00:22,990 --> 01:00:26,410 U huwa problema għaliex ta 'din il-linja. 1267 01:00:26,410 --> 01:00:31,780 >> Kif nistgħu toħloq kaxxa li huwa aċċessibbli fil fread. 1268 01:00:31,780 --> 01:00:31,980 Dritt? 1269 01:00:31,980 --> 01:00:35,190 Għandna bżonn li jinħoloq kaxxa li wieħed byte kbir, id-daqs ta 'char. 1270 01:00:35,190 --> 01:00:38,590 Iżda għandna bżonn li l-kaxxa li jkun aċċessibbli meta din il-funzjoni tesegwixxi. 1271 01:00:38,590 --> 01:00:39,390 Għalhekk, fejn - 1272 01:00:39,390 --> 01:00:39,640 yeah. 1273 01:00:39,640 --> 01:00:40,440 Xi ideat? 1274 01:00:40,440 --> 01:00:43,615 >> STUDENT 60: Biss sett bħala karattru każwali. 1275 01:00:43,615 --> 01:00:49,150 1276 01:00:49,150 --> 01:00:51,640 Just do ugwali buffer char l-karattru. 1277 01:00:51,640 --> 01:00:53,795 U mbagħad, meta jkollok buffer hemm - 1278 01:00:53,795 --> 01:00:54,110 >> JASON Hirschhorn: Stenna. 1279 01:00:54,110 --> 01:00:55,110 Char buffer? 1280 01:00:55,110 --> 01:00:55,880 Allura l-ebda star? 1281 01:00:55,880 --> 01:00:56,390 >> STUDENT 60: Yeah. 1282 01:00:56,390 --> 01:00:58,560 Oħroġ l-istilla. 1283 01:00:58,560 --> 01:01:00,690 Huwa ugwali għal karattru każwali. 1284 01:01:00,690 --> 01:01:01,460 >> JASON Hirschhorn: OK. 1285 01:01:01,460 --> 01:01:02,420 Allura tagħti me wieħed. 1286 01:01:02,420 --> 01:01:03,170 >> STUDENT 60: Like a jew xi ħaġa. 1287 01:01:03,170 --> 01:01:06,160 U mbagħad meta jkollok buffer hemm, inti tuża - 1288 01:01:06,160 --> 01:01:06,420 >> STUDENT 61: Star? 1289 01:01:06,420 --> 01:01:07,650 Oh no, l-ampersand. 1290 01:01:07,650 --> 01:01:09,000 >> STUDENT 60: Uża l-ampersand. 1291 01:01:09,000 --> 01:01:09,470 >> JASON Hirschhorn: OK. 1292 01:01:09,470 --> 01:01:11,320 U xi ngħidu dwar fit fwrite? 1293 01:01:11,320 --> 01:01:14,150 >> STUDENT 60: Uża l-ampersand ġdid. 1294 01:01:14,150 --> 01:01:14,320 >> JASON Hirschhorn: Kull dritt. 1295 01:01:14,320 --> 01:01:20,970 Allura idea tiegħek, aħna joħolqu char u tpoġġi xi ħaġa fiha, u mbagħad 1296 01:01:20,970 --> 01:01:22,612 jikteb għal dak char. 1297 01:01:22,612 --> 01:01:23,760 >> STUDENT 60: Yeah. 1298 01:01:23,760 --> 01:01:25,916 >> JASON Hirschhorn: What do nies jaħsbu? 1299 01:01:25,916 --> 01:01:27,770 >> STUDENT 62: Huwa convoluted. 1300 01:01:27,770 --> 01:01:28,460 >> JASON Hirschhorn: OK. 1301 01:01:28,460 --> 01:01:29,760 Ejja tiġbed out. 1302 01:01:29,760 --> 01:01:35,720 Allura dan iż-żmien, jien ser tiġbed dan aħmar fuq il-munzell hawn, u allura aħna 1303 01:01:35,720 --> 01:01:36,410 se jkollhom - 1304 01:01:36,410 --> 01:01:36,822 ooh! 1305 01:01:36,822 --> 01:01:38,060 Jiddispjacini. 1306 01:01:38,060 --> 01:01:45,930 Allura dan iż-żmien aħna għandna xi ħaġa imsejħa buffer, u huwa fuq il-munzell. 1307 01:01:45,930 --> 01:01:48,430 Tikkoreġi? 1308 01:01:48,430 --> 01:01:51,520 U aħna qed iffrankar fl hu, inizjalment. 1309 01:01:51,520 --> 01:01:53,830 >> Imbagħad għandna sejħa tagħna biex fread. 1310 01:01:53,830 --> 01:02:01,300 Dak fread ma hija tieħu byte minn fajl u tagħna tqiegħdu x'imkien. 1311 01:02:01,300 --> 01:02:04,570 Tpoġġiha hija fi kwalunkwe il- ħaġa li tindika li. 1312 01:02:04,570 --> 01:02:09,130 Ukoll, qabel ma kellna dan l-indirizz - 1313 01:02:09,130 --> 01:02:10,250 0x0. 1314 01:02:10,250 --> 01:02:13,349 Issa dak indirizz għandna? 1315 01:02:13,349 --> 01:02:14,650 >> STUDENT 63: Tkun xi tkun indirizz buffer hija. 1316 01:02:14,650 --> 01:02:15,970 >> JASON Hirschhorn: Tkun xi tkun indirizz buffer hija. 1317 01:02:15,970 --> 01:02:22,370 Huwa probabbilment se tkun xi ħaġa bħal dik. 1318 01:02:22,370 --> 01:02:26,950 Probabbilment se tibda bil-b u ta 'f, u mbagħad ikollhom sitt oħra 1319 01:02:26,950 --> 01:02:27,970 numri hexadecimal. 1320 01:02:27,970 --> 01:02:28,480 Ma jimpurtax. 1321 01:02:28,480 --> 01:02:29,470 Xi indirizz. 1322 01:02:29,470 --> 01:02:31,410 U aħna qed tgħaddi dik indirizz pulzieri 1323 01:02:31,410 --> 01:02:34,790 >> U aħna qed tmur biex jitqiegħdu waħda tagħna Ħaġa byte f'dak l-indirizz. 1324 01:02:34,790 --> 01:02:38,470 Allura aħna qed tmur biex jitqiegħdu waħda tagħna Ħaġa byte ġewwa hawn. 1325 01:02:38,470 --> 01:02:40,800 U allura aħna qed tmur biex jiktbu mill- x'hemm qatt ġewwa hawn. 1326 01:02:40,800 --> 01:02:43,425 1327 01:02:43,425 --> 01:02:45,380 Ħadd ma jkollu xi mistoqsijiet dwar dan? 1328 01:02:45,380 --> 01:02:50,990 1329 01:02:50,990 --> 01:02:54,690 Li jaħseb dan il-kodiċi se taħdem? 1330 01:02:54,690 --> 01:02:56,020 >> Għolli naħa tiegħek jekk taħseb li dan il-kodiċi se taħdem. 1331 01:02:56,020 --> 01:02:57,270 Inti għandek tieħu pożizzjoni. 1332 01:02:57,270 --> 01:03:00,670 1333 01:03:00,670 --> 01:03:02,500 U li jaħseb dan il-kodiċi mhux se taħdem? 1334 01:03:02,500 --> 01:03:04,610 Jgħollu naħa tiegħek. 1335 01:03:04,610 --> 01:03:06,750 Kulħadd għandu jkun kuxjenza idejn tagħhom. 1336 01:03:06,750 --> 01:03:07,670 OK. 1337 01:03:07,670 --> 01:03:09,390 Michael, fejn inti wieqfa? 1338 01:03:09,390 --> 01:03:10,680 >> MICHAEL: I ma tistax tiddeċiedi. 1339 01:03:10,680 --> 01:03:12,070 Tip ta 'fin-nofs. 1340 01:03:12,070 --> 01:03:12,736 >> JASON Hirschhorn: Inti fin-nofs. 1341 01:03:12,736 --> 01:03:13,092 Pick wieħed. 1342 01:03:13,092 --> 01:03:14,400 >> MICHAEL: I ser ikollhom fidi u jgħidu li se taħdem. 1343 01:03:14,400 --> 01:03:14,660 >> JASON Hirschhorn: OK. 1344 01:03:14,660 --> 01:03:16,047 Int ser ikollok fidi u jgħidu taħdem? 1345 01:03:16,047 --> 01:03:26,490 1346 01:03:26,490 --> 01:03:27,020 Dak li ġara? 1347 01:03:27,020 --> 01:03:28,270 >> [Voices INTERPOSING] 1348 01:03:28,270 --> 01:03:35,170 1349 01:03:35,170 --> 01:03:35,950 >> JASON Hirschhorn: L-ebda ħsara seg. 1350 01:03:35,950 --> 01:03:40,320 Kif nistgħu tikkontrolla biex tara jekk żewġ affarijiet huma ugwali? 1351 01:03:40,320 --> 01:03:42,060 Żewġ fajls huma ndaqs. 1352 01:03:42,060 --> 01:03:43,300 >> STUDENT 64: Diff. 1353 01:03:43,300 --> 01:03:45,490 >> JASON Hirschhorn: Diff. 1354 01:03:45,490 --> 01:03:51,630 Kontrolli diff għad-differenzi bejn żewġ fajls, u jekk dan jirritorna 1355 01:03:51,630 --> 01:03:52,890 xejn, dawn qed identiċi. 1356 01:03:52,890 --> 01:03:59,030 U jekk aħna miftuħa up, irridu jiksbu fajl tagħna. 1357 01:03:59,030 --> 01:04:00,490 Allura li kien is-soluzzjoni korretta. 1358 01:04:00,490 --> 01:04:01,780 Ejja nħarsu lura lejn din waħda aktar ħin. 1359 01:04:01,780 --> 01:04:04,080 Aħna fil-fatt lanqas biss bżonn li initialize dan. 1360 01:04:04,080 --> 01:04:05,520 >> Hi probabilment tfittex ftit cleaner jekk inti ma poġġiex 1361 01:04:05,520 --> 01:04:07,680 xi ħaġa każwali fil hemmhekk. 1362 01:04:07,680 --> 01:04:13,070 Il-punt li tkun, inti meħtieġ biex toħloq xi spazju biex jaħżnu xi ħaġa minn 1363 01:04:13,070 --> 01:04:15,530 fread u jieħdu xi ħaġa minn fwrite. 1364 01:04:15,530 --> 01:04:18,400 U li ħaġa kellu jkun jew lokali varjabbli fuq il-munzell - inti 1365 01:04:18,400 --> 01:04:19,890 jistgħu stajt malloc'd xi spazju. 1366 01:04:19,890 --> 01:04:23,030 >> Allura aħna fil-fatt jista 'jkollu malloc miktub hawn, u 1367 01:04:23,030 --> 01:04:25,420 li ħadmu. 1368 01:04:25,420 --> 01:04:28,660 U allura aħna ġew ħażna affarijiet tagħna x'imkien fuq il-borġ. 1369 01:04:28,660 --> 01:04:31,940 Iżda dan huwa attwalment, probabbilment, l-aktar soluzzjoni eleganti. 1370 01:04:31,940 --> 01:04:34,490 Just joħolqu xi spazju fuq il-munzell għal dawn l-affarijiet imorru. 1371 01:04:34,490 --> 01:04:37,690 1372 01:04:37,690 --> 01:04:38,990 >> I jkollhom żewġ kummenti oħra. 1373 01:04:38,990 --> 01:04:44,650 Jekk ġejt biex tieħu dawran f'dan, u mbagħad jiksbu skorja fuq dan, il-kummenti tiegħi 1374 01:04:44,650 --> 01:04:47,400 tkun kif ġej. 1375 01:04:47,400 --> 01:04:54,300 Dawn 1 huwa hawn, lili, tfittex bħal numri magic. 1376 01:04:54,300 --> 01:04:56,860 Dan 1, f'termini ta 'fread, jagħmel sens. 1377 01:04:56,860 --> 01:04:59,580 Dik hija l-numru ta 'affarijiet biex jaqraw jew jiktbu. 1378 01:04:59,580 --> 01:05:03,740 >> Iżda dan wieħed dritt hawn għandhom probabbilment tkun xi ħaġa oħra. 1379 01:05:03,740 --> 01:05:05,180 Allura dak li huwa soluzzjoni waħda? 1380 01:05:05,180 --> 01:05:06,545 >> STUDENT 65: Daqs ta 'byte. 1381 01:05:06,545 --> 01:05:10,100 1382 01:05:10,100 --> 01:05:11,080 >> JASON Hirschhorn: Bħal dak? 1383 01:05:11,080 --> 01:05:13,130 >> STUDENT 65: Daqs ta 'char. 1384 01:05:13,130 --> 01:05:13,820 >> JASON Hirschhorn: Daqs ta 'char. 1385 01:05:13,820 --> 01:05:15,290 Yeah, byte mhuwiex tip. 1386 01:05:15,290 --> 01:05:16,320 Allura daqs ta 'xogħlijiet char. 1387 01:05:16,320 --> 01:05:30,270 Aħna jista 'jkollhom, fil-quċċata ta' kodiċi tagħna, # definit dak. 1388 01:05:30,270 --> 01:05:33,410 Imsejħa BYTE xi ħaġa u huwa verament char. 1389 01:05:33,410 --> 01:05:37,675 Attwalment, approċċ anki aħjar seta 'kien dan - 1390 01:05:37,675 --> 01:05:39,391 Uint. 1391 01:05:39,391 --> 01:05:40,780 Kulmin jafu liema dan huwa? 1392 01:05:40,780 --> 01:05:44,388 1393 01:05:44,388 --> 01:05:44,840 >> Jiddispjacini. 1394 01:05:44,840 --> 01:05:46,090 I jkollhom dan lura. 1395 01:05:46,090 --> 01:05:51,620 1396 01:05:51,620 --> 01:05:52,200 Stenna, l-ebda. 1397 01:05:52,200 --> 01:05:53,450 Liema mod ma tmur? 1398 01:05:53,450 --> 01:05:58,071 1399 01:05:58,071 --> 01:05:59,660 Kulmin jafu liema dan huwa? 1400 01:05:59,660 --> 01:06:00,950 Yeah. 1401 01:06:00,950 --> 01:06:05,650 >> STUDENT 67: Suppost biex jgħinu standardizzati madwar affarijiet sistemi li 1402 01:06:05,650 --> 01:06:08,760 jkollhom - bħal interi mhux iffirmat li għandhom 8 bytes? 1403 01:06:08,760 --> 01:06:11,785 >> JASON Hirschhorn: C'est eżattament id-dritt. 1404 01:06:11,785 --> 01:06:14,310 Fuq magni differenti, -daqs ta 'char - 1405 01:06:14,310 --> 01:06:15,180 mhuwiex normalment char. 1406 01:06:15,180 --> 01:06:16,100 Chars huma normalment byte wieħed. 1407 01:06:16,100 --> 01:06:19,590 Iżda d-daqs ta 'tipi oħra tad-data huma daqsijiet differenti fuq magna 32-bit 1408 01:06:19,590 --> 01:06:21,370 versus magna 64-bit. 1409 01:06:21,370 --> 01:06:25,180 A uint8_t huwa dejjem 8 bits - 1410 01:06:25,180 --> 01:06:27,210 dejjem byte wieħed. 1411 01:06:27,210 --> 01:06:29,580 >> U għandi bżonn biex jinkludu li file standard header int. 1412 01:06:29,580 --> 01:06:35,040 Allura issa, dan probabilment ġew l-aħjar mod li tikteb dan il-kodiċi. 1413 01:06:35,040 --> 01:06:40,160 1414 01:06:40,160 --> 01:06:41,450 So I jeħles mill-numri magic. 1415 01:06:41,450 --> 01:06:44,690 U Għandi wkoll aktar loġiku tip għall-buffer. 1416 01:06:44,690 --> 01:06:49,450 Mhuwiex sempliċiment char, huwa byte, li huwa dak li nistennew li jkun. 1417 01:06:49,450 --> 01:06:53,400 >> U sa hawn, aħna ħadthom attwalment kien daqsxejn aktar robust. 1418 01:06:53,400 --> 01:06:55,190 Aħna ma ssejjaħ dan char, li - 1419 01:06:55,190 --> 01:06:58,630 forsi, li jaf - tista 'tkun differenti daqs fuq magni differenti. 1420 01:06:58,630 --> 01:07:02,025 Aħna fil-fatt qal dan huwa eżattament byte wieħed, dejjem, irrelevanti x'inhu. 1421 01:07:02,025 --> 01:07:05,810 U jekk inħarsu hawn, nagħmlu cp. 1422 01:07:05,810 --> 01:07:08,340 Uh-oh. 1423 01:07:08,340 --> 01:07:09,590 Dak li ġara? 1424 01:07:09,590 --> 01:07:14,470 1425 01:07:14,470 --> 01:07:16,170 >> STUDENT 68: Jista 'jinxtegħel. 1426 01:07:16,170 --> 01:07:17,880 >> JASON Hirschhorn: What? 1427 01:07:17,880 --> 01:07:19,130 >> STUDENT 69: Huwa? 1428 01:07:19,130 --> 01:07:21,940 1429 01:07:21,940 --> 01:07:25,080 >> STUDENT 70: Inti ma jiddefinixxu bħala tip. 1430 01:07:25,080 --> 01:07:28,684 >> STUDENT 71: Imma suppost jiġu definiti fl-istandard. 1431 01:07:28,684 --> 01:07:29,934 >> STUDENT 72: X'qed jiġri? 1432 01:07:29,934 --> 01:07:37,660 1433 01:07:37,660 --> 01:07:40,210 >> STUDENT 73: Għandhom jiddefinixxu jkun tappijiet kollha? 1434 01:07:40,210 --> 01:07:41,370 >> JASON Hirschhorn: Għalhekk mhuwiex # tiddefinixxi. 1435 01:07:41,370 --> 01:07:45,490 Attwalment, f'dan il-każ, jien ser tuża typedef. 1436 01:07:45,490 --> 01:07:48,590 Għaliex aħna qed jużawha bħala tip f'post wieħed. 1437 01:07:48,590 --> 01:07:51,990 Allura f'dan il-każ, aħna fil-fatt tixtieq li typedef simili aħna qed istampar tip ġdid 1438 01:07:51,990 --> 01:07:54,490 byte, u huwa, essenzjalment, dan. 1439 01:07:54,490 --> 01:07:56,590 Huwa daqsxejn differenti minn # tiddefinixxi. 1440 01:07:56,590 --> 01:08:02,740 >> U issa, il-kodiċi tagħna jaħdem perfettament. 1441 01:08:02,740 --> 01:08:05,230 Għalhekk, għal darb'oħra, # jiddefinixxu tieħu xi ħaġa, jissostitwixxiha kullimkien 1442 01:08:05,230 --> 01:08:06,780 mal-ħaġa oħra. 1443 01:08:06,780 --> 01:08:07,920 Huwa biss makro - 1444 01:08:07,920 --> 01:08:09,420 shorthand biex jeħles ta 'numri magic. 1445 01:08:09,420 --> 01:08:11,360 Iżda f'dan il-każ, għaliex aħna qed jużawha bħala tip - 1446 01:08:11,360 --> 01:08:12,180 dritt hawn - 1447 01:08:12,180 --> 01:08:19,880 sabiex dak ix-xogħol, għandna bżonn li typedef kwalunkwe byte huwa. 1448 01:08:19,880 --> 01:08:21,840 >> U aħna qed jiddefinixxu dan id-dritt hawn. 1449 01:08:21,840 --> 01:08:24,750 Mhuwiex Struct, huwa attwalment biss sħiħ mhux iffirmat. 1450 01:08:24,750 --> 01:08:27,680 Huwa byte wieħed twil. 1451 01:08:27,680 --> 01:08:31,910 Dan il-kodiċi se jkun disponibbli online, u inti kollha għandu jkollhom dan id-dritt issa. 1452 01:08:31,910 --> 01:08:33,830 >> Allura aħna għandna - 1453 01:08:33,830 --> 01:08:34,250 perfetta - 1454 01:08:34,250 --> 01:08:41,359 13 minuta xellug biex tmur problema fuq sett 5. 1455 01:08:41,359 --> 01:08:44,270 Irrid li jimxu permezz copy.c flimkien, u allura aħna ser nitkellmu fil-qosor 1456 01:08:44,270 --> 01:08:47,120 dwar il-partijiet l-oħra tal-problema stabbiliti. 1457 01:08:47,120 --> 01:08:48,899 So let me pull up copy.c. 1458 01:08:48,899 --> 01:09:03,930 1459 01:09:03,930 --> 01:09:08,810 U l-ħaġa jibred hija, aħna ħadthom attwalment diġà bil-miktub ħafna ta 'dan il-kodiċi. 1460 01:09:08,810 --> 01:09:11,180 >> Il-kodiċi aħna kiteb litteralment biss ħareġ mill hawn meta I kien 1461 01:09:11,180 --> 01:09:13,120 miktub dan fuq tiegħi stess. 1462 01:09:13,120 --> 01:09:16,990 Iżda din hija copy.c, jifforma l-pedament għall-ewwel żewġ partijiet ta ' 1463 01:09:16,990 --> 01:09:22,340 il-problema stabbiliti għall whodunit.c, li għandek bżonn biex tikteb, u resize.c. 1464 01:09:22,340 --> 01:09:27,050 Recover.c, li hija t-tielet u l-aħħar parti mis-sett problema, mhuwiex 1465 01:09:27,050 --> 01:09:29,529 bbażata off ta 'dan il-fajl. 1466 01:09:29,529 --> 01:09:32,200 >> Int ser bżonn biex tikteb dan il-fajl, aħna nagħtuk template għal dak 1467 01:09:32,200 --> 01:09:34,620 fajl, iżda din m'għandha x'taqsam xejn li tagħmel ma copy.c. 1468 01:09:34,620 --> 01:09:38,675 Iżda minħabba copy.c huwa l-pedament għall- l-ewwel żewġ partijiet, aħna qed tmur 1469 01:09:38,675 --> 01:09:42,000 jimxu permezz issa, hekk ikollok sens tajjeb ta 'dak li tagħmel. 1470 01:09:42,000 --> 01:09:43,640 >> U l-kummenti tagħti xi wħud bogħod. 1471 01:09:43,640 --> 01:09:45,120 Imxejna diġà bil-miktub xi wħud minn dan. 1472 01:09:45,120 --> 01:09:49,220 L-ewwel, aħna qed jagħmlu ċert irridu jiksbu tliet argumenti. 1473 01:09:49,220 --> 01:09:50,560 Sussegwentement, aħna qed ftakar l-isem fajl. 1474 01:09:50,560 --> 01:09:52,960 Allura aħna skipped dan il-pass meta aħna kodifikati ħaġa tagħna - 1475 01:09:52,960 --> 01:09:54,700 meta cp tagħna. 1476 01:09:54,700 --> 01:09:56,750 Iżda hawnhekk, dawn qed jagħmlu hija daqsxejn aktar nadifa. 1477 01:09:56,750 --> 01:09:59,350 >> Huma qed kkontrollar sabiex tagħmel żgur fajls kemm huma tajbin, fil- 1478 01:09:59,350 --> 01:10:00,450 Minbarra l-ftuħ tagħhom. 1479 01:10:00,450 --> 01:10:04,760 Aħna kiteb dan kollu kodiċi biss issa, hekk jien mhux se nitkellem fuq dan il-kodiċi. 1480 01:10:04,760 --> 01:10:09,670 Li jmiss huwa xi għalf li l-speċifiku li it-tipi ta 'fajls li aħna qed jużaw, li 1481 01:10:09,670 --> 01:10:12,240 huma fajls Bitmap. 1482 01:10:12,240 --> 01:10:15,660 Fajls Bitmap għandhom xi metadata assoċjati magħhom. 1483 01:10:15,660 --> 01:10:20,190 >> Allura l-ewwel koppja ta 'bytes jgħidlek dwar il-fajl. 1484 01:10:20,190 --> 01:10:23,460 Dawn mhumiex l-kuluri ta ' l-pixel f'dak immaġini. 1485 01:10:23,460 --> 01:10:25,120 Huma jgħidlek dwar il-fajl. 1486 01:10:25,120 --> 01:10:28,220 U jekk inti taqra permezz-sett problema, inti ser ikollok ħafna aktar informazzjoni 1487 01:10:28,220 --> 01:10:33,100 fuq liema tipi ta 'strutturi ta' metadejta huma inklużi ma bitmaps. 1488 01:10:33,100 --> 01:10:39,350 >> Imma dak li għaliex għandna dan l-ewwel sett ta '- dan il-kodiċi dritt hawn. 1489 01:10:39,350 --> 01:10:42,490 Aħna qari tal-metadata - 1490 01:10:42,490 --> 01:10:45,800 żewġ biċċiet ta 'metadata - il-fajl header u l-header info. 1491 01:10:45,800 --> 01:10:51,030 U aħna iċċekkjar xi partijiet minnha li kun żgur huwa fajl Bitmap vera 1492 01:10:51,030 --> 01:10:52,420 qabel ma jkompli. 1493 01:10:52,420 --> 01:10:55,470 >> U għal darb'oħra, dawn huma d-dettalji aħna m'għandhomx bżonn li jmorru fil issa. 1494 01:10:55,470 --> 01:10:57,720 Jekk taqra permezz-sett problema, int ser tifhem dawn. 1495 01:10:57,720 --> 01:11:01,370 Long storja qasira, dawn huma biss qal, dan huwa fajl Bitmap, u 1496 01:11:01,370 --> 01:11:02,810 jikkonferma li. 1497 01:11:02,810 --> 01:11:05,180 >> Sussegwentement, aħna qed tikteb dawk għall-fajl out. 1498 01:11:05,180 --> 01:11:05,660 Naraw li hawn. 1499 01:11:05,660 --> 01:11:06,910 Aħna qed miktub lill-pointer out. 1500 01:11:06,910 --> 01:11:09,260 1501 01:11:09,260 --> 01:11:11,320 Sussegwentement, aħna qed jiddetermina padding. 1502 01:11:11,320 --> 01:11:15,240 Għalhekk għal darb'oħra, kif partikolarità ma fajl Bitmap, xi linji jinkludu 1503 01:11:15,240 --> 01:11:16,840 ikkuttunar fl-aħħar. 1504 01:11:16,840 --> 01:11:19,000 U jekk inti taqra permezz-sett problema, inti ser jitgħallmu aktar dwar padding. 1505 01:11:19,000 --> 01:11:22,330 Dan huwa l-formula li ssib padding. 1506 01:11:22,330 --> 01:11:23,610 >> Importanti li għandek tiftakar - 1507 01:11:23,610 --> 01:11:29,720 meta inti Tibdilx id-daqs ta 'Bitmap fajl, il-bidliet ikkuttunar. 1508 01:11:29,720 --> 01:11:31,970 Meta inti Tibdilx id-daqs ta ' fajl, il-bidliet ikkuttunar. 1509 01:11:31,970 --> 01:11:34,310 Huwa qatt ser tkun akbar minn 3 - 1510 01:11:34,310 --> 01:11:36,510 dan ser ikun 0 sa 3, inkluża. 1511 01:11:36,510 --> 01:11:38,930 Imma meta inti Tibdilx id-daqs ta ' xi ħaġa, il-bidliet ikkuttunar. 1512 01:11:38,930 --> 01:11:47,100 >> Jekk I biss ikollhom pixel wieħed f'dak ringiela, I bżonn tliet bytes ta 'ikkuttunar, minħabba 1513 01:11:47,100 --> 01:11:51,190 kull ringiela għandu jkun f'multipli ta 'erba' bytes twil fil-fajl Bitmap. 1514 01:11:51,190 --> 01:11:56,120 Imma jekk I rdoppjat, li jmorru minn pixel wieħed għal żewġ pixel, kull wieħed minnhom, 1515 01:11:56,120 --> 01:11:59,510 ejja ngħidu, huwa byte, imbagħad I bżonn żewġ bytes ta 'padding li jagħmlu 1516 01:11:59,510 --> 01:12:00,970 li huwa ugwali għal erbgħa. 1517 01:12:00,970 --> 01:12:04,200 >> Allura meta I Tibdilx id-daqs ta 'xi ħaġa, I-ħtieġa li jibdlu l-ammont 1518 01:12:04,200 --> 01:12:06,551 ta 'padding I jkollhom. 1519 01:12:06,551 --> 01:12:08,100 Does li jagħmel sens għal kulħadd? 1520 01:12:08,100 --> 01:12:12,020 1521 01:12:12,020 --> 01:12:18,720 Sussegwentement, aħna jtenni fuq kull ringiela, jew permezz l-ringieli. 1522 01:12:18,720 --> 01:12:21,400 U allura aħna jtenni permezz kull kolonna f'kull filliera. 1523 01:12:21,400 --> 01:12:25,330 Aħna qed tittratta din Bitmap bħal a grid, bħall konna trattati 1524 01:12:25,330 --> 01:12:26,490 il-bord fil-15. 1525 01:12:26,490 --> 01:12:29,200 >> Simili aħna ttrattati l-briks meta aħna stampati lilhom fuq l-iskrin. 1526 01:12:29,200 --> 01:12:31,350 A grid ta 'ringieli u kolonni. 1527 01:12:31,350 --> 01:12:32,350 Imbagħad - aħna raw dan. 1528 01:12:32,350 --> 01:12:33,840 Aħna attwalment biss kodifikati dan. 1529 01:12:33,840 --> 01:12:35,780 Ħloqna xi ħażna temporanja. 1530 01:12:35,780 --> 01:12:38,710 Naqraw fil hemm, u mbagħad aħna tikteb it out. 1531 01:12:38,710 --> 01:12:42,680 Dan huwa eżattament dak li aħna biss għamlet. 1532 01:12:42,680 --> 01:12:46,760 >> Sussegwentement, minħabba I qal kull linja jispiċċa f'xi ikkuttunar, aħna 1533 01:12:46,760 --> 01:12:48,260 skip fuq dik padding - 1534 01:12:48,260 --> 01:12:51,000 l-ikkuttunar qodma. 1535 01:12:51,000 --> 01:12:52,630 U allura aħna żid lura. 1536 01:12:52,630 --> 01:12:55,140 F'dan il-każ, aħna qed jinħolqu l-istess fajl eżatt. 1537 01:12:55,140 --> 01:12:56,180 Aħna biss ikkupjar. 1538 01:12:56,180 --> 01:12:57,700 Allura din il-linja huwa tip ta 'iblah. 1539 01:12:57,700 --> 01:12:59,660 Nistgħu litteralment biss tpoġġi l-padding pulzieri 1540 01:12:59,660 --> 01:13:04,290 >> Imma jekk inti Tibdilx id-daqs tal-fajl, inti xorta trid il-linja? 1541 01:13:04,290 --> 01:13:08,510 1542 01:13:08,510 --> 01:13:11,560 Allura jekk aħna Tibdilx id-daqs ta 'fajl, do aħna xorta jridu skip 1543 01:13:11,560 --> 01:13:12,810 fuq il-padding qodma? 1544 01:13:12,810 --> 01:13:15,170 1545 01:13:15,170 --> 01:13:15,970 >> STUDENT 74: Iva. 1546 01:13:15,970 --> 01:13:17,090 >> JASON Hirschhorn: Allura nagħmlu. 1547 01:13:17,090 --> 01:13:19,290 Minħabba dan, għal darb'oħra, jittratta mal-fajl sors. 1548 01:13:19,290 --> 01:13:21,570 Aħna ma jimpurtahom dwar l-ikkuttunar mis-sors fajl. 1549 01:13:21,570 --> 01:13:23,410 Aħna rridu li tmur fil-linja li jmiss. 1550 01:13:23,410 --> 01:13:28,850 Iżda aħna ma sempliċiment imqiegħdin lura l-ammont antika ta 'padding. 1551 01:13:28,850 --> 01:13:31,540 Neħtieġu npoġġu lura l- ammont il-ġdid ta 'padding. 1552 01:13:31,540 --> 01:13:35,810 >> Allura meta aħna qed jinbidlu l-daqs ta ' file, aħna xorta jridu skip fuq il- 1553 01:13:35,810 --> 01:13:38,270 ikkuttunar fil-fajl qodma - dak aħna qed taqra minn. 1554 01:13:38,270 --> 01:13:40,370 Imma dak li aħna qed miktub biex, aħna qed tmur li jeħtieġ li jitqiegħdu lura xi differenti 1555 01:13:40,370 --> 01:13:41,890 numru ta 'padding li konna determinati. 1556 01:13:41,890 --> 01:13:42,780 Yeah. 1557 01:13:42,780 --> 01:13:44,550 >> STUDENT 75: L-ordni ta 'dawn iż-żewġ linji ma jimpurtax, right? 1558 01:13:44,550 --> 01:13:46,160 Għax int tqandil fajls differenti. 1559 01:13:46,160 --> 01:13:46,620 >> JASON Hirschhorn: Eżattament. 1560 01:13:46,620 --> 01:13:48,220 L-ordni ta 'dawn iż-żewġ linji ma jimpurtax. 1561 01:13:48,220 --> 01:13:49,790 Aħna tikteb din il-linja. 1562 01:13:49,790 --> 01:13:51,430 Dan huwa hawn għall-fajl aħna qed miktub lill. 1563 01:13:51,430 --> 01:13:54,370 Li l-importanti, hekk irridu jiksbu l- ammont korrett ta 'padding. 1564 01:13:54,370 --> 01:13:57,560 Dan għandu jittratta ma 'l-fajl. 1565 01:13:57,560 --> 01:13:58,560 Aħna rridu li skip dritt fuq il-padding. 1566 01:13:58,560 --> 01:13:59,470 >> Aħna ma rridux li taqra - 1567 01:13:59,470 --> 01:14:01,500 jekk aħna qed qari byte fi żmien, aħna ma jimpurtahom dwar dawk padding bytes. 1568 01:14:01,500 --> 01:14:04,070 Aħna rridu li jimxu lejn il-linja li jmiss. 1569 01:14:04,070 --> 01:14:11,800 Fl-aħħarnett bħad Lucy taw għalina, aħna qrib il-fajls u ritorn 0. 1570 01:14:11,800 --> 01:14:13,890 Allura dan huwa copy.c. 1571 01:14:13,890 --> 01:14:17,850 U aħna fil-fatt kiteb - aħna jintefqu ħafna mill- taqsima miktub dan, essenzjalment. 1572 01:14:17,850 --> 01:14:18,740 >> Inti għamilt dan. 1573 01:14:18,740 --> 01:14:22,440 Hekk nisperaw ikollok sens tajjeb ta 'x'inhu għaddej fil hawn. 1574 01:14:22,440 --> 01:14:25,890 Id-differenza kbira, onestament, huwa biss din l-ewwel parti li jittratta 1575 01:14:25,890 --> 01:14:29,970 pekuljaretajiet ta 'fajls Bitmap. 1576 01:14:29,970 --> 01:14:33,570 So I jkollhom bħala slide tiegħi li jmiss, dak li rridu nagħmlu? 1577 01:14:33,570 --> 01:14:35,510 Well, ejja jaħsbu dwar whodunit. 1578 01:14:35,510 --> 01:14:38,080 >> U għal xi ħadd li tinqara permezz l-problema stabbilita, liema do we 1579 01:14:38,080 --> 01:14:41,410 bżonn tagħmel whodunit? 1580 01:14:41,410 --> 01:14:42,080 Simply. 1581 01:14:42,080 --> 01:14:42,460 Aleja. 1582 01:14:42,460 --> 01:14:48,570 >> Aleja: Tista 'tieħu l-parti ta 'kull pixel li tindika aħmar. 1583 01:14:48,570 --> 01:14:49,730 U mbagħad - 1584 01:14:49,730 --> 01:14:50,730 tip ta '? 1585 01:14:50,730 --> 01:14:51,860 >> JASON Hirschhorn: OK. 1586 01:14:51,860 --> 01:14:54,460 Sabiex jieħdu l-parti ta 'kull pixel li tindika aħmar. 1587 01:14:54,460 --> 01:14:57,234 C'est qrib, iżda mhux kollha ta 'dan. 1588 01:14:57,234 --> 01:14:59,780 >> STUDENT 76: Well, hemm modi differenti biex jagħmlu dan. 1589 01:14:59,780 --> 01:14:59,870 >> JASON Hirschhorn: OK. 1590 01:14:59,870 --> 01:15:03,070 Agħti me mod wieħed. 1591 01:15:03,070 --> 01:15:08,240 >> STUDENT 76: Oħroġ l-aħmar, u imbagħad jenfasizzaw il-blu u aħdar. 1592 01:15:08,240 --> 01:15:10,010 >> JASON Hirschhorn: OK. 1593 01:15:10,010 --> 01:15:11,830 Allura minħabba dawn iż-żewġ modi - 1594 01:15:11,830 --> 01:15:15,210 ħsejjes simili aħna tagħtiha pixel, hija għandu livell aħmar, blu, u aħdar. 1595 01:15:15,210 --> 01:15:19,350 Aħna tixtieq li tibdel il-livelli relattivi ta ' l-aħmar, blu, aħdar u, jiddependi 1596 01:15:19,350 --> 01:15:20,740 fuq dik pixel. 1597 01:15:20,740 --> 01:15:28,380 Meta f'dan l-kodiċi għandu nibdlu l-aħmar relattiva, blu, aħdar u 1598 01:15:28,380 --> 01:15:29,720 livelli ta 'pixel partikolari. 1599 01:15:29,720 --> 01:15:30,600 Wara aħna stajt taqra dan - 1600 01:15:30,600 --> 01:15:32,520 qabel aħna tikteb dan? 1601 01:15:32,520 --> 01:15:34,564 Agħti me-numru linja. 1602 01:15:34,564 --> 01:15:35,950 >> STUDENTI MULTIPLU: 83. 1603 01:15:35,950 --> 01:15:37,320 >> JASON Hirschhorn: 83. 1604 01:15:37,320 --> 01:15:38,570 Allura dritt hawn. 1605 01:15:38,570 --> 01:15:40,830 1606 01:15:40,830 --> 01:15:45,710 Għal whodunit, il-kodiċi inti għandek bżonn write kollha għandhom imorru hemm dritt. 1607 01:15:45,710 --> 01:15:47,640 U dan huwa l-uniku kodiċi għandek bżonn biex tikteb. 1608 01:15:47,640 --> 01:15:51,520 Għaliex, bħal aħna jinstemgħu, kull ma għandek bżonn tagħmel hu li jibdlu dawn blu relattiva, 1609 01:15:51,520 --> 01:15:54,420 livelli aħmar, u aħdar minn kull pixel. 1610 01:15:54,420 --> 01:15:58,250 >> Inti stajt taqra fil, u issa int ser jikteb it out. 1611 01:15:58,250 --> 01:16:03,100 Kif nista 'nikseb - jekk ikolli dan ħaġa imsejħa triple, dritt hawn, u huwa ta ' 1612 01:16:03,100 --> 01:16:04,570 tip RGBTRIPLE - 1613 01:16:04,570 --> 01:16:08,650 ukoll, jekk aħna ħarsu bmp.h, dak li huwa RGBTRIPLE? 1614 01:16:08,650 --> 01:16:11,450 1615 01:16:11,450 --> 01:16:12,700 >> STUDENT 77: Huwa Struct. 1616 01:16:12,700 --> 01:16:17,440 1617 01:16:17,440 --> 01:16:18,900 >> JASON Hirschhorn: RGBTRIPLE huwa Struct. 1618 01:16:18,900 --> 01:16:22,330 Naraw li dritt isfel hawn. 1619 01:16:22,330 --> 01:16:26,600 U hekk jekk jien ridt li l-aċċess, jiġifieri, l- livell aħmar tal-Struct, kif do I 1620 01:16:26,600 --> 01:16:30,005 aċċess għall-livell aħmar ta 'din Istituzzjonjijiet? 1621 01:16:30,005 --> 01:16:37,280 >> [KLASSI murmurs] 1622 01:16:37,280 --> 01:16:38,530 >> STUDENT 78: RGBTRIPLE.rgbtred? 1623 01:16:38,530 --> 01:16:47,250 1624 01:16:47,250 --> 01:16:48,856 >> JASON Hirschhorn: Huwa li korretta? 1625 01:16:48,856 --> 01:16:53,040 >> STUDENT 79: Għandu jkun triple dot, minflok RGBTRIPLE dot? 1626 01:16:53,040 --> 01:16:54,120 >> JASON Hirschhorn: Triple. 1627 01:16:54,120 --> 01:16:56,700 Triple huwa l-varjabbli lokali, sabiex hawn, hemm ebda pointers hawn. 1628 01:16:56,700 --> 01:16:58,400 Allura aħna biss jużaw il-dot notazzjoni. 1629 01:16:58,400 --> 01:17:00,480 Dan se jagħti me-livell ta 'aħmar. 1630 01:17:00,480 --> 01:17:06,180 Jekk irrid bidla, I biss sett hija ugwali għal xi ħaġa differenti. 1631 01:17:06,180 --> 01:17:13,190 Għalhekk għal darb'oħra, din il-linja tal-kodiċi aċċessi dan il-varjabbli ġewwa dan Istituzzjonjijiet, u 1632 01:17:13,190 --> 01:17:15,070 aħna tista 'tistabbilixxi li xi ħaġa ġdida. 1633 01:17:15,070 --> 01:17:20,040 >> Allura għal whodunit, għal darb'oħra, dan huwa, essenzjalment, dak li għandna bżonn tagħmel. 1634 01:17:20,040 --> 01:17:21,170 Sempliċi ħafna. 1635 01:17:21,170 --> 01:17:25,020 Just bidla xi livelli relattivi, u dan huwa fejn dan il-kodiċi tmur. 1636 01:17:25,020 --> 01:17:27,720 Resize, min-naħa l-oħra, huwa daqsxejn delikati. 1637 01:17:27,720 --> 01:17:30,900 Fil-fatt, resize huwa probabbilment l- parti trickiest ta 'din il-problema stabbiliti. 1638 01:17:30,900 --> 01:17:32,720 Għandna tliet minuti li jmorru fuqha. 1639 01:17:32,720 --> 01:17:34,910 >> Iżda għal darb'oħra, aħna stajt diġà bil-miktub aktar ta 'dan il-kodiċi, hekk aħna 1640 01:17:34,910 --> 01:17:36,500 għandu jkun pretty familjari. 1641 01:17:36,500 --> 01:17:40,750 Liema huma xi affarijiet li rridu li jagħmlu fil- resize, jekk inti stajt taqra fuq il- 1642 01:17:40,750 --> 01:17:43,470 problema iffissati? 1643 01:17:43,470 --> 01:17:45,290 Jekk inti tagħtihom lili, aħna jistgħu jitkellmu dwarhom. 1644 01:17:45,290 --> 01:17:47,340 Liema huma xi affarijiet li rridu nagħmlu? 1645 01:17:47,340 --> 01:17:47,970 >> STUDENT 80: vertikalment - 1646 01:17:47,970 --> 01:17:52,360 hekk ikollok biex orizzontalment resize, iżda vertikalment resize dan ukoll? 1647 01:17:52,360 --> 01:17:58,475 >> JASON Hirschhorn: Mela jekk aħna qed jingħataw pixel, u rridu li resize minn 1648 01:17:58,475 --> 01:18:03,460 b'fattur ta 'tnejn, issa jeħtieġ li jkun daqs ieħor orizzontalment u daqs ieħor 1649 01:18:03,460 --> 01:18:05,220 vertikalment. 1650 01:18:05,220 --> 01:18:06,640 Does li jagħmel sens? 1651 01:18:06,640 --> 01:18:07,060 Yeah. 1652 01:18:07,060 --> 01:18:09,300 Allura li probabbilment l- akbar sfida. 1653 01:18:09,300 --> 01:18:10,430 U aħna ser nitkellmu dwar li fil-sec. 1654 01:18:10,430 --> 01:18:11,065 Yeah. 1655 01:18:11,065 --> 01:18:15,270 >> STUDENT 81: Il-mod I ħsieb ta 'dan kien inti meħtieġa print it out - 1656 01:18:15,270 --> 01:18:15,490 >> JASON Hirschhorn: Stenna. 1657 01:18:15,490 --> 01:18:17,580 M'għandekx jgħidulna dak li għamilt. 1658 01:18:17,580 --> 01:18:20,620 Aħna qed tmur biex jitkellmu fil-loġika. 1659 01:18:20,620 --> 01:18:21,870 >> STUDENT 81: OK. 1660 01:18:21,870 --> 01:18:25,090 1661 01:18:25,090 --> 01:18:27,410 Liema kienet il-kwistjoni? 1662 01:18:27,410 --> 01:18:28,892 >> JASON Hirschhorn: Inti biss mqajma naħa tiegħek. 1663 01:18:28,892 --> 01:18:31,600 Ma kien hemm l-ebda kwistjoni. 1664 01:18:31,600 --> 01:18:32,520 Let me jippreżentawha. 1665 01:18:32,520 --> 01:18:34,560 Let me biss jiddiskutu dan fil-qosor. 1666 01:18:34,560 --> 01:18:38,400 Allura aħna għandna pixel wieħed, irridu jirreplika, kemm orizzontalment kif ukoll 1667 01:18:38,400 --> 01:18:39,360 vertikalment. 1668 01:18:39,360 --> 01:18:48,920 Allura idealment dak li nagħmlu hawnhekk huwa, aħna jinqraw pixel tagħna, aħna tiktibha 1669 01:18:48,920 --> 01:18:51,690 iżda ħafna ta 'drabi. 1670 01:18:51,690 --> 01:18:54,720 >> Imma allura għandna trick tagħna hawn, għaliex imbagħad irridu li skip sa l- 1671 01:18:54,720 --> 01:18:57,660 linja li jmiss u jiktbu fil- bidu tal-linja li jmiss. 1672 01:18:57,660 --> 01:19:02,960 Mela jekk irridu li tiġi replikata kemm orizzontalment u vertikalment, dak li huwa 1673 01:19:02,960 --> 01:19:05,050 mod tajjeb biex tagħmel dan - 1674 01:19:05,050 --> 01:19:06,780 waħda tajba għalkemm tagħmel dan? 1675 01:19:06,780 --> 01:19:11,950 Hekk aħna ma bżonn li kontinwament ifittxu madwar fajl tagħna biex tqiegħed l-affarijiet. 1676 01:19:11,950 --> 01:19:14,360 >> Din il-kwistjoni jista 'ma jkollhomx jagħmel sens, imma naħseb li 1677 01:19:14,360 --> 01:19:15,800 twieġeb li hija se tgħin. 1678 01:19:15,800 --> 01:19:17,210 >> STUDENT 82: Oħloq firxa? 1679 01:19:17,210 --> 01:19:20,090 >> JASON Hirschhorn: Mela ejja jaħsbu ta 'kull fajl bħala filliera. 1680 01:19:20,090 --> 01:19:22,550 Ejja jaħsbu f'termini ta 'ringieli. 1681 01:19:22,550 --> 01:19:26,670 Jekk għandna l-ewwel ringiela tagħna mill-żgħar tagħna stampa, nistgħu nagħmlu dan ringiela 1682 01:19:26,670 --> 01:19:30,640 fis ringiela kbir minn stampa kbira, u mbagħad tiġi replikata li ringiela madankollu 1683 01:19:30,640 --> 01:19:34,250 ħafna drabi jeħtieġ li jiġi replikat, minflok pixel jmorru mill pixel, 1684 01:19:34,250 --> 01:19:37,260 li gets konfuża meta jittrattaw ma 'fajls. 1685 01:19:37,260 --> 01:19:38,730 >> Għaliex jekk kellna - 1686 01:19:38,730 --> 01:19:41,260 Niġri barra ta 'spazju. 1687 01:19:41,260 --> 01:19:46,490 Jekk dan huwa fajl tagħna, u għandna li pixel wieħed hemm, u rridu li tqiegħed lilha 1688 01:19:46,490 --> 01:19:49,840 hemm dritt, aħna xorta għandhom xi affarijiet li jeħtieġ li jmorru fuq hemm meta nkunu 1689 01:19:49,840 --> 01:19:51,450 kitba u l-ħolqien fajl ġdid tagħna - 1690 01:19:51,450 --> 01:19:53,250 fajl tagħna dan huwa darbtejn akbar. 1691 01:19:53,250 --> 01:19:56,820 >> Imma huwa verament diffiċli b'funzjonijiet fajl skip madwar għal linji ġodda 1692 01:19:56,820 --> 01:20:00,260 bħal dik, u mbagħad mur lura hawn u l-affarijiet fil hemmhekk. 1693 01:20:00,260 --> 01:20:04,500 Huwa kważi impossibbli li tagħmel xi ħaġa bħal dik, jekk dan jagħmel sens. 1694 01:20:04,500 --> 01:20:10,180 Mela jekk naħsbu f'termini ta 'ringieli, nistgħu tieħu ringiela tagħna, u mbagħad titqiegħed - 1695 01:20:10,180 --> 01:20:11,720 jirreplika ringieli vertikalment. 1696 01:20:11,720 --> 01:20:15,860 >> U li kif nittrattaw resizing vertikalment milli orizzontalment. 1697 01:20:15,860 --> 01:20:18,810 Dan kien it-tip ta 'malajr, u ftit konfuża. 1698 01:20:18,810 --> 01:20:22,375 Sfortunatament ħin tagħna huwa up. 1699 01:20:22,375 --> 01:20:27,340 I se toqgħod barra għal dawk tal inti hawn li xi mistoqsijiet dwar l- 1700 01:20:27,340 --> 01:20:30,500 sett problema, inklużi jirkupraw. 1701 01:20:30,500 --> 01:20:32,320 >> Mela ejja taġġorna għal issa. 1702 01:20:32,320 --> 01:20:34,480 U għal darb'oħra, jekk għandek xi mistoqsijiet, nistgħu chat barra. 1703 01:20:34,480 --> 01:20:38,294