1 00:00:00,000 --> 00:00:12,510 2 00:00:12,510 --> 00:00:13,870 >> ROB: Olgu. 3 00:00:13,870 --> 00:00:16,770 Tere tulemast esimene lõik. 4 00:00:16,770 --> 00:00:17,480 Olen Rob. 5 00:00:17,480 --> 00:00:18,806 >> JOSEPH: ma olen Joseph. 6 00:00:18,806 --> 00:00:21,540 >> ROB: Nii me sukelduda õigus sisse 7 00:00:21,540 --> 00:00:23,420 Esimene asi, mida rääkida Kas seade. 8 00:00:23,420 --> 00:00:27,150 Loodetavasti enamik teist on alla laadinud juba. 9 00:00:27,150 --> 00:00:37,180 Aga näed juhiseid kell cs50.net/appliance. 10 00:00:37,180 --> 00:00:38,430 Oh jumal, nüüd ma olen uje. 11 00:00:38,430 --> 00:00:44,590 12 00:00:44,590 --> 00:00:45,430 Ma ikka kuulda. 13 00:00:45,430 --> 00:00:47,232 >> JOSEPH: Wow, see kõlab see on segaduses. 14 00:00:47,232 --> 00:00:52,460 >> ROB: Nii mõned inimesed on, kellel probleeme, seega ärge oodake 15 00:00:52,460 --> 00:00:54,940 viimase hetke probleemi seatud üritada lahendada seadme ja 16 00:00:54,940 --> 00:00:56,320 teada saada, et see ei tööta. 17 00:00:56,320 --> 00:00:59,010 >> JOSEPH: Ja kui midagi ei tööta ja vajate abi, siis võib minna 18 00:00:59,010 --> 00:01:03,390 cs50.net/discussion kus me foorumit, kus te 19 00:01:03,390 --> 00:01:04,110 saata oma küsimused. 20 00:01:04,110 --> 00:01:06,655 Ja me jõuame neid lõpuks. 21 00:01:06,655 --> 00:01:07,490 >> ROB: Olgu. 22 00:01:07,490 --> 00:01:12,180 Nii et see on see, mis Appliance välja näeb. 23 00:01:12,180 --> 00:01:15,480 Jällegi, see on lihtsalt täiesti eraldi operatsioonisüsteem töötab jooksul 24 00:01:15,480 --> 00:01:19,440 olenemata operatsioonisüsteemist töötab sülearvuti. 25 00:01:19,440 --> 00:01:24,450 Ja peamine, mida on kasuta on gedit. 26 00:01:24,450 --> 00:01:28,050 Loodetavasti see on juba saada tuttav kohas. 27 00:01:28,050 --> 00:01:29,470 Terminal. 28 00:01:29,470 --> 00:01:31,890 >> Ja saab ka käivitada Chrome jooksul Appliance. 29 00:01:31,890 --> 00:01:33,860 On olnud paar inimest kes on teatanud Interneti 30 00:01:33,860 --> 00:01:35,390 ei tööta Appliance. 31 00:01:35,390 --> 00:01:38,090 Ja mõned neist on lihtsalt eeldada, et seal ei peaks olema 32 00:01:38,090 --> 00:01:39,190 internet seadmesse. 33 00:01:39,190 --> 00:01:40,750 Aga jah, seal peaks olema internet. 34 00:01:40,750 --> 00:01:44,000 35 00:01:44,000 --> 00:01:46,410 >> Ma ütlen seda praegu, aga see ei tegelikult tähendavad midagi. 36 00:01:46,410 --> 00:01:50,680 Kui internet ei tööta, see on see, mida sa tavaliselt vaja 37 00:01:50,680 --> 00:01:52,180 jooksma, et seda parandada. 38 00:01:52,180 --> 00:01:55,602 Kui sul on internet küsimusi, ärge mäletan seda, just postitada selle 39 00:01:55,602 --> 00:01:57,560 Arutle ja me öelda, kestab see. 40 00:01:57,560 --> 00:02:00,420 Aga internet peaks töötama. 41 00:02:00,420 --> 00:02:06,650 >> Nii et ainus asi - jah, midagi muidu on tõesti oluline. 42 00:02:06,650 --> 00:02:08,979 Aga ma lihtsalt tahtsin rõhutada, et: - 43 00:02:08,979 --> 00:02:13,290 vt selle paremas nurgas. 44 00:02:13,290 --> 00:02:16,530 Nii iga teie seadmed tuleks olema IP-aadress. 45 00:02:16,530 --> 00:02:22,350 Ja hiljem semester, see IP aadress muutub asjakohane, kui 46 00:02:22,350 --> 00:02:27,230 te töötate web p-set, sest Teil on võimalik pääseda 47 00:02:27,230 --> 00:02:32,310 veebilehel te töötate oma kohaliku Chrome kasutades seda IP-aadress. 48 00:02:32,310 --> 00:02:35,400 >> Aga mida ma tahaksin kasutada IP aadress eest - ja sa ei pea seda tegema, ma 49 00:02:35,400 --> 00:02:37,460 tahan rõhutada seda - 50 00:02:37,460 --> 00:02:39,540 on siin. 51 00:02:39,540 --> 00:02:42,910 Nii et see on terminal aknas mu Mac, see ei ole 52 00:02:42,910 --> 00:02:44,580 Seadme üldse. 53 00:02:44,580 --> 00:02:47,190 Ja saate otsida mida See käsk. 54 00:02:47,190 --> 00:02:51,855 Aga ma lähen SSH otse minu Appliance. 55 00:02:51,855 --> 00:02:53,410 Ma ei tea, mis on uurimisperioodil. 56 00:02:53,410 --> 00:02:54,300 >> JOSEPH: 168 - 57 00:02:54,300 --> 00:02:56,080 >> 168.224.1.0. 58 00:02:56,080 --> 00:02:59,950 >> ROB: Nii et kui ma olen teinud Selle logige sisse 59 00:02:59,950 --> 00:03:05,450 Nüüd, põhimõtteliselt see on identne terminal aken mu Appliance. 60 00:03:05,450 --> 00:03:10,280 Nii et ma päris palju kunagi tegelikult töötatud seestpoolt seade ise. 61 00:03:10,280 --> 00:03:12,550 Ma alati on see töötab Taustal minimeeritud 62 00:03:12,550 --> 00:03:15,890 ja SSHed ta. 63 00:03:15,890 --> 00:03:24,270 >> Küsimus on selles, mida te ei kavatse et oleks võimalik kasutada gedit kergesti 64 00:03:24,270 --> 00:03:25,600 otse selle. 65 00:03:25,600 --> 00:03:31,500 Aga kui sa tahad olla tõeline cool häkker, siis peaks harjuma 66 00:03:31,500 --> 00:03:34,220 käsurea tekstiredaktor niikuinii. 67 00:03:34,220 --> 00:03:39,620 Nii Vim ja Emacs ja Nano, kõik need On erinevaid alternatiive. 68 00:03:39,620 --> 00:03:41,560 Nano kipub olema lihtsam. 69 00:03:41,560 --> 00:03:45,006 Ja ma arvan, et see ei ole süntaksi esiletõstmine. 70 00:03:45,006 --> 00:03:47,620 Oh, ei, see täiesti ei. 71 00:03:47,620 --> 00:03:49,870 Nii saab kasutada Nano, kuna et üks on üsna lihtne. 72 00:03:49,870 --> 00:03:52,000 >> Näete kõik need käsud allosas. 73 00:03:52,000 --> 00:03:54,750 See väike porgand sümbol. 74 00:03:54,750 --> 00:03:57,620 Kui te pole seda näinud enne, siis saad ilmselt näha palju nüüd. 75 00:03:57,620 --> 00:04:02,350 See tähendab üldiselt kontrolli porgand, nagu alt vasakult klaviatuuri 76 00:04:02,350 --> 00:04:04,130 kontrolli iseloomu. 77 00:04:04,130 --> 00:04:07,260 Nii et siin see on mulle siin - 78 00:04:07,260 --> 00:04:08,710 Oh, see ei lõigata, kui ma suumida 79 00:04:08,710 --> 00:04:11,040 Nii kontroll on X kuidas Ma lähen, et väljuda. 80 00:04:11,040 --> 00:04:14,710 Ja ta ütleb, et ma ei tabanud Y Jah, säästmine, N Ei 81 00:04:14,710 --> 00:04:17,190 Nii et Nano. 82 00:04:17,190 --> 00:04:22,860 >> Vim ja Emacs kipuvad olema veidi rohkem keeruline ja suur. 83 00:04:22,860 --> 00:04:28,840 Aga sa saad sellega harjunud, ja siis sa armastad seda. 84 00:04:28,840 --> 00:04:30,590 Nii et see on. 85 00:04:30,590 --> 00:04:31,720 >> JOSEPH: ei ole vaja teha. 86 00:04:31,720 --> 00:04:31,840 >> ROB: Jah. 87 00:04:31,840 --> 00:04:37,510 Te võite vabalt kasutada gedit'it Ülejäänud semester. 88 00:04:37,510 --> 00:04:40,630 Nii tahes seade seotud küsimusi? 89 00:04:40,630 --> 00:04:42,820 Või kas teil on mingeid mõtteid mida veel tuleb juttu umbes 90 00:04:42,820 --> 00:04:43,610 seadet? 91 00:04:43,610 --> 00:04:43,996 Jah. 92 00:04:43,996 --> 00:04:47,720 >> SPEAKER 1: Kui SSHed oma asi oli parool Crimson? 93 00:04:47,720 --> 00:04:48,390 >> ROB: Jah. 94 00:04:48,390 --> 00:04:50,170 Parool päris palju kõike seadmesse läheb 95 00:04:50,170 --> 00:04:52,473 olema Crimson. 96 00:04:52,473 --> 00:04:56,517 >> SPEAKER 2: Installi nagu tõeline IDE Seadme, kas see toimib? 97 00:04:56,517 --> 00:04:59,200 98 00:04:59,200 --> 00:05:07,290 >> ROB: Ma kujutan ette, Eclipse ei ole Fedora versiooni, millisel juhul, jah, 99 00:05:07,290 --> 00:05:08,420 saate seda teha. 100 00:05:08,420 --> 00:05:10,875 See ilmselt ei ole tõesti seda väärt. 101 00:05:10,875 --> 00:05:11,742 >> SPEAKER 2: OK. 102 00:05:11,742 --> 00:05:15,924 Nii et see on ilmselt lihtsam kui ma tahtsin kasutada Eclipse, lihtsalt kasutada native ja 103 00:05:15,924 --> 00:05:17,646 laadige - 104 00:05:17,646 --> 00:05:21,090 >> ROB: Oh, see on ka ilmselt lihtsam. 105 00:05:21,090 --> 00:05:24,046 Aga sa saad selle töö jooksul Appliance. 106 00:05:24,046 --> 00:05:27,740 >> JOSEPH: Ja kaamera küsimus oli, kas sa paigaldada veel 107 00:05:27,740 --> 00:05:29,490 IDE seadme sisemust? 108 00:05:29,490 --> 00:05:31,520 >> ROB: Eclipse on näiteks IDE. 109 00:05:31,520 --> 00:05:34,800 110 00:05:34,800 --> 00:05:36,050 Muid Appliance küsimusi? 111 00:05:36,050 --> 00:05:38,250 112 00:05:38,250 --> 00:05:38,680 Hea küll. 113 00:05:38,680 --> 00:05:44,920 >> Nii me nüüd edasi liikuda käsurea interface seotud asju, nii CLI. 114 00:05:44,920 --> 00:05:47,990 Ja veel, ma lihtsalt lähen tööle siin, sest see on identne 115 00:05:47,990 --> 00:05:52,780 tööpäeva jooksul terminal window jooksul Appliance. 116 00:05:52,780 --> 00:05:54,160 Kuidas see font otsite? 117 00:05:54,160 --> 00:05:55,970 Kas see on piisavalt suur? 118 00:05:55,970 --> 00:05:57,000 Hea küll. 119 00:05:57,000 --> 00:06:02,480 >> Nii on palju käske, sa peaksid päris harjunud 120 00:06:02,480 --> 00:06:04,490 kogu semestri. 121 00:06:04,490 --> 00:06:09,480 Big kaks navigeerimiseks on ls, nimekiri failid sellesse kataloogi ja 122 00:06:09,480 --> 00:06:11,380 CD, nii et muuta kataloogi. 123 00:06:11,380 --> 00:06:18,390 Ma võin muuta töölaua ja siis väga levinud muster on cd 124 00:06:18,390 --> 00:06:22,550 kataloog ja kohe ls Mis on kataloog. 125 00:06:22,550 --> 00:06:25,540 >> Inimesed mõnikord ei saa aru et Tab lõpetamine on asi. 126 00:06:25,540 --> 00:06:28,370 Nii nagu cd, vh ja siis lõin Tab. 127 00:06:28,370 --> 00:06:30,790 Ma peaaegu kunagi tüüp välja kogu asi. 128 00:06:30,790 --> 00:06:32,920 Ja siis, kui ma saan pihta Tab uuesti, siis see automaatselt 129 00:06:32,920 --> 00:06:33,670 alustada loetletakse minu jaoks. 130 00:06:33,670 --> 00:06:37,000 Et ma saaks cd vhosts, kohalik host. 131 00:06:37,000 --> 00:06:39,880 Ja see lihtsalt läheb - 132 00:06:39,880 --> 00:06:43,380 juhul kui te ei ole kuulnud sõna enne, kataloog on lihtsalt üks sõna 133 00:06:43,380 --> 00:06:45,170 jaoks kausta. 134 00:06:45,170 --> 00:06:49,930 Nüüd, kui sa näed - 135 00:06:49,930 --> 00:06:51,810 toome selle üles. 136 00:06:51,810 --> 00:06:55,380 >> Nüüd, kui näed sulgudes, siis vaata vähe tilde, slash, vhost, 137 00:06:55,380 --> 00:06:56,810 kärpida, kohalik host. 138 00:06:56,810 --> 00:07:00,040 Nii tilde, mis viitab minu kodukataloogi. 139 00:07:00,040 --> 00:07:03,090 See on kataloog oled aastal, kui sa SSH sisse 140 00:07:03,090 --> 00:07:05,660 See on kataloog oled kui kui avada terminal. 141 00:07:05,660 --> 00:07:08,650 See on koht, kus hakkate. 142 00:07:08,650 --> 00:07:13,110 Ja nii ma olen sees minu kodu kataloogi, ja ma olen sees vhost 143 00:07:13,110 --> 00:07:14,475 Kataloog sees minu kodu kataloog. 144 00:07:14,475 --> 00:07:19,670 Ja siis ma olen sees kohaliku võõrustada kataloog sees, et. 145 00:07:19,670 --> 00:07:23,740 >> Nii mõned muud kasulikud asjad koos cd - 146 00:07:23,740 --> 00:07:29,220 või ka üldiselt nii dot alati viitab praegune kataloog. 147 00:07:29,220 --> 00:07:31,130 Cd, dot on päris mõttetu käsk. 148 00:07:31,130 --> 00:07:35,150 Aga see, kes lähevad üle jooksvasse kataloogi. 149 00:07:35,150 --> 00:07:38,230 Kasulikum üks poolest CD dot, dot, mis on 150 00:07:38,230 --> 00:07:40,220 lihtsalt minema üks kataloog. 151 00:07:40,220 --> 00:07:43,360 >> Ja pange tähele, et need - 152 00:07:43,360 --> 00:07:48,610 Ma tahan öelda, varjunimed, kuid need sümbolid, dot, ja dot, dot, nende töö 153 00:07:48,610 --> 00:07:51,740 päris palju tahes käsu sa oled kavatse mõelda töötab. 154 00:07:51,740 --> 00:07:55,370 Nii nagu CD on ilmselt kus sa oled kasutades kõige, kuid need ei ole 155 00:07:55,370 --> 00:07:56,780 asju, mis lihtsalt cd mõistab. 156 00:07:56,780 --> 00:07:59,980 See on päris palju midagi oma kogu käsurea mõistab. 157 00:07:59,980 --> 00:08:01,932 Palju programme aru dot ja punkt punkt. 158 00:08:01,932 --> 00:08:04,830 159 00:08:04,830 --> 00:08:09,090 >> Niisiis muud kasulikku ones - cd, kriips. 160 00:08:09,090 --> 00:08:13,460 Nii et läheb toob mind viimane kataloog, et ma olin sisse 161 00:08:13,460 --> 00:08:15,980 Nii et mõnikord ma teen midagi, oh, ma töötan siin. 162 00:08:15,980 --> 00:08:21,110 Ja ma näen, mõned viga midagi, ja Ma lähen seda uurida minnes 163 00:08:21,110 --> 00:08:24,020 mingi suvaline kataloog kuhugi. 164 00:08:24,020 --> 00:08:25,260 Ja ma ei tea, kas see saab lase mind sinna. 165 00:08:25,260 --> 00:08:25,720 See. 166 00:08:25,720 --> 00:08:27,615 Nii ma siis teha, mida ma tahan, selles kataloogis. 167 00:08:27,615 --> 00:08:28,950 Blah, blah, blah, blah, blah. 168 00:08:28,950 --> 00:08:31,770 Ja ma olin nagu, eks, ma tahan minna tagasi sinna, kus ma olin. 169 00:08:31,770 --> 00:08:34,490 cd, kriips, ja see toob mulle kohe tagasi. 170 00:08:34,490 --> 00:08:39,970 >> Nii et ma viskan palju Nende sind täna. 171 00:08:39,970 --> 00:08:43,730 Ma ei arvanud, et sa meelde neid kõiki. 172 00:08:43,730 --> 00:08:46,170 See on omamoodi lihtsalt tean, et nad on olemas. 173 00:08:46,170 --> 00:08:48,690 Ja siis hiljem, kui sa oled nagu, hmm, ma tahan minna tagasi 174 00:08:48,690 --> 00:08:51,870 kataloog, et ma olin just, oh, oota, midagi sellist, mis on olemas. 175 00:08:51,870 --> 00:08:53,980 Sa ei pea lihtsalt kirjuta Kogu kataloog uuesti. 176 00:08:53,980 --> 00:08:56,090 >> JOSEPH: Ja lõpuks sa lihtsalt neid kasutada ikka ja jälle, ja 177 00:08:56,090 --> 00:08:57,830 siis see muutub lihase mälu. 178 00:08:57,830 --> 00:09:00,090 >> ROB: Jah. 179 00:09:00,090 --> 00:09:02,930 Niisiis, kuidas ma enne ütlesin, et tilde on oma kodukataloogi. 180 00:09:02,930 --> 00:09:04,820 Et ma saaks cd, tilde. 181 00:09:04,820 --> 00:09:07,280 Aga ma ei pea isegi seda teha, kui ma lihtsalt - 182 00:09:07,280 --> 00:09:09,760 Ma lähen tagasi kataloogi nii see ei ole mõttetu näide. 183 00:09:09,760 --> 00:09:14,560 Aga kui ma lihtsalt teha cd, mis on ka sama, minge oma kodukataloogi. 184 00:09:14,560 --> 00:09:18,380 185 00:09:18,380 --> 00:09:19,880 Ma käsin, K. 186 00:09:19,880 --> 00:09:24,015 >> JOSEPH: Võite ka tippida selge, sõna, ja see peaks selge see. 187 00:09:24,015 --> 00:09:28,650 >> ROB: Ja ma arvan, et ka kontroll, L ka teeb seda. 188 00:09:28,650 --> 00:09:29,690 Nii palju erinevaid viise. 189 00:09:29,690 --> 00:09:34,070 Ma arvan, et on mõningaid erinevusi, kui selge ja Tõrje Ma lihtsalt 190 00:09:34,070 --> 00:09:37,280 tõesti lükake see üles ja Ma ei saa ikka tagasi kerima. 191 00:09:37,280 --> 00:09:40,580 Command, K sõnalt hävitab kõike, ja sa 192 00:09:40,580 --> 00:09:42,960 ei saa kerida varundada. 193 00:09:42,960 --> 00:09:45,530 Vähemalt on, see on kuidas see toimib iTerm2. 194 00:09:45,530 --> 00:09:48,690 Ma ei tea, kuidas teised asjad - 195 00:09:48,690 --> 00:09:49,360 oh. 196 00:09:49,360 --> 00:09:55,450 >> Mis SSHing, nii et kui sul on Windows, sa lähed on alla PuTTY 197 00:09:55,450 --> 00:10:02,360 et SSH sest Windows ei on nagu sisseehitatud SSH abil. 198 00:10:02,360 --> 00:10:06,150 Alates Mac saate lihtsalt SSH otse terminali aknas. 199 00:10:06,150 --> 00:10:08,755 200 00:10:08,755 --> 00:10:09,690 OK. 201 00:10:09,690 --> 00:10:11,840 Küsimused? 202 00:10:11,840 --> 00:10:19,260 >> LS, seega midagi harjuda enamik neist käsud on - 203 00:10:19,260 --> 00:10:20,060 Noh, ma lihtsalt teha üks. 204 00:10:20,060 --> 00:10:21,310 Ls, kriips, l. 205 00:10:21,310 --> 00:10:26,330 Nii kriips, l, mida me helistada lipu ls. 206 00:10:26,330 --> 00:10:30,770 Ja palju need käsud on lipud mis saab edasi neile. 207 00:10:30,770 --> 00:10:35,020 Nii et sel juhul kriips, l on lipp , mis ütleb, et see annab mulle täieliku 208 00:10:35,020 --> 00:10:37,850 loetletud kõik andmed neid faile. 209 00:10:37,850 --> 00:10:44,790 >> Nii et me näeme siin, et desktop oli muudetud 30. juulil kell 00:54. 210 00:10:44,790 --> 00:10:47,160 Downloads muudeti juures 6. september. 211 00:10:47,160 --> 00:10:52,350 Need on praeguse suuruse ja baiti nende katalooge. 212 00:10:52,350 --> 00:10:54,412 Sa ei pea aru kõik see. 213 00:10:54,412 --> 00:11:00,380 >> See värk vasakul need drwx on, mis muutub palju asjakohasem 214 00:11:00,380 --> 00:11:02,290 hiljem, kui sa pead tegelema - 215 00:11:02,290 --> 00:11:05,900 mis on pistmist, kellel on õigusi vaadata neid faile. 216 00:11:05,900 --> 00:11:09,880 Ja kui sa ei ole ainus kasutaja see arvuti, siis oleks võimalik 217 00:11:09,880 --> 00:11:13,345 ütleme, OK, ma peaks olema ainult üks lubatud vaadata faili või ma olen 218 00:11:13,345 --> 00:11:14,870 kavatse lubada igaüks vaadata seda pilti. 219 00:11:14,870 --> 00:11:17,710 Nii et keegi teine ​​minu arvutis võite vaadata seda pilti. 220 00:11:17,710 --> 00:11:22,190 221 00:11:22,190 --> 00:11:25,600 Ma isegi ei tea, mida see - Mida see teeb? 222 00:11:25,600 --> 00:11:26,840 >> JOSEPH: Ma ei ole päris kindel, tegelikult. 223 00:11:26,840 --> 00:11:27,705 >> ROB: Pole aimugi. 224 00:11:27,705 --> 00:11:30,530 >> JOSEPH: Aga kui sa ei tea, on kasulik käsk, mida saab kasutada 225 00:11:30,530 --> 00:11:31,680 öelda, mida väljund tähendab. 226 00:11:31,680 --> 00:11:33,780 Ja kui sa kirjutad mees Enne käsu - 227 00:11:33,780 --> 00:11:35,000 nii M-N. ROB: Man. 228 00:11:35,000 --> 00:11:37,690 Nii mees on veel üks mis on väga kasulik. 229 00:11:37,690 --> 00:11:39,540 Ja mees, ls. 230 00:11:39,540 --> 00:11:47,320 Nii mees lehti nad on nii käske, et sa kavatsed kasutada 231 00:11:47,320 --> 00:11:50,330 käsurida, ja neil on ka funktsioone, mis on asjakohased 232 00:11:50,330 --> 00:11:52,530 koos C. Nii saab inimesele - 233 00:11:52,530 --> 00:11:53,720 ja ma ignoreerida 3. 234 00:11:53,720 --> 00:11:57,410 Aga mees 3 printf läheb toob kuni C versiooni printf. 235 00:11:57,410 --> 00:12:01,030 Aga kui ma seda meest printf, see on läheb avab käsk printf 236 00:12:01,030 --> 00:12:03,540 mis juhtub käsureal. 237 00:12:03,540 --> 00:12:05,730 >> Nii mees, ls. 238 00:12:05,730 --> 00:12:09,030 Man-lehekülgi võib olla päris suur. 239 00:12:09,030 --> 00:12:12,770 Siin aga näete selle oksjoni Kõigi nende lipud, et LS 240 00:12:12,770 --> 00:12:14,300 mõistab. 241 00:12:14,300 --> 00:12:17,876 Nii et kui me läheme kriips, l, ja - 242 00:12:17,876 --> 00:12:19,300 Ma lihtsalt viskan selle sulle. 243 00:12:19,300 --> 00:12:23,050 Aga selleks, et leida, mida soovite kõigepealt tabas küsimus 244 00:12:23,050 --> 00:12:24,780 kaubamärgi või kaldkriipsuga nuppu. 245 00:12:24,780 --> 00:12:26,040 Nii kärpida. 246 00:12:26,040 --> 00:12:29,000 >> Ja siis ma saan otsida eest, mida tahan. 247 00:12:29,000 --> 00:12:33,780 Ma lähen kärpida eest kriips, l. 248 00:12:33,780 --> 00:12:35,110 Ja seal see oli. 249 00:12:35,110 --> 00:12:37,450 Nii et kasutage pikk loetelu vormis. 250 00:12:37,450 --> 00:12:40,060 See ei aita mul aru saada, mis et eriti veerg tähendas, aga ma 251 00:12:40,060 --> 00:12:44,480 endale kuskil siin oleks seletada. 252 00:12:44,480 --> 00:12:48,740 Nii et kasutage mees lehekülge käsu et sa ei ole kohe aru. 253 00:12:48,740 --> 00:12:51,080 >> Ma olen päris kindel, et sa ei saa isegi inimene, mees. 254 00:12:51,080 --> 00:12:53,070 Liides online käsiraamatud. 255 00:12:53,070 --> 00:12:57,700 256 00:12:57,700 --> 00:13:03,570 Oh, üks viimane, mis on võib-olla pisut Oluline on ls, kriips. 257 00:13:03,570 --> 00:13:08,490 Nii teate, kas ma just seda ls, Ma saan need viis faile. 258 00:13:08,490 --> 00:13:11,480 Kui ma ls, kriips, ma saada palju rohkem faile. 259 00:13:11,480 --> 00:13:15,350 Nii ühine joon nende vahel uusi faile on dot varem. 260 00:13:15,350 --> 00:13:21,220 >> Nii tava on, et faili algab dot on peidetud. 261 00:13:21,220 --> 00:13:25,300 Nii et sa ei taha näha, et fail, ei taha olla see jama 262 00:13:25,300 --> 00:13:26,750 oma kataloogis. 263 00:13:26,750 --> 00:13:30,020 See on ainult siis, kui sa konkreetselt küsida, Olgu, ls, sidekriips, näita mulle. 264 00:13:30,020 --> 00:13:32,830 Tähistab kõiki faile, sealhulgas peidetud ones. 265 00:13:32,830 --> 00:13:37,260 266 00:13:37,260 --> 00:13:39,270 Nii mõned teised käsud. 267 00:13:39,270 --> 00:13:41,323 Oh, küsimusi sel hetkel? 268 00:13:41,323 --> 00:13:41,746 Jah. 269 00:13:41,746 --> 00:13:45,914 >> SPEAKER 3: Kui sa ls, , mis dot, dot? 270 00:13:45,914 --> 00:13:46,870 >> ROB: Oh. 271 00:13:46,870 --> 00:13:48,780 Nii et see on see, mida ma räägin. 272 00:13:48,780 --> 00:13:50,890 See on sama asi, kui Ma ei meeldi cd, dot, dot. 273 00:13:50,890 --> 00:13:56,790 Nii tehniliselt, dot ja punkt punkt on failid, mis on olemas iga 274 00:13:56,790 --> 00:14:03,620 kataloog, kus dot failis praeguse kataloogi. 275 00:14:03,620 --> 00:14:06,930 Nii et kui ma cd, dot, ma lihtsalt viibida kataloog. 276 00:14:06,930 --> 00:14:10,870 Ja punkt punkt viitab alati eelmine kataloog ühe taseme võrra üles. 277 00:14:10,870 --> 00:14:18,200 Nii et kui ma minema palke ja LS-kriips-al, Ma vaatan, dot, dot. cd dot, dot 278 00:14:18,200 --> 00:14:20,390 jõuan eelmise kataloog. 279 00:14:20,390 --> 00:14:24,530 280 00:14:24,530 --> 00:14:25,780 Jah. 281 00:14:25,780 --> 00:14:27,160 282 00:14:27,160 --> 00:14:28,110 OK. 283 00:14:28,110 --> 00:14:33,070 >> Nii teine ​​päris oluline käsk rm. 284 00:14:33,070 --> 00:14:35,650 Nii see on, mida me kasutada eemaldada. 285 00:14:35,650 --> 00:14:38,100 Ja las ma tegelikult teha teises käsk esimene. 286 00:14:38,100 --> 00:14:39,610 Nii mkdir. 287 00:14:39,610 --> 00:14:42,770 Mkdir on, kuidas saab luua katalooge. 288 00:14:42,770 --> 00:14:47,530 Ja ma luua ajutine kataloog ja minna, et ajutine kataloog. 289 00:14:47,530 --> 00:14:49,590 Ja nagu oodatud, see on tühi. 290 00:14:49,590 --> 00:14:53,680 Aga kui ma ls, kriips, mul on veel dot ja dot, dot, sest dot viitab 291 00:14:53,680 --> 00:14:54,480 jooksva kataloogi. 292 00:14:54,480 --> 00:14:56,170 Ja punkt punkt viitab eelmine kataloog. 293 00:14:56,170 --> 00:14:58,700 Ja need on alati olemas ükskõik Kataloog olete sisse 294 00:14:58,700 --> 00:15:01,910 295 00:15:01,910 --> 00:15:09,010 >> Ja see on täiesti tarbetu käsk, kuid touch. 296 00:15:09,010 --> 00:15:11,880 Ma lihtsalt seda kasutada, sest see on lihtne viis luua faile. 297 00:15:11,880 --> 00:15:16,180 Nii puudutada, katsuda b puudutage c on lihtsalt kavatse luua kolm faili nimega, 298 00:15:16,180 --> 00:15:17,845 b ja c, mis on täiesti tühi. 299 00:15:17,845 --> 00:15:20,450 300 00:15:20,450 --> 00:15:24,980 Seega punkt mind luues neile, esiteks on lihtsalt nii, et RM on 301 00:15:24,980 --> 00:15:26,250 kuidas saame eemaldada. 302 00:15:26,250 --> 00:15:27,850 Nii rm,. 303 00:15:27,850 --> 00:15:30,960 Seda küsin mina, eemaldage regulaarne tühja faili? 304 00:15:30,960 --> 00:15:33,170 Ja siis ma ütlen jah. 305 00:15:33,170 --> 00:15:39,090 >> Nii et kui ma tean kindlalt, et ma tahan kustuta see fail, ilma et oleks 306 00:15:39,090 --> 00:15:44,500 küsitakse, eemaldada regulaarselt tühi fail?, siis rm, kriips, f hakkab olema 307 00:15:44,500 --> 00:15:48,230 lipp, mis ütleb, sundida eemaldada ilma isegi sunnib mind, oh, sa oled 308 00:15:48,230 --> 00:15:49,710 kindel, et soovid kustutada faili? 309 00:15:49,710 --> 00:15:50,810 Jah, ma olen kindel. 310 00:15:50,810 --> 00:15:56,050 Nii rm, kriips, fb tekitavad lihtsalt seda teha ilma küsimata. 311 00:15:56,050 --> 00:15:57,950 >> Seega teeme veel mõned kataloogid. 312 00:15:57,950 --> 00:16:03,670 mkdir, tmp2, cd, tmp2, puudutada, katsuda b. 313 00:16:03,670 --> 00:16:04,300 OK. 314 00:16:04,300 --> 00:16:08,180 Nüüd ma tahan, et eemaldada tmp2 kui kataloog. 315 00:16:08,180 --> 00:16:10,316 Nii rm tmp2. 316 00:16:10,316 --> 00:16:12,920 Sa ei saa kustutada tmp2, see on kataloog. 317 00:16:12,920 --> 00:16:21,370 Seega küsimus on selles, et rm ei kohe tööle katalooge. 318 00:16:21,370 --> 00:16:26,530 See on mõeldud ainult faile nagu mitte-kataloogi faile. 319 00:16:26,530 --> 00:16:30,800 >> Ja mida me saame teha siin on rm, kriips, r. 320 00:16:30,800 --> 00:16:35,160 See tähistab rekursiivselt, mis võib ei tähenda sulle midagi veel. 321 00:16:35,160 --> 00:16:38,280 Aga kui sa saad rekursioon, see loeb rohkem. 322 00:16:38,280 --> 00:16:43,540 Nii rm, kriips, r, tmp2 läheb rekursiivselt laskuda, et kataloogis. 323 00:16:43,540 --> 00:16:45,540 Nii laskutakse kataloog tmp2? 324 00:16:45,540 --> 00:16:47,330 Jah, lähme sinna. 325 00:16:47,330 --> 00:16:49,360 Kas me tahame, et eemaldada tmp2 /? 326 00:16:49,360 --> 00:16:49,745 Jah. 327 00:16:49,745 --> 00:16:51,830 Kas me tahame, et eemaldada tmp2 / b? 328 00:16:51,830 --> 00:16:52,840 Jah. 329 00:16:52,840 --> 00:16:55,170 Nüüd me tahame, et eemaldada Kataloog tmp2? 330 00:16:55,170 --> 00:16:56,040 Jah. 331 00:16:56,040 --> 00:16:58,410 Ja nüüd kataloogist ja kõik sees 332 00:16:58,410 --> 00:16:59,660 see on eemaldatud. 333 00:16:59,660 --> 00:17:02,850 334 00:17:02,850 --> 00:17:07,250 >> On tehniliselt käsk rmdir , mida saab kasutada, et kõrvaldada 335 00:17:07,250 --> 00:17:11,670 kataloogid, kuid see toimib ainult on tühi katalooge niikuinii. 336 00:17:11,670 --> 00:17:14,109 Ja vaata, et lähme lihtsalt teha mkdir, tmp2 uuesti. 337 00:17:14,109 --> 00:17:15,940 Tmp2 puudutage. 338 00:17:15,940 --> 00:17:16,800 OK. 339 00:17:16,800 --> 00:17:22,770 Nii et kui ma üritan eemaldada dirtmp2, siis see öelda, kataloog ei ole tühi. 340 00:17:22,770 --> 00:17:29,540 Nii et ma päris palju ei kasuta kunagi eemalda dir käsk niikuinii, sest rm, kriips, 341 00:17:29,540 --> 00:17:35,140 r töötab tühi katalooge ja mitte-tühjad kataloogid. 342 00:17:35,140 --> 00:17:37,760 >> Ja ka siis, kui ma ei taha olla läbi minema, et kogu protsessi 343 00:17:37,760 --> 00:17:40,720 laskumisel kataloog ja eemaldades iga faili, rm, 344 00:17:40,720 --> 00:17:44,190 kriips, RF, tmp2. 345 00:17:44,190 --> 00:17:45,670 Ja nüüd on see kadunud. 346 00:17:45,670 --> 00:17:51,220 >> Midagi olla ettevaatlik kohta on rm, kriips, rf. 347 00:17:51,220 --> 00:17:53,660 Ja see hirmutab mind isegi tippida, sest kui ma kogemata 348 00:17:53,660 --> 00:17:55,090 Enter või midagi. 349 00:17:55,090 --> 00:18:02,735 Nii rm, kriips, RF, tilde oleks ilma sunnib mind, f ei küsi 350 00:18:02,735 --> 00:18:05,670 mind, see automaatselt eemaldada minu kogu kataloogi ja 351 00:18:05,670 --> 00:18:06,780 kõik see. 352 00:18:06,780 --> 00:18:11,460 Nii et te võite arvata, et see loll asi, mida teha. 353 00:18:11,460 --> 00:18:12,830 Ja noh, see on. 354 00:18:12,830 --> 00:18:18,600 >> Kuid see võib juhtuda väga kergesti õnnetus, kui, ütleme, ma tahtsin, et eemaldada 355 00:18:18,600 --> 00:18:21,640 minu kaldkriipsuga vhost kataloog. 356 00:18:21,640 --> 00:18:26,610 Ja just kiire kirjutades, Ma kogemata seda teha. 357 00:18:26,610 --> 00:18:31,880 See eemaldab rekursiivselt nii minu kataloogi ja vhost kataloog 358 00:18:31,880 --> 00:18:35,450 selle konkreetse kataloogi, lihtsalt juhtub ole praegu. 359 00:18:35,450 --> 00:18:39,520 Aga see ikkagi eemaldada minu kogu kataloogi. 360 00:18:39,520 --> 00:18:43,090 Vähemalt mitte võttes f, see oleks kiire mul esimene. 361 00:18:43,090 --> 00:18:45,670 Ja ma tahaks olla nagu, oh, ei, ma ei taha seda teha. 362 00:18:45,670 --> 00:18:50,570 Aga inimesed, kaldkriips, sealhulgas mind pigem sattuda 363 00:18:50,570 --> 00:18:53,090 harjumus alati RF-dest. 364 00:18:53,090 --> 00:18:58,713 Isegi tavalised failid, et võin lihtsalt rm, c, ma pigem lihtsalt rm, kriips, RF, c. 365 00:18:58,713 --> 00:19:01,330 Ole ettevaatlik, kui sa oled rf-dest. 366 00:19:01,330 --> 00:19:03,160 >> SPEAKER 4: Mis C teha? 367 00:19:03,160 --> 00:19:11,570 >> ROB: C Ma räägin, et C fail selle kataloogi, et rm, c. 368 00:19:11,570 --> 00:19:15,730 >> JOSEPH: Ja veel ohtlikult, kui te kasutate star, see tähendab kõik 369 00:19:15,730 --> 00:19:16,450 kataloog. 370 00:19:16,450 --> 00:19:20,040 Niisiis, mida ma tavaliselt kipuvad tegema, on ma minema kataloog ja ma tahan 371 00:19:20,040 --> 00:19:21,510 Kustuta kõik failid sinna. 372 00:19:21,510 --> 00:19:23,640 Nii rm, kriips, RF, star. 373 00:19:23,640 --> 00:19:25,700 >> ROB: Jah. 374 00:19:25,700 --> 00:19:26,780 Rm, kriips, RF, star. 375 00:19:26,780 --> 00:19:29,530 >> JOSEPH: Ja kui sa ei ole ettevaatlik mis kataloog sul - 376 00:19:29,530 --> 00:19:33,340 Ma polnud temp, kuid olin kogemata minu kodu kataloogi 377 00:19:33,340 --> 00:19:35,450 siis ma eemaldada kõik minu kodukataloogi. 378 00:19:35,450 --> 00:19:39,095 Ja ma olen tegelikult seda varem teinud, ja Ma arvan, et oled seda teinud enne või 379 00:19:39,095 --> 00:19:40,640 Jay on seda varem teinud. 380 00:19:40,640 --> 00:19:42,480 >> ROB: Olen kogemata ära - 381 00:19:42,480 --> 00:19:44,480 nii ignoreerida käsk natuke. 382 00:19:44,480 --> 00:19:45,800 >> JOSEPH: ei ole lõbus. 383 00:19:45,800 --> 00:19:52,650 >> ROB: Nii kaldkriipsuga bin kataloogi hunnik binaarse faili kus muidu 384 00:19:52,650 --> 00:19:54,840 olema tuttav need nagu rõkkama. 385 00:19:54,840 --> 00:20:00,740 Noh, ripu ja põhimõtteliselt kõik need asjad, mida ma töötab käsk 386 00:20:00,740 --> 00:20:02,060 line on see kaldkriips bin kataloogi. 387 00:20:02,060 --> 00:20:03,090 >> JOSEPH: Asjalik Kas on siin. 388 00:20:03,090 --> 00:20:06,285 >> ROB: Nii dot, kaldkriips, ls oleks loetleda see kataloog. 389 00:20:06,285 --> 00:20:08,120 >> JOSEPH: Rm on ka selles kataloogis. 390 00:20:08,120 --> 00:20:12,770 >> ROB: olen kogemata rm, RF-ed bin, mis kõrvaldas käsk suutsin 391 00:20:12,770 --> 00:20:14,380 võib-olla kunagi tahad. 392 00:20:14,380 --> 00:20:18,085 Mis siis ma lihtsalt installida uus Appliance sel hetkel. 393 00:20:18,085 --> 00:20:20,170 >> JOSEPH: Nii peab olema väga ettevaatlik, kui sa seda käsku kasutada. 394 00:20:20,170 --> 00:20:21,120 >> Publik: [kuuldamatu]? 395 00:20:21,120 --> 00:20:22,640 >> ROB: Jah. 396 00:20:22,640 --> 00:20:24,135 See on ka halb harjumus sattuda. 397 00:20:24,135 --> 00:20:27,920 398 00:20:27,920 --> 00:20:30,170 Kui märkate, ma olen nüüd - 399 00:20:30,170 --> 00:20:33,580 Noh, sa ei märka, kuid minu zoom-in ehk võimalik. 400 00:20:33,580 --> 00:20:35,360 Nii et ma olen nüüd root @ aparaat. 401 00:20:35,360 --> 00:20:39,790 Nii jharvard on kasutaja tahame sa alati kasutad. 402 00:20:39,790 --> 00:20:43,820 Root on kasutaja, kellel on luba teha absoluutselt kõike. 403 00:20:43,820 --> 00:20:50,260 >> Nii teate, kui ma olen jharvard, kui üritan cd - 404 00:20:50,260 --> 00:20:52,461 Mis on kataloogi? 405 00:20:52,461 --> 00:20:53,980 Oh, juur on hea näide. 406 00:20:53,980 --> 00:20:54,950 Nii cd, root. 407 00:20:54,950 --> 00:20:56,030 Keelati. 408 00:20:56,030 --> 00:21:00,060 Sest kui me vaatame seda pakkumist - 409 00:21:00,060 --> 00:21:02,410 ja jälle, sa ei pea täielikult aru. 410 00:21:02,410 --> 00:21:09,210 Aga need kolm kriipsu ütlevad mis ei lase muid 411 00:21:09,210 --> 00:21:11,120 kasutaja sellesse kataloogi. 412 00:21:11,120 --> 00:21:14,540 Ja kataloog juhtub kuuluma root. 413 00:21:14,540 --> 00:21:20,310 >> Nii, et ma olen jharvard ja ei üks, kes ei ole root on lubatud arvesse 414 00:21:20,310 --> 00:21:23,490 see kataloog, mis tähendab, et ma olen hakka loata keelatud, kui ma 415 00:21:23,490 --> 00:21:25,160 proovige cd ta. 416 00:21:25,160 --> 00:21:31,370 Nii et kui ma olen root, mul on luba teha absoluutselt kõike, kaasa arvatud 417 00:21:31,370 --> 00:21:34,660 kustutada olulisi faile seadmele ja 418 00:21:34,660 --> 00:21:36,640 hävitada kogu asi. 419 00:21:36,640 --> 00:21:41,240 >> Nii et see on halb harjumus sattuda lihtsalt rännates oma 420 00:21:41,240 --> 00:21:43,650 operatsioonisüsteemi administraatorina. 421 00:21:43,650 --> 00:21:46,520 Ma teen seda ikkagi. 422 00:21:46,520 --> 00:21:48,710 Küsimused? 423 00:21:48,710 --> 00:21:52,230 Ja ma väljumiseks root, viibida nii jharvard. 424 00:21:52,230 --> 00:21:54,510 OK. 425 00:21:54,510 --> 00:21:55,820 >> Rohkem asjakohaseid käske. 426 00:21:55,820 --> 00:22:03,975 Nii läheb tagasi meie temp, mv käsk seisab liikuda. 427 00:22:03,975 --> 00:22:05,450 Võite liikuda. 428 00:22:05,450 --> 00:22:07,610 Nüüd tahame seda nimetada b, Nüüd nimetatakse seda b. 429 00:22:07,610 --> 00:22:10,650 Või äkki me tahame liikuda b kuni üks kataloog. 430 00:22:10,650 --> 00:22:12,730 Nüüd see kataloog on tühi. 431 00:22:12,730 --> 00:22:15,410 Ma lähen tagasi oma kodukataloogi, ja me näeme, et b on siin, sest 432 00:22:15,410 --> 00:22:19,230 kodukataloogi oli üks kataloog üles kataloog, B oleks sisse 433 00:22:19,230 --> 00:22:24,710 434 00:22:24,710 --> 00:22:26,580 >> Seal on ka AP. 435 00:22:26,580 --> 00:22:33,210 Nii AP kopeerida super osas dot, teksti. 436 00:22:33,210 --> 00:22:35,750 Ma võin nimetada seda s, dot, teksti. 437 00:22:35,750 --> 00:22:39,780 Nüüd on meil nii super osas dot, teksti ja s, dot, teksti. 438 00:22:39,780 --> 00:22:41,340 See toimib ka katalooge. 439 00:22:41,340 --> 00:22:44,040 440 00:22:44,040 --> 00:22:46,560 I RF väljaanne ühes failis. 441 00:22:46,560 --> 00:22:48,200 Nii cp - 442 00:22:48,200 --> 00:22:51,710 Noh, esiteks proovime cp, tmp, tmp2. 443 00:22:51,710 --> 00:22:53,220 Niisiis, jättes kataloog tmp. 444 00:22:53,220 --> 00:22:57,440 Nii sarnane rm, vaikimisi on tööta katalooge. 445 00:22:57,440 --> 00:23:01,570 >> Ja jälle sarnane rm, vaikimisi käitumine - noh, saad seda teha 446 00:23:01,570 --> 00:23:04,230 kataloogid on, kriips-r ära. 447 00:23:04,230 --> 00:23:09,240 Nii kopeerida rekursiivselt temp Kataloog arvesse tmp2. 448 00:23:09,240 --> 00:23:13,700 Ja nüüd on meil nii tmp ja tmp2, ja mis ei ole, et kasulik, sest tmp 449 00:23:13,700 --> 00:23:16,814 oli tühi esiteks. 450 00:23:16,814 --> 00:23:18,660 Tmp2. 451 00:23:18,660 --> 00:23:22,680 >> Nüüd kopeeri tmp arvesse tmp2. 452 00:23:22,680 --> 00:23:27,900 Ja me näeme, et tmp2 ka fail , sest kataloogi ja 453 00:23:27,900 --> 00:23:32,220 kõik sees, mis kataloogi kopeerida. 454 00:23:32,220 --> 00:23:36,000 Ja mis võib olla mõnevõrra kasulik kui, ütleme te töötate 455 00:23:36,000 --> 00:23:38,860 on probleem määrata üks - 456 00:23:38,860 --> 00:23:41,320 või tegelikult, hiljem probleem kogumid veelgi olulisem, sest 457 00:23:41,320 --> 00:23:43,660 on terve hunnik faile ja asju. 458 00:23:43,660 --> 00:23:47,010 >> Aga sa lihtsalt tahad, osade kaupa Teiseks, sa oled nagu, eks ma olen 459 00:23:47,010 --> 00:23:50,210 kavatsen proovida midagi muud. 460 00:23:50,210 --> 00:23:57,860 Las ma lihtsalt kopeerida kogu mu pset1 Kataloog arvesse pset1 backup, et kui 461 00:23:57,860 --> 00:24:01,490 Ma lõpuks kruvimiseks asju, ma ei minna tagasi minu backup kataloogis. 462 00:24:01,490 --> 00:24:07,340 Seal on rohkem sobivaid võimalusi versioonimist varundusmeetodid koodi, kuid 463 00:24:07,340 --> 00:24:10,610 see on alati kiire viis lihtsalt et teil on koopia midagi 464 00:24:10,610 --> 00:24:11,860 et sa oled umbes muuta. 465 00:24:11,860 --> 00:24:16,974 466 00:24:16,974 --> 00:24:27,090 >> Nii kaja on ka ühekordne käsu objekti sillily lihtsalt printida 467 00:24:27,090 --> 00:24:31,540 käsurea täpselt sa tahtsid kaja. 468 00:24:31,540 --> 00:24:32,680 Niisiis kordan hi. 469 00:24:32,680 --> 00:24:35,420 Me lihtsalt printida hi. 470 00:24:35,420 --> 00:24:38,030 Echo tere. 471 00:24:38,030 --> 00:24:39,800 Me printida tere. 472 00:24:39,800 --> 00:24:44,350 See tuleb kasutusele siis, kui hakanud ühendama käske. 473 00:24:44,350 --> 00:24:48,300 >> Ja veel, ei arvanud, et sa täiesti mõista seda veel, kuid see on 474 00:24:48,300 --> 00:24:49,910 midagi näha. 475 00:24:49,910 --> 00:24:52,470 Ja siis, kui sa oled Googling näited või sa mõistad, mida sa teha tahad 476 00:24:52,470 --> 00:24:55,030 midagi, see võib olla kasulik. 477 00:24:55,030 --> 00:24:59,020 Teeme, nagu näiteks nii LS, kriips, l. 478 00:24:59,020 --> 00:25:01,160 Nii et siin ma näen väljund LS-kriips-l. 479 00:25:01,160 --> 00:25:06,560 Ja ma ütlen, OK, ma tahan salvestada et faili. 480 00:25:06,560 --> 00:25:11,620 Kõik see väljund siia, ma tahan panna eraldi faili. 481 00:25:11,620 --> 00:25:16,080 >> Nii see väike suurem kui sümbol on see, mida me nimetame. 482 00:25:16,080 --> 00:25:18,570 Me suunates väljund faili. 483 00:25:18,570 --> 00:25:21,680 Kutsume fail blah, kuna see on mida ma pigem alati kutsuda. 484 00:25:21,680 --> 00:25:26,430 Nüüd me näeme, et meil on fail blah siin. 485 00:25:26,430 --> 00:25:30,270 Ja kui ma seda avatumaks, ma vaatan, et see on täpselt käsuväljundi 486 00:25:30,270 --> 00:25:31,990 et ma lihtsalt jooksin. 487 00:25:31,990 --> 00:25:36,020 Ja samamoodi, saate - 488 00:25:36,020 --> 00:25:41,260 kui see oli väljund faili, see on saada panust faili. 489 00:25:41,260 --> 00:25:45,790 490 00:25:45,790 --> 00:25:47,050 Mis on käsk, et I - 491 00:25:47,050 --> 00:25:49,620 >> JOSEPH: Ma arvan, et saate vähem või rohkem, arvatavasti. 492 00:25:49,620 --> 00:25:53,031 >> ROB: Aga kuidas lihtsalt vähem blah? 493 00:25:53,031 --> 00:25:53,930 Ma ei tea. 494 00:25:53,930 --> 00:25:57,870 Kui sa tuled selle stsenaariumi, nagu seal psets et see on kasulik. 495 00:25:57,870 --> 00:25:59,950 >> JOSEPH: Võite toru see kaja. 496 00:25:59,950 --> 00:26:02,920 Pipe fail echo seda näha. 497 00:26:02,920 --> 00:26:04,060 >> ROB: See toru. 498 00:26:04,060 --> 00:26:04,860 >> JOSEPH: Vabandust. 499 00:26:04,860 --> 00:26:06,190 >> ROB: Olgu. 500 00:26:06,190 --> 00:26:12,720 Nii et see on väljund faili. 501 00:26:12,720 --> 00:26:18,700 Seda saad teksti faili ja selle üle, et programmi. 502 00:26:18,700 --> 00:26:20,560 Ja te näete ka seda meest. 503 00:26:20,560 --> 00:26:24,410 Nii et see on omamoodi mõlemad korraga. 504 00:26:24,410 --> 00:26:28,310 Ja tegelikult, ma kehtestada kaks uut käske lihtsalt seda kasutada. 505 00:26:28,310 --> 00:26:33,060 >> Ajalugu on mugav käsk, mis on just trükkimineku välja loetelu 506 00:26:33,060 --> 00:26:34,940 midagi ma olen kunagi käivitada käsurealt. 507 00:26:34,940 --> 00:26:38,290 Nii näeme siin kõik, et mul on kestnud terve see aeg. 508 00:26:38,290 --> 00:26:39,540 Palju LS. 509 00:26:39,540 --> 00:26:41,570 510 00:26:41,570 --> 00:26:48,470 >> Ja veel üks kasulik käsk grep et tema eesmärk on otsida üle 511 00:26:48,470 --> 00:26:52,060 tekst otsin mustreid, noh, otsin iganes 512 00:26:52,060 --> 00:26:53,310 tahad seda otsima. 513 00:26:53,310 --> 00:26:59,770 Ja nii mugav kasutada siin on, ütleme tahame haarata ajalugu. 514 00:26:59,770 --> 00:27:03,860 Ja ma tahan, et otsida käske kus I - mis on 515 00:27:03,860 --> 00:27:05,000 kasulik üks otsida? 516 00:27:05,000 --> 00:27:06,898 >> JOSEPH: [kuuldamatu]? 517 00:27:06,898 --> 00:27:09,710 >> ROB: Või lähme lihtsalt otsida kõik puudutab, ükskõik millisel põhjusel. 518 00:27:09,710 --> 00:27:13,850 Nii et see on see, mida ta näeb. 519 00:27:13,850 --> 00:27:15,560 Ja sa ei pea täielikult aru. 520 00:27:15,560 --> 00:27:20,570 Aga mõte on siin, ajalugu annab sama tulemuse ta tegi siin 521 00:27:20,570 --> 00:27:25,030 kus see välja printida kogu ajalugu kõike olen kunagi joosta. 522 00:27:25,030 --> 00:27:27,030 Oleme siis möödaminnes, et - 523 00:27:27,030 --> 00:27:30,230 nii printimise asemel selle ekraani tahame edastada mis 524 00:27:30,230 --> 00:27:34,640 käsk grep mida otsid kõik juhtumid sõna võtta. 525 00:27:34,640 --> 00:27:40,280 >> Ja nii kasutavad seda kombinatsiooni tööriistad ajalugu ja grep, ma näen, OK, 526 00:27:40,280 --> 00:27:44,820 siin on kõik käsud, mida ma eales joosta, ja siin on mõnevõrra tavalisem. 527 00:27:44,820 --> 00:27:45,510 Oleme allosas. 528 00:27:45,510 --> 00:27:47,930 Ja see annab ka mulle käsk Ma lihtsalt jooksin, mis oli 529 00:27:47,930 --> 00:27:51,240 Sõna touch ta. 530 00:27:51,240 --> 00:27:58,500 Aga toru on päris kasulik asi kombineerimise mitmeid programme. 531 00:27:58,500 --> 00:28:04,670 Ja tegelikult, see on otsetee let minu väljund ajalugu faili blah, ja 532 00:28:04,670 --> 00:28:10,190 andke mulle grep abil faili blah kui see, mida ma tahan üle vaatama. 533 00:28:10,190 --> 00:28:13,460 Nii toru on lihtsalt otsetee need kaks käske. 534 00:28:13,460 --> 00:28:13,950 Jah. 535 00:28:13,950 --> 00:28:15,306 >> SPEAKER 4: [kuuldamatu]? 536 00:28:15,306 --> 00:28:16,556 >> ROB: Jah. 537 00:28:16,556 --> 00:28:20,142 538 00:28:20,142 --> 00:28:21,110 Mis on - 539 00:28:21,110 --> 00:28:21,858 Oh. 540 00:28:21,858 --> 00:28:24,820 Olgem testida. 541 00:28:24,820 --> 00:28:29,170 Nii kass, koer, kala. 542 00:28:29,170 --> 00:28:33,770 Ma tahan, et grep. 543 00:28:33,770 --> 00:28:37,680 Dash, r, jälle saab olema rekursiivselt, nii et ma tahan, et laskuda alla 544 00:28:37,680 --> 00:28:38,870 kõik kataloogid. 545 00:28:38,870 --> 00:28:43,210 Tahan rekursiivselt grep kõigile - ja andke mulle ajutiselt saada 546 00:28:43,210 --> 00:28:44,460 see välja viis. 547 00:28:44,460 --> 00:28:48,650 548 00:28:48,650 --> 00:28:50,740 Ignoreeri mind. 549 00:28:50,740 --> 00:28:51,360 OK. 550 00:28:51,360 --> 00:28:56,740 >> Nii et ma tahan ajutiselt grep eest kõik juhtumid sõna kala. 551 00:28:56,740 --> 00:29:00,510 Ja siin, mida ma teen on grep rekursiivselt sõna kala. 552 00:29:00,510 --> 00:29:05,410 Ja täht tähendab, et üle kõik need faile selles kataloogis. 553 00:29:05,410 --> 00:29:08,930 Ja nii see andis mulle Luba keelatud, sest see ei ole lubatud, et lugeda, et 554 00:29:08,930 --> 00:29:10,060 eriti fail. 555 00:29:10,060 --> 00:29:14,040 Aga ta leidis kala faili, test. 556 00:29:14,040 --> 00:29:18,450 >> Ma võiksin ka öelda, eriti, ma ainult soovite otsida faili bla sisse 557 00:29:18,450 --> 00:29:19,580 sellisel juhul ei leia midagi. 558 00:29:19,580 --> 00:29:20,990 Ma tahan ainult vaadata faili, test. 559 00:29:20,990 --> 00:29:22,240 Ta leiab kala. 560 00:29:22,240 --> 00:29:25,980 561 00:29:25,980 --> 00:29:29,260 See on üsna kasulik käsk teada üldiselt. 562 00:29:29,260 --> 00:29:31,640 Leidub alternatiive grep mis peaksid olema rohkem 563 00:29:31,640 --> 00:29:36,780 programmeerija sõbralik, kuid ma pigem ikka taandub grep. 564 00:29:36,780 --> 00:29:38,030 Küsimused? 565 00:29:38,030 --> 00:29:39,965 566 00:29:39,965 --> 00:29:40,919 OK. 567 00:29:40,919 --> 00:29:42,520 >> Kas on muid käske? 568 00:29:42,520 --> 00:29:45,270 Oh. 569 00:29:45,270 --> 00:29:48,370 Just ühekordne üks, et ma alati leiavad, et lõbus on Cal. 570 00:29:48,370 --> 00:29:55,610 Nii teate, kui ma olen selles armas täisekraani režiimis, mul ei ole nagu top 571 00:29:55,610 --> 00:29:56,720 tööriistariba või midagi. 572 00:29:56,720 --> 00:29:59,530 Nii cal lihtsalt annab mulle toreda kalender, mis on õige 573 00:29:59,530 --> 00:30:02,380 nüüd lõigata, ma eeldan. 574 00:30:02,380 --> 00:30:04,770 Aga toreda käsk. 575 00:30:04,770 --> 00:30:06,540 >> JOSEPH: On [kuuldamatu]. 576 00:30:06,540 --> 00:30:09,170 Muud käske, et sa võisid näinud hulka rõkkama ja teha. 577 00:30:09,170 --> 00:30:11,180 Me läheme üle neid üksikasjalikumalt hiljem. 578 00:30:11,180 --> 00:30:13,400 Aga kui te olete töötanud Erksa, siis peaks olema 579 00:30:13,400 --> 00:30:15,160 tuttav neile. 580 00:30:15,160 --> 00:30:16,640 >> ROB: Olgu. 581 00:30:16,640 --> 00:30:18,520 Küsimused käsurea asju? 582 00:30:18,520 --> 00:30:22,450 583 00:30:22,450 --> 00:30:23,260 Hea küll. 584 00:30:23,260 --> 00:30:27,416 Nii liigume edasi mõnele C-seotud kraami. 585 00:30:27,416 --> 00:30:28,666 Muutujad matemaatikat. 586 00:30:28,666 --> 00:30:39,078 587 00:30:39,078 --> 00:30:40,060 OK. 588 00:30:40,060 --> 00:30:45,230 Nii nagu meil oli matemaatika Scratch, võid kasutada ka matemaatikat C. 589 00:30:45,230 --> 00:30:49,270 >> Enne saame, et täielikult, nii muutujad. 590 00:30:49,270 --> 00:30:53,920 Pea meeles, et iga kord, kui te deklareerite muutuja nagu int x või float y, siis 591 00:30:53,920 --> 00:30:56,710 on anda talle kirjutad enne muutuja nimi. 592 00:30:56,710 --> 00:31:03,020 Nii liiki oleme näinud siiani on int, float, double, pikka, mida ma 593 00:31:03,020 --> 00:31:06,150 tegelikult ei tea, kas me oleme näha, et nii kaugele. 594 00:31:06,150 --> 00:31:07,700 >> On teisigi ones. 595 00:31:07,700 --> 00:31:09,990 Meil vaata char. 596 00:31:09,990 --> 00:31:13,920 Seal on lühike, mis on nagu see on vastand pikka kus see on 597 00:31:13,920 --> 00:31:16,650 väiksem täisarv. 598 00:31:16,650 --> 00:31:18,580 Oleme näinud ka string. 599 00:31:18,580 --> 00:31:23,070 Mis on eriline string? 600 00:31:23,070 --> 00:31:25,350 Miks ma ütlen, et see on mitte päris int? 601 00:31:25,350 --> 00:31:27,030 >> SPEAKER 4: See ei ole tegelikult olemas. 602 00:31:27,030 --> 00:31:27,990 >> ROB: Jah. 603 00:31:27,990 --> 00:31:31,820 Nii et ainus põhjus on meil string on see, kui sa ei 604 00:31:31,820 --> 00:31:33,215 hash sisaldab cs50.h. 605 00:31:33,215 --> 00:31:36,530 606 00:31:36,530 --> 00:31:42,670 Ja me näeme näiteid sellest hiljem - oh, et ei saa hakkama, et hästi - 607 00:31:42,670 --> 00:31:46,160 kus cs50.h on midagi sarnaselt liik 608 00:31:46,160 --> 00:31:49,230 def, char star, string. 609 00:31:49,230 --> 00:31:53,280 >> Ja nii see on, et me ei ole isegi tean, mida char täht on veel. 610 00:31:53,280 --> 00:31:56,770 Aga see on selge, et me tahame string. 611 00:31:56,770 --> 00:32:00,250 Iga koht olete kasutanud string, siis oleks kasutanud char star, 612 00:32:00,250 --> 00:32:04,670 mis tegelikult on seda liiki, olemas C keeles. 613 00:32:04,670 --> 00:32:06,680 Aga me jõuame selleni. 614 00:32:06,680 --> 00:32:07,860 Oh, ja see läheb kohe tagasi. 615 00:32:07,860 --> 00:32:10,170 Puhas. 616 00:32:10,170 --> 00:32:15,370 >> Nii sama asi bool kus õige ja vale. 617 00:32:15,370 --> 00:32:22,510 See ei ole tõesti sisseehitatud kirjuta C. Selle asemel, see on lihtsalt, kas see on 618 00:32:22,510 --> 00:32:23,740 väärtus null? 619 00:32:23,740 --> 00:32:26,200 Siis me lihtsalt kaaluda see on vale. 620 00:32:26,200 --> 00:32:27,350 Kas see on väärtus - 621 00:32:27,350 --> 00:32:30,530 Noh, see on iga väärtus, mis pole null? 622 00:32:30,530 --> 00:32:32,200 Siis me pea, et olla tõsi. 623 00:32:32,200 --> 00:32:35,940 Nii et üks on tõsi, kaks on tõsi, midagi nullist on tõsi. 624 00:32:35,940 --> 00:32:38,710 625 00:32:38,710 --> 00:32:42,790 Nii et need on need. 626 00:32:42,790 --> 00:32:47,624 Küsimused kuulutatakse muutujad ja muutuja tüüpi ja kõik, mis? 627 00:32:47,624 --> 00:32:48,100 Jah. 628 00:32:48,100 --> 00:32:52,384 >> SPEAKER 4: pikk pikk, raamat, ta ütles, et see pidi olema pikk pikk int. 629 00:32:52,384 --> 00:32:54,288 Aga lihtsalt pikka tööd? 630 00:32:54,288 --> 00:32:58,210 631 00:32:58,210 --> 00:33:01,470 >> ROB: Nii et need tüüpi atribuudid. 632 00:33:01,470 --> 00:33:04,170 Nii int x. 633 00:33:04,170 --> 00:33:07,710 Nii saame ka öelda, unsigned int x. 634 00:33:07,710 --> 00:33:09,640 Võime öelda, lühike int x. 635 00:33:09,640 --> 00:33:12,570 Me ei saa öelda pikk pikk int x. 636 00:33:12,570 --> 00:33:17,250 Aga päris palju kõik need asjad, mida ma just ütles, unsigned int, lühike int, 637 00:33:17,250 --> 00:33:21,480 pikka int, saate vabaneda int ja see lihtsalt eeldada, 638 00:33:21,480 --> 00:33:22,510 mis sa mõtlesid int. 639 00:33:22,510 --> 00:33:26,045 Nii allkirjastamata x, mis tähendab lihtsalt - 640 00:33:26,045 --> 00:33:29,400 sa tead, kuidas tavaliselt koos int, saab öelda x võrdub negatiivne 3? 641 00:33:29,400 --> 00:33:31,636 Mis unsigned int, sa ei saa. 642 00:33:31,636 --> 00:33:34,480 >> JOSEPH: Ja jälle kaamera, Küsimus oli, mis vahet seal on 643 00:33:34,480 --> 00:33:37,796 vahel pikka int ja lihtsalt pikk pikk? 644 00:33:37,796 --> 00:33:38,410 >> ROB: Jah. 645 00:33:38,410 --> 00:33:42,850 Nii et ma peaaegu kunagi kirjutada pikka int. 646 00:33:42,850 --> 00:33:44,100 Ma kirjutan pikka. 647 00:33:44,100 --> 00:33:47,770 648 00:33:47,770 --> 00:33:50,636 >> JOSEPH: Kas on küsimusi? 649 00:33:50,636 --> 00:33:51,886 >> ROB: OK. 650 00:33:51,886 --> 00:33:56,180 651 00:33:56,180 --> 00:34:02,390 Nii rumal väike meeldetuletus, et see, kuidas deklareerime muutuja ja initsialiseerida 652 00:34:02,390 --> 00:34:04,450 muutuv ja tunnistada veel muutuja ja initsialiseerida 653 00:34:04,450 --> 00:34:05,870 see kõik üks samm. 654 00:34:05,870 --> 00:34:09,370 Nii deklaratsiooni muutuv ja vormindamise muutuja ei ole 655 00:34:09,370 --> 00:34:11,120 , aga võib olla samal joonel. 656 00:34:11,120 --> 00:34:15,409 657 00:34:15,409 --> 00:34:20,060 >> Nii et meil on standard matemaatika ettevõtjad et sa oled harjunud - 658 00:34:20,060 --> 00:34:22,199 pluss, miinus, lõhe korda. 659 00:34:22,199 --> 00:34:24,389 Seal on ka moodul, mida me näeme. 660 00:34:24,389 --> 00:34:29,060 Seal ei ole vähemalt C, sisseehitatud energia 661 00:34:29,060 --> 00:34:31,765 astendamine katus operaator. 662 00:34:31,765 --> 00:34:33,770 Noh, seal on katus operaator, aga see ei ole võimu. 663 00:34:33,770 --> 00:34:34,239 >> JOSEPH: Aga see ei astendamine, Jah. 664 00:34:34,239 --> 00:34:36,210 >> ROB: Ärge kasutage katus eeldada, et see tähendab 665 00:34:36,210 --> 00:34:39,980 nagu kanditud või mis iganes. 666 00:34:39,980 --> 00:34:42,289 Nii mõned asjad meeles meelt rajoon. 667 00:34:42,289 --> 00:34:46,282 668 00:34:46,282 --> 00:34:48,880 Seisan. 669 00:34:48,880 --> 00:34:51,315 Nii kuulutas initialize vastus. 670 00:34:51,315 --> 00:34:54,670 Nii me ütleme float vastus võrdub 1 jagatud 10. 671 00:34:54,670 --> 00:34:57,500 Trüki vastus kaks kohta pärast koma. 672 00:34:57,500 --> 00:35:02,180 >> Ja see on selline asi, et ma oleks inimesele printf nuputada, et 673 00:35:02,180 --> 00:35:05,110 Mida kuradit see%, dot, 2f tähendab? 674 00:35:05,110 --> 00:35:07,930 Ja see tähendab lihtsalt, noh, ignoreerides 0,2. 675 00:35:07,930 --> 00:35:10,420 Ja%, f, mida me kasutame printida hõljuda. 676 00:35:10,420 --> 00:35:15,370 0.2 ütleb, print, mis kerkivad kaks kohta pärast koma. 677 00:35:15,370 --> 00:35:19,600 Nii, et see programm on viga, ja te võite olen näinud seda enne mõnes 678 00:35:19,600 --> 00:35:20,870 enne CS muidugi. 679 00:35:20,870 --> 00:35:22,170 Aga mis see on viga? 680 00:35:22,170 --> 00:35:23,050 >> SPEAKER 5: Zero. 681 00:35:23,050 --> 00:35:24,130 >> ROB: Jah. 682 00:35:24,130 --> 00:35:29,630 Nii et kui me ütleme, vastus on võrdne 1 jagatud 10, tahame 683 00:35:29,630 --> 00:35:31,610 vastus on 0,1. 684 00:35:31,610 --> 00:35:37,450 Aga 1 jagatud 10, 1 on täisarv, 10 on täisarv. 685 00:35:37,450 --> 00:35:41,060 Ja kui me teeme täisarv jagatud täisarv, me lähme tagasi saada 686 00:35:41,060 --> 00:35:42,190 täisarv. 687 00:35:42,190 --> 00:35:43,660 Niisiis 1 jagatud 10 on 0,1. 688 00:35:43,660 --> 00:35:46,760 >> , Kuna ta peab andma meile täisarv, see hakkab lihtsalt ära visata, et 689 00:35:46,760 --> 00:35:49,410 kümnendkohani ja öelda, et vastus on 0. 690 00:35:49,410 --> 00:35:55,314 Ja kui me printida vastata siin, see läheb trükkida 0,00. 691 00:35:55,314 --> 00:35:58,430 >> JOSEPH: Ja nagu teadmiseks, et tegelikult viskab ära mis pärast 692 00:35:58,430 --> 00:35:59,390 koma. 693 00:35:59,390 --> 00:36:03,180 Nii et kui sa selle asemel oli 6 jagatud 10, siis võiks arvata, et ta annaks sulle 694 00:36:03,180 --> 00:36:05,200 0,6 ja siis oleks ümardada 1. 695 00:36:05,200 --> 00:36:10,520 Aga tegelikult, mis juhtub, kui see tüüp ülesanded on, et see langeb, mis on 696 00:36:10,520 --> 00:36:11,470 pärast koma. 697 00:36:11,470 --> 00:36:13,020 Nii 0,6 ei saanud 0. 698 00:36:13,020 --> 00:36:13,370 >> ROB: Jah. 699 00:36:13,370 --> 00:36:15,160 Ja me ütleme truncate eest. 700 00:36:15,160 --> 00:36:21,760 Nii et kui te enamus int, koma kärbitakse murdosa. 701 00:36:21,760 --> 00:36:23,980 Nii fix, et - seal on tegelikult kaks. 702 00:36:23,980 --> 00:36:27,890 Ja ma teen selle teise, sest see on palju lihtsam määrata. 703 00:36:27,890 --> 00:36:32,670 >> Nii et üks parandus on kasutada ujukite jagunemisel. 704 00:36:32,670 --> 00:36:34,720 Ja tõesti, sul on ainult teha üks neist sularahaga. 705 00:36:34,720 --> 00:36:37,400 Aga see on veidi selgem lihtsalt teha mõlemad ujukid. 706 00:36:37,400 --> 00:36:41,170 Nii 1,0 jagatud 10,0 on jagades mõlemad ujukid. 707 00:36:41,170 --> 00:36:43,970 Nii et vastus on lõppkokkuvõttes float, ja et sa ei 708 00:36:43,970 --> 00:36:48,050 õigesti printida 0,10 siin. 709 00:36:48,050 --> 00:36:52,220 >> Midagi, mis ei tööta nii hästi umbes, et, noh, muidugi, see oli lihtne 710 00:36:52,220 --> 00:36:56,240 piisavalt, et muuta 1 float muutes 1.0. 711 00:36:56,240 --> 00:37:02,180 Aga mis siis, kui selle asemel oli meil kaks täisarvu nagu int x võrdub 1 ja int y 712 00:37:02,180 --> 00:37:05,660 võrdub 10, siis me tahtsime et ei x jagatud y? 713 00:37:05,660 --> 00:37:10,420 Nii et see ei ole lihtne lihtsalt teha x.0 või midagi. 714 00:37:10,420 --> 00:37:12,790 >> Nii lahenduse, mis on valu. 715 00:37:12,790 --> 00:37:19,780 Nii valu on viis C teisendada ühest muutuja tüübist teise. 716 00:37:19,780 --> 00:37:22,320 Nii et siin, 1 on täisarv. 717 00:37:22,320 --> 00:37:27,050 Ja pannes seda float ees see on meil casting 1 sularahaga. 718 00:37:27,050 --> 00:37:30,350 Ja nii see on teisendada 1 kuni 1,0. 719 00:37:30,350 --> 00:37:33,380 Ja see konverteerib 10 kuni 10,0. 720 00:37:33,380 --> 00:37:36,790 >> Ja siis käituvad sarnaselt eelmise versiooni me lihtsalt näitas 721 00:37:36,790 --> 00:37:42,190 kus ootuspäraselt, saame 0,10 ja siis see välja printida, et. 722 00:37:42,190 --> 00:37:44,120 Ja me saame seda teha koos muutujaid, liiga. 723 00:37:44,120 --> 00:37:47,376 Nii võime öelda, float x jagatud float y. 724 00:37:47,376 --> 00:37:48,626 >> JOSEPH: Kas on küsimusi? 725 00:37:48,626 --> 00:37:54,182 726 00:37:54,182 --> 00:38:00,090 >> ROB: Nii nagu ka regulaarne matemaatika, meil operaator järjestuse. 727 00:38:00,090 --> 00:38:06,960 Nii et matemaatika klassi, sa oled tõenäolisem seda kutsuda, et toiminguid. 728 00:38:06,960 --> 00:38:09,890 Siin ametlik termin on operaator järjestuse. 729 00:38:09,890 --> 00:38:15,230 Aga operaatori tähtsam või kõige ettevõtjatele, on, kui te ootaks. 730 00:38:15,230 --> 00:38:22,660 >> Nii nagu matemaatika, 2 korda 10 on läheb rühmitada tihedamalt kui 731 00:38:22,660 --> 00:38:25,410 see 10 jagatud 2 ja siis 2. 732 00:38:25,410 --> 00:38:29,745 Tehetejärjekord, ta teeb 2 korda 10, 10 jagatud 2 ja seejärel 733 00:38:29,745 --> 00:38:32,720 seda teen 20 pluss 5 pluss 2. 734 00:38:32,720 --> 00:38:37,020 Nii et see on nagu oodatud, ja mida saab kasutada sulge grupp väljendeid. 735 00:38:37,020 --> 00:38:41,063 Te ei saa kasutada nurksulud rühma väljendid. 736 00:38:41,063 --> 00:38:41,544 Jah? 737 00:38:41,544 --> 00:38:43,468 >> SPEAKER 5: Kas te tegelikult lihtsalt minna tagasi ühe teise? 738 00:38:43,468 --> 00:38:47,316 Kas te enamus int string? 739 00:38:47,316 --> 00:38:53,330 >> ROB: Nii C, saab enamus midagi tahad midagi tahad. 740 00:38:53,330 --> 00:38:55,600 See ei tähenda, et see on hea asi, mida teha. 741 00:38:55,600 --> 00:38:59,760 Nii et kui te enamus int kuni string, see tähendab - 742 00:38:59,760 --> 00:39:03,240 ja me jõuame sinna palju põhjalikumalt - 743 00:39:03,240 --> 00:39:03,720 >> JOSEPH: Palju hiljem. 744 00:39:03,720 --> 00:39:06,840 >> ROB: Ma ei taha öelda, palju hiljem, nii ma püüdsin muuta oma lause. 745 00:39:06,840 --> 00:39:13,370 Me võtame arvesse seda palju põhjalikumalt hiljem, kui tegelikult, kui teil on 746 00:39:13,370 --> 00:39:14,810 string muutuja - 747 00:39:14,810 --> 00:39:17,160 nii string võib olla suvaliselt pikk, kas pole? 748 00:39:17,160 --> 00:39:21,850 Ja me oleme öelnud, et int on neli baiti ja pikka kaheksa 749 00:39:21,850 --> 00:39:23,620 bytes ja float on neli baiti. 750 00:39:23,620 --> 00:39:29,520 Nii string, nagu int, vaid on teatud baitide ta. 751 00:39:29,520 --> 00:39:31,800 Ja mis on neli baiti. 752 00:39:31,800 --> 00:39:34,750 >> Aga string võib olla päris meelevaldselt pikk, kas pole? 753 00:39:34,750 --> 00:39:40,190 Nii tere juba, kui see on 10 märgid või mis iganes, see on juba 754 00:39:40,190 --> 00:39:42,670 läheb üle 4 baiti I mahub string. 755 00:39:42,670 --> 00:39:51,140 Ja nii, kui stringid tõesti toimib on see, et need, kus mälu string 756 00:39:51,140 --> 00:39:52,380 peetakse. 757 00:39:52,380 --> 00:39:57,290 >> Ja nii siin, kui ma ütlen, string x võrdub tere, sees x on 758 00:39:57,290 --> 00:40:01,840 lihtsalt öeldes, oh, tere maailm on salvestatud selles konkreetses kohas mällu. 759 00:40:01,840 --> 00:40:07,060 Nii et kui me püüame enamus täisarv string, siis me üritame tõlgendada 760 00:40:07,060 --> 00:40:10,500 mingi suvaline osa mälu kui string. 761 00:40:10,500 --> 00:40:14,465 Ja peaaegu alati puhkeb asju. 762 00:40:14,465 --> 00:40:17,040 >> JOSEPH: Aga kui see segadust sa saadame hõlmab see 763 00:40:17,040 --> 00:40:17,550 põhjalikumalt hiljem. 764 00:40:17,550 --> 00:40:17,850 >> ROB: Jah. 765 00:40:17,850 --> 00:40:20,540 See on koht, kus sa lähed sattuda suunanäitajaks. 766 00:40:20,540 --> 00:40:25,485 Ja see on suur patakas kahenädalase kursuse. 767 00:40:25,485 --> 00:40:28,275 >> SPEAKER 6: Kas see töötab nagu objektide teistes keeltes või mitte tõesti? 768 00:40:28,275 --> 00:40:34,050 >> ROB: Nii teistes keeltes, objektid oleks esindatud kasutades vihjeid. 769 00:40:34,050 --> 00:40:37,070 770 00:40:37,070 --> 00:40:38,793 See ei ole sama asi, kuigi. 771 00:40:38,793 --> 00:40:42,110 772 00:40:42,110 --> 00:40:42,910 Kõik mõtted? 773 00:40:42,910 --> 00:40:43,760 >> JOSEPH: Ei 774 00:40:43,760 --> 00:40:44,185 No mõtteid. 775 00:40:44,185 --> 00:40:44,980 >> ROB: OK. 776 00:40:44,980 --> 00:40:46,994 >> JOSEPH: Next. 777 00:40:46,994 --> 00:40:48,255 >> ROB: Lihtsalt minna sellega. 778 00:40:48,255 --> 00:40:48,670 Hea küll. 779 00:40:48,670 --> 00:40:51,120 Nii moodul. 780 00:40:51,120 --> 00:40:53,900 Nii nagu meil on pluss, miinus, jagada ja korrutada. 781 00:40:53,900 --> 00:40:56,720 Nii moodul on üks võite ei näinud enne. 782 00:40:56,720 --> 00:40:59,540 Ja see ütleb, anna mind ülejäänud. 783 00:40:59,540 --> 00:41:02,850 Nii 55% 10. 784 00:41:02,850 --> 00:41:06,840 Ülejäänud teed 55 jagatud 10 oleks 5. 785 00:41:06,840 --> 00:41:09,630 Nii 55% 10 on 5. 786 00:41:09,630 --> 00:41:12,260 Ja 3% 5 oleks 3. 787 00:41:12,260 --> 00:41:14,180 8% 8 on 0. 788 00:41:14,180 --> 00:41:15,903 16% 15 on 1. 789 00:41:15,903 --> 00:41:20,670 >> JOSEPH: Üks asi märkida seda, Ka see ei pruugi ootuspäraselt töötada 790 00:41:20,670 --> 00:41:22,700 kui te kasutate negatiivne number. 791 00:41:22,700 --> 00:41:26,215 Nii negatiivne 5% 4, mõned inimesed Võiks arvata, et on - 792 00:41:26,215 --> 00:41:28,890 793 00:41:28,890 --> 00:41:33,808 Mis sa arvad negatiivne 5% 4 oleks? 794 00:41:33,808 --> 00:41:34,792 >> SPEAKER 5: One. 795 00:41:34,792 --> 00:41:37,920 >> JOSEPH: Nii mõned ütlevad üht, mõned inimesed ütlevad negatiivne. 796 00:41:37,920 --> 00:41:38,450 Aga mida - 797 00:41:38,450 --> 00:41:40,820 >> ROB: ma isegi ei pea ütles üks neist. 798 00:41:40,820 --> 00:41:42,370 >> JOSEPH Kaks vabandust. 799 00:41:42,370 --> 00:41:43,240 Mõned inimesed ütlevad, et - 800 00:41:43,240 --> 00:41:43,450 >> ROB: kolm. 801 00:41:43,450 --> 00:41:43,800 >> JOSEPH: Kolm? 802 00:41:43,800 --> 00:41:44,890 >> ROB: Negatiivne - 803 00:41:44,890 --> 00:41:45,950 Mis oli - negatiivne viis - 804 00:41:45,950 --> 00:41:47,100 >> JOSEPH: Kolm, kolm, kolm. 805 00:41:47,100 --> 00:41:48,450 Vabandust. 806 00:41:48,450 --> 00:41:51,910 Kuna moodul, tavaliselt siis, kui olete näinud mujal, see tähendab tavaliselt 807 00:41:51,910 --> 00:41:54,000 tagasi positiivne number, eks? 808 00:41:54,000 --> 00:42:01,160 >> ROB: Nii et kui me ütleme, matemaatika,% 10-ndatel, nad kipuvad tahan teile - 809 00:42:01,160 --> 00:42:05,980 kui me mod 10, siis me eeldame, et saada number vahemikus 0 kuni 9. 810 00:42:05,980 --> 00:42:09,860 Siin, see ei ole nii, et sa saavad negatiivsed arvud tagastata. 811 00:42:09,860 --> 00:42:15,898 >> JOSEPH: Nii negatiivne 5% 4 oleks negatiivne 1. 812 00:42:15,898 --> 00:42:19,325 >> ROB: Aga see on haruldane, et sa oled mod-dest negatiivsete numbrite alustada. 813 00:42:19,325 --> 00:42:25,490 814 00:42:25,490 --> 00:42:25,970 Jäta see. 815 00:42:25,970 --> 00:42:27,314 >> JOSEPH: Jah. 816 00:42:27,314 --> 00:42:29,420 >> ROB: Meh. 817 00:42:29,420 --> 00:42:29,990 OK. 818 00:42:29,990 --> 00:42:36,400 Seega viimane asi meelde umbes ujukid on see ohtlik käitumine, 819 00:42:36,400 --> 00:42:39,850 kuid ujukite ei täpse esindatust. 820 00:42:39,850 --> 00:42:46,190 Nii läheb tagasi bytes taas, meenub et int on alati neli baiti ja 821 00:42:46,190 --> 00:42:47,830 float on alati neli baiti. 822 00:42:47,830 --> 00:42:51,340 Nii Lucase näide on päris hea. 823 00:42:51,340 --> 00:42:55,730 >> Nii mõtlevad 1 jagatud 3. 824 00:42:55,730 --> 00:42:57,800 Nii 0,3333333. 825 00:42:57,800 --> 00:43:03,540 Kui mul on ainult 32 bitti, kuidas saab I salvestada 0,33333 täpselt? 826 00:43:03,540 --> 00:43:07,250 Ja võib-olla, mingil põhjusel, sa ütled, Olgu, olgu, ütleme lihtsalt, et 827 00:43:07,250 --> 00:43:13,210 et see konkreetne 1011001, olgem lihtsalt öelda, et peaks olema 0,333333. 828 00:43:13,210 --> 00:43:16,960 Noh, sul on ainult piiratud arv need osad, nii et see on võimatu 829 00:43:16,960 --> 00:43:22,550 esindab iga ujukoma väärtus antud vaid 32 bitti. 830 00:43:22,550 --> 00:43:25,580 >> Noh, see on võimatu, et esindada iga Murdarv antud lõpmatu - 831 00:43:25,580 --> 00:43:28,480 hästi, sest iga hulga bitte. 832 00:43:28,480 --> 00:43:38,265 Niisiis küsimus siin on hästi, kui me kasutada printida kaks kohta pärast koma, 833 00:43:38,265 --> 00:43:42,000 tegime õigesti saada vastus 0.10. 834 00:43:42,000 --> 00:43:47,510 Aga all kapuuts, see on tõesti hoitakse nii lähedale kui võimalik 835 00:43:47,510 --> 00:43:51,790 0,10 kui need bitti esindama. 836 00:43:51,790 --> 00:43:53,200 Kas see on järgmise slaidi? 837 00:43:53,200 --> 00:43:53,830 Või kas pole? 838 00:43:53,830 --> 00:43:54,660 >> JOSEPH: Jah, see on see. 839 00:43:54,660 --> 00:43:55,750 >> ROB: Blegh, blegh. 840 00:43:55,750 --> 00:43:57,760 >> JOSEPH: Jah, võid lihtsalt tõmmake lisades natuke. 841 00:43:57,760 --> 00:43:59,700 >> ROB: Ma lihtsalt suurendamiseks aasta viimasel sellel. 842 00:43:59,700 --> 00:44:00,950 Oh mu jumal, see on [kuuldamatu]. 843 00:44:00,950 --> 00:44:06,089 844 00:44:06,089 --> 00:44:08,300 Nii et number. 845 00:44:08,300 --> 00:44:12,300 See on see, mis tuleb trükkida kui me joosta, et programm. 846 00:44:12,300 --> 00:44:20,340 Ja teate, et ei ole tõesti suur asi kui me vaid hooliv nagu 847 00:44:20,340 --> 00:44:21,920 02:58 kümnendkohani. 848 00:44:21,920 --> 00:44:26,700 Nagu me ainult algselt trükitud 0,10, ja sellepärast me ei näinud midagi valesti. 849 00:44:26,700 --> 00:44:31,380 Aga kui me hakkame sattumist täpne, täpne arv, et see on 850 00:44:31,380 --> 00:44:35,660 esindavad, näeme, et see ei saa täpselt esindavad 0,1. 851 00:44:35,660 --> 00:44:40,900 >> Ja osa probleemist siin on nagu, Olgu, see on hea, aga noh, 852 00:44:40,900 --> 00:44:46,120 Esimene, mis siis, kui me püüdnud teha, vastus võrdub võrdub 0,1? 853 00:44:46,120 --> 00:44:49,200 Kas see läheb tagasi õige või vale? 854 00:44:49,200 --> 00:44:51,850 Ja nii see on raske öelda. 855 00:44:51,850 --> 00:44:53,330 Ma arvan, et tegelikult võib naasta tõsi. 856 00:44:53,330 --> 00:44:55,265 Kas see esimene - 857 00:44:55,265 --> 00:44:56,180 Ma ei tea. 858 00:44:56,180 --> 00:45:00,090 Vastus on, kui te alustate tegelevad koos ujukoma väärtuste, siis päris 859 00:45:00,090 --> 00:45:05,150 palju ei tohiks kasutades võrdõiguslikkuse sest see ebatäpsus. 860 00:45:05,150 --> 00:45:09,470 >> Ja kõik, mida tean, on see sajandik kümnendkohani, et 861 00:45:09,470 --> 00:45:13,670 ujukoma ei suutnud õigesti käsitseda. 862 00:45:13,670 --> 00:45:18,180 Ja nii võrdõiguslikkust lihtsalt ei suuda isegi kuigi number - kui teil on olnud 863 00:45:18,180 --> 00:45:24,450 kasutades täpset arvu, numbreid olnud täpselt sama. 864 00:45:24,450 --> 00:45:27,790 See jooksul nagu 50 arvutustel need ujuvad 865 00:45:27,790 --> 00:45:30,270 punkt väärtusi, viga võib ehitada üles ja üles ja üles, ja 866 00:45:30,270 --> 00:45:31,125 asjad lihtsalt saada vale. 867 00:45:31,125 --> 00:45:33,870 >> JOSEPH: Ja seal on tõesti kuulsad näited seda juhtub. 868 00:45:33,870 --> 00:45:37,190 Nagu NASA insenerid on saanud käesoleva untsu raketid plahvatada 869 00:45:37,190 --> 00:45:38,665 õhu pärast nad on käivitatud. 870 00:45:38,665 --> 00:45:41,490 Ja palju küsimusi niimoodi. 871 00:45:41,490 --> 00:45:41,956 Nii et jah. 872 00:45:41,956 --> 00:45:45,218 >> SPEAKER 6: Kui sa ütled 0,3 f, see kärpige ülejäänud? 873 00:45:45,218 --> 00:45:46,468 Või see ümardada suuremaks või väiksemaks? 874 00:45:46,468 --> 00:45:48,800 875 00:45:48,800 --> 00:45:50,200 >> ROB: Kas printf selle ümber? 876 00:45:50,200 --> 00:45:52,180 >> JOSEPH: Ma arvan printf kärbitud. 877 00:45:52,180 --> 00:45:52,640 >> ROB: OK. 878 00:45:52,640 --> 00:45:59,890 Nii saame samamoodi minna vastupidises suund käesoleva kus antud juhul 879 00:45:59,890 --> 00:46:03,320 lähim see võiks olla 0,1 oli see number. 880 00:46:03,320 --> 00:46:06,820 Lähim see võiks olla võimalik esindada 0.2 on vastupidine 881 00:46:06,820 --> 00:46:11,420 suunas, 0,199999996356 või midagi. 882 00:46:11,420 --> 00:46:17,480 Nii et kui me läksime selles suunas asju, siis printf 0,3 f tagastab 883 00:46:17,480 --> 00:46:20,866 1,99 asemel 2,00. 884 00:46:20,866 --> 00:46:22,960 >> JOSEPH: Ja ma ei ole päris kindel on, et. 885 00:46:22,960 --> 00:46:25,430 Võiksid kirjutada väike, väike programmi lihtsalt vaadata seda. 886 00:46:25,430 --> 00:46:29,370 >> ROB: Kuigi, me oleme kindlad, et kui oled proovinud enamus, et 887 00:46:29,370 --> 00:46:33,660 int ja casting int läheb põhjustada selle kärbi pärast, kui 888 00:46:33,660 --> 00:46:38,140 üritate enamus 1.9999999 int, saate 1. 889 00:46:38,140 --> 00:46:41,440 Ja siis tuleb üldjuhul kasutada ümmargune funktsioon matemaatika raamatukogu. 890 00:46:41,440 --> 00:46:44,190 891 00:46:44,190 --> 00:46:45,440 Küsimused? 892 00:46:45,440 --> 00:46:47,660 893 00:46:47,660 --> 00:46:48,982 OK. 894 00:46:48,982 --> 00:46:54,000 >> JOSEPH: Nii liigub tingimusi ja Loogiline väljendeid. 895 00:46:54,000 --> 00:46:58,120 Nii et sa oled näinud neid varem. 896 00:46:58,120 --> 00:47:07,420 Ja tegelikult, las ma teen kindlaks, minu Arvuti õiges formaadis siit. 897 00:47:07,420 --> 00:47:08,670 Space. 898 00:47:08,670 --> 00:47:10,630 899 00:47:10,630 --> 00:47:13,870 Vabandust, me peame tegelema natuke koos tarneseisak kant. 900 00:47:13,870 --> 00:47:15,830 >> Aga jah, te olete näinud see enne Scratch. 901 00:47:15,830 --> 00:47:19,930 See siin on väljend mida kasutatakse 902 00:47:19,930 --> 00:47:21,250 tingimuslik avaldus. 903 00:47:21,250 --> 00:47:23,930 Nii vastata nullist suurem tahe öelda, õige või vale. 904 00:47:23,930 --> 00:47:26,530 Ja need on tõesti oluline, sest see võimaldab meil kasutusele võtta 905 00:47:26,530 --> 00:47:28,670 loogika meie kood. 906 00:47:28,670 --> 00:47:32,820 >> Nii näiteks on see programm kirjutatud Scratch, mis küsib kasutaja 907 00:47:32,820 --> 00:47:36,980 jaoks täisarv ja ütleb neile, kas täisarv, et nad annavad sulle oli 908 00:47:36,980 --> 00:47:38,690 positiivne või negatiivne arv. 909 00:47:38,690 --> 00:47:42,980 Ja tulemus on siin näha on esmalt välja printida avalduse 910 00:47:42,980 --> 00:47:43,870 mulle täisarv. 911 00:47:43,870 --> 00:47:45,980 Ja siis paluda neil täisarv. 912 00:47:45,980 --> 00:47:49,870 >> Ja siis kasutage tingimisi loogika üle siin, et kontrollida, kas see number 913 00:47:49,870 --> 00:47:52,030 tegelikult on nullist suurem või mitte. 914 00:47:52,030 --> 00:47:58,960 Nii et siin on meil Loogiline väljend sees tingimisi Kui avalduses. 915 00:47:58,960 --> 00:48:00,660 Kas on küsimusi? 916 00:48:00,660 --> 00:48:03,030 Kas on mingeid küsimusi selle kohta? 917 00:48:03,030 --> 00:48:03,950 OK. 918 00:48:03,950 --> 00:48:06,140 >> Nii et seal on midagi enamat kui lihtsalt suurem, muidugi. 919 00:48:06,140 --> 00:48:10,385 Võite ehitada Loogiline väljendeid kasutades kõige erinevaid asju te 920 00:48:10,385 --> 00:48:11,150 mõtlevad matemaatika. 921 00:48:11,150 --> 00:48:12,370 Nii üle. 922 00:48:12,370 --> 00:48:13,740 See peaks olema väiksem. 923 00:48:13,740 --> 00:48:14,990 Vabandust. 924 00:48:14,990 --> 00:48:18,520 925 00:48:18,520 --> 00:48:19,760 Ja vahe. 926 00:48:19,760 --> 00:48:22,971 >> ROB: Jumal hoidku jätad ta. 927 00:48:22,971 --> 00:48:23,620 >> JOSEPH: Olgu. 928 00:48:23,620 --> 00:48:25,950 Niisiis suurem, väiksem, suurem kui või võrdne, väiksem 929 00:48:25,950 --> 00:48:27,070 kui või võrdne. 930 00:48:27,070 --> 00:48:31,980 Me kasutame topelt võrdne kontrollida võrdõiguslikkus, sest ühe võrdub vahendid 931 00:48:31,980 --> 00:48:32,810 loovutamine, eks? 932 00:48:32,810 --> 00:48:33,140 Jah. 933 00:48:33,140 --> 00:48:37,130 Ja siis saame ka ei võrdub poolt kasutades hüüumärk, võrdub. 934 00:48:37,130 --> 00:48:41,530 >> Ja see hüüumärk sümbol saab laiendada ka nii, et kui sa tahad 935 00:48:41,530 --> 00:48:44,050 vahetage mingit Loogiline väljend, mida saab teha. 936 00:48:44,050 --> 00:48:48,530 Nii et see hindab, et tõsi vaid juhul, kui vastus on vähem 937 00:48:48,530 --> 00:48:51,240 või võrdne nulliga. 938 00:48:51,240 --> 00:48:53,950 On küsimusi? 939 00:48:53,950 --> 00:48:55,180 OK. 940 00:48:55,180 --> 00:48:58,840 >> Nii saab ka ühendada need väljendeid kasutades loogiline ja ja 941 00:48:58,840 --> 00:48:59,790 loogiline Or. 942 00:48:59,790 --> 00:49:03,530 Nii et see on lihtsalt ja sümbol, mis peaks olema Shift, 7. 943 00:49:03,530 --> 00:49:07,720 Ja see on see toru sümbol, mis on ei väiketähti L. See on üks 944 00:49:07,720 --> 00:49:09,440 just nii üle oma Enter. 945 00:49:09,440 --> 00:49:12,870 Nii saate kasutada kahte neist sümboliseerima loogiline ja loogiline Or. 946 00:49:12,870 --> 00:49:18,180 >> Nii et see kuvatakse ainult õige, kui vastus on üks, kaks, kolm või neli. 947 00:49:18,180 --> 00:49:23,030 Ja see ainult tagasi true kui vastus on väljaspool, et mõlemal poolel. 948 00:49:23,030 --> 00:49:26,190 Nii see ei ole üks, kaks, kolm või neli. 949 00:49:26,190 --> 00:49:28,385 Ja kuidas sa kasutad et väljend - 950 00:49:28,385 --> 00:49:29,990 >> ROB: Või null või viis. 951 00:49:29,990 --> 00:49:32,200 >> JOSEPH: Zero või viis. 952 00:49:32,200 --> 00:49:32,380 Vabandust. 953 00:49:32,380 --> 00:49:33,320 Jah, jah, jah. 954 00:49:33,320 --> 00:49:34,180 OK. 955 00:49:34,180 --> 00:49:38,980 Ja siin nüüd, samamoodi kui kasutavad seda väljendit, väiksem 956 00:49:38,980 --> 00:49:42,000 väljend pool Kui tingimuslik avaldus, siis oleks seda kasutada ka 957 00:49:42,000 --> 00:49:47,800 samamoodi lihtsalt paneb selle sees Sulgudes on Kui avalduses. 958 00:49:47,800 --> 00:49:54,020 Nii et see printf ainult tulekahju, kui vastus on üks, kaks, kolm või neli. 959 00:49:54,020 --> 00:49:56,002 Küsimused kombineerimine väljendid? 960 00:49:56,002 --> 00:50:00,450 961 00:50:00,450 --> 00:50:04,240 >> Nii et seal on veel tingimisi konstrukti kutsume Kui / Else. 962 00:50:04,240 --> 00:50:08,120 Ühesõnaga, see tähendab nüüd, OK, kui midagi ma tahtsin vaadata ei olnud 963 00:50:08,120 --> 00:50:11,600 tõsi, siis lähevad Else ja täidab teisi meetmeid. 964 00:50:11,600 --> 00:50:15,570 Nii et sel juhul, palusin kasutaja täisarv. 965 00:50:15,570 --> 00:50:17,790 Kas täisarv suurem kui null? 966 00:50:17,790 --> 00:50:18,310 Jah? 967 00:50:18,310 --> 00:50:20,100 Siis nad hakkasid positiivne number. 968 00:50:20,100 --> 00:50:22,320 Kui ei, siis peab see olema olnud negatiivne või null. 969 00:50:22,320 --> 00:50:27,530 Nii et sa hakkasid negatiivne arv või sellisel juhul null. 970 00:50:27,530 --> 00:50:29,235 Jah. 971 00:50:29,235 --> 00:50:30,485 Või null. 972 00:50:30,485 --> 00:50:36,320 973 00:50:36,320 --> 00:50:39,300 >> Ja siis on meil ka Kui / Else, Kui ja mujal. 974 00:50:39,300 --> 00:50:45,640 Nii, et see võimaldab meil täita jada asju ainult siis, kui esimene neist ei suuda. 975 00:50:45,640 --> 00:50:49,540 Nii et kui nüüd me teeme viimane valite nulli. 976 00:50:49,540 --> 00:50:53,080 Nii et kui nad ei korjatud positiivset ega negatiivne arv, siis peavad nad 977 00:50:53,080 --> 00:50:53,640 valinud nulli. 978 00:50:53,640 --> 00:50:56,720 Nii see lihtsalt läheb alla kett niimoodi. 979 00:50:56,720 --> 00:50:59,960 >> Nii näiteks, kuidas Kui on erinev - 980 00:50:59,960 --> 00:51:02,590 Kui / Else erineb lihtsalt jada infovälja mahu. 981 00:51:02,590 --> 00:51:07,680 Ja see on üldine küsimus, mis inimesed küsivad on hästi, kui saad nagu 982 00:51:07,680 --> 00:51:11,265 95 CS50 Mida siis see programm teile öelda? 983 00:51:11,265 --> 00:51:12,600 >> SPEAKER 5: Said A. 984 00:51:12,600 --> 00:51:13,490 >> JOSEPH: Jah. 985 00:51:13,490 --> 00:51:14,960 Sul on iga üks neist õige. 986 00:51:14,960 --> 00:51:17,130 Sul on sul B, siis sain C ja D, eks? 987 00:51:17,130 --> 00:51:19,770 Nii et kõik need saavad hinnata selleks. 988 00:51:19,770 --> 00:51:23,570 Niisiis, kui 95 on suurem kui 90, see Samuti on suurem kui 80, see on ka 989 00:51:23,570 --> 00:51:25,790 suurem kui 70, ja see Samuti on suurem kui 60. 990 00:51:25,790 --> 00:51:27,620 Nii et sul on kõik need klassid. 991 00:51:27,620 --> 00:51:31,630 Ja ma eeldan, et sa oleksid tahan ainult A. 992 00:51:31,630 --> 00:51:34,060 >> Kuidas määrata, mis on asendada kellel veel / Kui 's. 993 00:51:34,060 --> 00:51:37,540 Nii et see stsenaarium, ta näeb, et 95 on suurem kui 90, ja siis see 994 00:51:37,540 --> 00:51:38,885 ei hinnata ülejäänud avaldused. 995 00:51:38,885 --> 00:51:41,900 996 00:51:41,900 --> 00:51:43,150 Kõik küsimused selle kohta? 997 00:51:43,150 --> 00:51:48,580 998 00:51:48,580 --> 00:51:52,470 >> Nii et seal on veel tingimisi sorti struktuur, mis meil siin on, mida me 999 00:51:52,470 --> 00:51:53,390 kutsuvad lüliti avaldusega. 1000 00:51:53,390 --> 00:51:57,390 Nii, et see võimaldab teil põhimõtteliselt kontrollima Mis väärtus number paned 1001 00:51:57,390 --> 00:51:59,000 lülitisse märkuse. 1002 00:51:59,000 --> 00:52:03,200 Nii et see stsenaarium, me üleminek n, ja me ütleme, oh, kui n on 1003 00:52:03,200 --> 00:52:04,710 üks, siis printida et avalduses. 1004 00:52:04,710 --> 00:52:07,910 Ja siis murda, mis tähendab, exit välja lüliti avaldusega. 1005 00:52:07,910 --> 00:52:12,670 >> Kui see ei olnud üks, siis, noh, lihtsalt lõpuks vaadata kõik need juhud. 1006 00:52:12,670 --> 00:52:16,280 Ja nii see kontrollib, kas see on üks, kaks või kolm, ja ta prindib vastavalt. 1007 00:52:16,280 --> 00:52:19,780 Ja mida see vaikimisi märksõna siin vahend on, kui nad ei sisestanud ühtegi 1008 00:52:19,780 --> 00:52:21,690 neist, siis ütle kehtetu. 1009 00:52:21,690 --> 00:52:25,910 Ütleme küsin n ja kasutaja annab mulle neli. 1010 00:52:25,910 --> 00:52:29,470 Noh, see sobib ükski neist juhtudest, nii et see prinditakse välja, millised on 1011 00:52:29,470 --> 00:52:30,540 default osa. 1012 00:52:30,540 --> 00:52:31,180 Jah, küsimus? 1013 00:52:31,180 --> 00:52:32,614 >> SPEAKER 5: Kas te kasutate Loogiline väljendite asemel 1014 00:52:32,614 --> 00:52:33,570 üks, kaks või kolm? 1015 00:52:33,570 --> 00:52:36,940 >> JOSEPH: Nii et küsimus on, kas sa kasutad Loogiline väljendeid asemel üks, 1016 00:52:36,940 --> 00:52:37,940 kaks, kolm? 1017 00:52:37,940 --> 00:52:40,520 Ja C, ma usun, et teil ei saa seda teha. 1018 00:52:40,520 --> 00:52:44,320 Aga teistes keeltes, mida võiks kogevad lõpus 1019 00:52:44,320 --> 00:52:46,460 semester nagu JavaScript, saate. 1020 00:52:46,460 --> 00:52:50,050 Noh, siis oleks võimalik arvutada esimese et raha ja siis seda kasutada 1021 00:52:50,050 --> 00:52:50,650 lüliti avaldusega. 1022 00:52:50,650 --> 00:52:50,930 Jah? 1023 00:52:50,930 --> 00:52:54,760 >> ROB: Nii osa kasuks lüliti avaldused on mõelda, kui sa tegid seda 1024 00:52:54,760 --> 00:52:58,680 kui Kui / Else, nii nagu siis, kui n on võrdne valemites üht või mis iganes. 1025 00:52:58,680 --> 00:53:00,300 Else / Kui n on võrdne kaks, mis iganes. 1026 00:53:00,300 --> 00:53:01,960 Else / Kui n on võrdne kolmega. 1027 00:53:01,960 --> 00:53:05,930 Niisiis, kuidas programm käivitub see oleks järjest langema, et nimekiri 1028 00:53:05,930 --> 00:53:07,500 ja vaadake, N on? 1029 00:53:07,500 --> 00:53:08,040 Nope. 1030 00:53:08,040 --> 00:53:09,070 Kas n kaks? 1031 00:53:09,070 --> 00:53:09,490 Nope. 1032 00:53:09,490 --> 00:53:10,940 Kas n kolm? 1033 00:53:10,940 --> 00:53:11,710 Jah. 1034 00:53:11,710 --> 00:53:12,610 Tehke seda. 1035 00:53:12,610 --> 00:53:15,270 >> Arvestades lüliti avaldused, see on tegelikult oskab koostada seda 1036 00:53:15,270 --> 00:53:16,360 väga kiiresti. 1037 00:53:16,360 --> 00:53:19,550 Ja niipea, kui ta ütleb, et lüliti, see ütleb, eks, n on kaks, ma olen 1038 00:53:19,550 --> 00:53:23,060 kohe läheb hüpata kus Ma peaks alustama täitev. 1039 00:53:23,060 --> 00:53:26,080 Ma ei kavatse kõigepealt kontrollida, on n üks, on N kaks? 1040 00:53:26,080 --> 00:53:28,860 See võib kohe alustada teed mida see peaks tegema. 1041 00:53:28,860 --> 00:53:33,830 >> Ja sellepärast, et ta ei saa võtma Loogiline tingimused. 1042 00:53:33,830 --> 00:53:36,480 Või muidu oleks ta pidanud tegema järjestikune, nagu kõik korras, on n 1043 00:53:36,480 --> 00:53:37,820 nullist suurem? 1044 00:53:37,820 --> 00:53:41,140 Else on n on suurem kui 10 või mis iganes. 1045 00:53:41,140 --> 00:53:44,780 >> JOSEPH: Sel juhul, kui sa kasutada Kui / Else If, ​​siis lüliti oleks 1046 00:53:44,780 --> 00:53:47,792 käivitada umbes kolm korda kiiremini Kui / Else If. 1047 00:53:47,792 --> 00:53:53,060 1048 00:53:53,060 --> 00:53:56,040 Saame korraldada lüliti sellisel nii, et me ei riku 1049 00:53:56,040 --> 00:53:57,520 pärast iga juhtudel. 1050 00:53:57,520 --> 00:54:00,960 Nii et kui ma eraldamine numbrid, et me valida ühte ja 1051 00:54:00,960 --> 00:54:04,250 kaks on mitte suurtes kogustes ja kolmega suur arv. 1052 00:54:04,250 --> 00:54:08,290 >> Nii sel juhul, kui n on üks või kaks, siis tabab juhul ja siis 1053 00:54:08,290 --> 00:54:10,640 läbi kukkuda, kuna ei ole vaheaega. 1054 00:54:10,640 --> 00:54:11,610 Ja siis lõpuks siin. 1055 00:54:11,610 --> 00:54:15,360 Nii et kui me valime ühe, siis tehke printf ja seejärel murda, nii et ükski 1056 00:54:15,360 --> 00:54:17,610 see täidetakse. 1057 00:54:17,610 --> 00:54:21,870 Ja muidugi, kui nad sisenevad kolmes või midagi muud, siis jätke 1058 00:54:21,870 --> 00:54:25,320 need ja mine sinna, ja see täidab selle asemel 1059 00:54:25,320 --> 00:54:27,490 vastav rida. 1060 00:54:27,490 --> 00:54:29,390 Kas on mingeid küsimusi selle kohta? 1061 00:54:29,390 --> 00:54:29,780 Jah? 1062 00:54:29,780 --> 00:54:32,642 >> SPEAKER 4: Kas sa saad viga, kui sa oli vaheaja järel kui üks, kuid see 1063 00:54:32,642 --> 00:54:34,550 ei ole midagi, et seda teha? 1064 00:54:34,550 --> 00:54:37,820 >> JOSEPH: Nii et küsimus on kas sa saad viga, kui teil on vaheaja järel 1065 00:54:37,820 --> 00:54:39,730 Kui üks, kuid seal on midagi teha? 1066 00:54:39,730 --> 00:54:41,520 Ja vastus on ei. 1067 00:54:41,520 --> 00:54:43,172 Sa tegelikult ei saa viga. 1068 00:54:43,172 --> 00:54:44,590 Jah, mm hmm. 1069 00:54:44,590 --> 00:54:54,540 >> Nii nagu omamoodi väike muutus siin, Ma panen printf siin. 1070 00:54:54,540 --> 00:54:55,790 Ups. 1071 00:54:55,790 --> 00:55:00,994 1072 00:55:00,994 --> 00:55:04,880 Mis sellest printida, kui Panin ühe sisendina? 1073 00:55:04,880 --> 00:55:07,530 1074 00:55:07,530 --> 00:55:07,770 Jah. 1075 00:55:07,770 --> 00:55:10,360 See ütleb teile, see ei võta suur arv kaks korda, eks? 1076 00:55:10,360 --> 00:55:13,500 Sest see oleks tabanud, et esimesel juhul ta ei murra katki ja see langeks 1077 00:55:13,500 --> 00:55:15,730 läbi teise puhul. 1078 00:55:15,730 --> 00:55:16,950 Kõik küsimused selle kohta? 1079 00:55:16,950 --> 00:55:18,280 >> ROB: Kas teil on teine ​​küsimus? 1080 00:55:18,280 --> 00:55:20,840 >> JOSEPH: OK, lahe. 1081 00:55:20,840 --> 00:55:22,400 Hea küll. 1082 00:55:22,400 --> 00:55:25,780 Nii et on midagi muud me nimetame ternaarse operaator, mis on põhimõtteliselt 1083 00:55:25,780 --> 00:55:29,010 asendusliikme süntaksit teed Kui ja siis teine. 1084 00:55:29,010 --> 00:55:30,470 Ja see võimaldab teil teha kõik ühes reas. 1085 00:55:30,470 --> 00:55:34,110 Nii et selle konkreetse programmi Ma palun kasutaja n. 1086 00:55:34,110 --> 00:55:37,190 Ja kui n on suurem kui 100, ma ütlen neid nad hakkasid kõrge number. 1087 00:55:37,190 --> 00:55:39,560 Else ma ütlen neile, et nad korjatakse vähe. 1088 00:55:39,560 --> 00:55:43,030 >> Nii et me saame kasutada seda tõesti pikk süntaks, string, S, ja seejärel vaadata, kas n on 1089 00:55:43,030 --> 00:55:45,260 suurem kui 100 ja määrata seda vastavalt. 1090 00:55:45,260 --> 00:55:49,450 Aga me saame teha seda palju sisukamaid kasutades seda ternaarse operaator süntaks 1091 00:55:49,450 --> 00:55:52,090 mis hõlmab küsimus mark ja jämesooles. 1092 00:55:52,090 --> 00:55:55,070 Nii küsimärk on sisuliselt küsib küsimuse, kas pole? 1093 00:55:55,070 --> 00:55:56,625 >> ROB: Võib-olla seda suurendada. 1094 00:55:56,625 --> 00:55:57,372 >> JOSEPH: Jah. 1095 00:55:57,372 --> 00:56:00,210 Hea mõte. 1096 00:56:00,210 --> 00:56:02,550 Nii et see on ternaarse operaator. 1097 00:56:02,550 --> 00:56:06,100 Ma kõigepealt küsida, on n suurem kui 100? 1098 00:56:06,100 --> 00:56:09,770 Kui on, siis ma täitma esimese osa enne jämesooles. 1099 00:56:09,770 --> 00:56:13,360 Kui see ei ole, siis ma täitma teine ​​osa pärast jämesooles. 1100 00:56:13,360 --> 00:56:16,640 Seega, kui n on suurem kui 100, siis ta korjab kõrge ja seab 1101 00:56:16,640 --> 00:56:18,360 et arvesse string s. 1102 00:56:18,360 --> 00:56:22,170 Kui n on väiksem kui 100, siis korjab madal ja siis paneb see arvesse string s. 1103 00:56:22,170 --> 00:56:30,186 Nii et siis kondenseerub see suur rahn ette võtta lihtsalt, et üks liin. 1104 00:56:30,186 --> 00:56:32,010 >> SPEAKER 5: Kas see populaarne? 1105 00:56:32,010 --> 00:56:36,070 >> JOSEPH: Jah, see on üsna populaarne asju, kus sisuliselt soovite 1106 00:56:36,070 --> 00:56:38,700 ei loovutamine põhineb mingi tingimus. 1107 00:56:38,700 --> 00:56:43,110 Ja sel juhul, püüdsime väärtustada string s. 1108 00:56:43,110 --> 00:56:44,840 See ei ole nii - 1109 00:56:44,840 --> 00:56:47,670 Ma arvan, et ma tõesti ei eelistaks muudel juhtudel. 1110 00:56:47,670 --> 00:56:49,390 Aga see on eriti kasulik Selle ülesanne. 1111 00:56:49,390 --> 00:56:54,490 >> ROB: See on üsna levinud muster kui teil on muutuja, mis 1112 00:56:54,490 --> 00:56:58,200 sa lähed öelda, kui midagi, seada Selle muutuja üks väärtus; teine, määrata 1113 00:56:58,200 --> 00:56:59,810 Selle muutuja teine ​​väärtus. 1114 00:56:59,810 --> 00:57:03,360 Ja see on stsenaarium kus kasutada kolmekomponentse. 1115 00:57:03,360 --> 00:57:05,220 >> JOSEPH: Ja sa kokkuhoid palju ridu, eks? 1116 00:57:05,220 --> 00:57:08,090 Ja see lihtsalt muudab oma koodi väidetavalt natuke paremini arusaadavaks. 1117 00:57:08,090 --> 00:57:08,635 Jah, küsimus? 1118 00:57:08,635 --> 00:57:12,384 >> SPEAKER 6: For kolmekomponentse võiks minna, string s võrdsete s, küsimärk? 1119 00:57:12,384 --> 00:57:15,280 Ja siis võib olla, ütleme, viis erinevat võimalust. 1120 00:57:15,280 --> 00:57:18,310 Ja sõltuvalt sellest, milline arv n aastal, oleks valida üks neist? 1121 00:57:18,310 --> 00:57:22,210 >> JOSEPH: Seega on küsimus selles, kas on olemas omamoodi süntaks, kus saab teha string 1122 00:57:22,210 --> 00:57:25,910 s on n ja siis on rohkem kui kaks valikute pärast, et küsimärk? 1123 00:57:25,910 --> 00:57:29,740 Ja lihtne vastus on ei, siis ei ole tõesti hea võimalus seda teha, välja arvatud juhul, 1124 00:57:29,740 --> 00:57:33,850 soovite pesa mitu ternaarse operaatorite sees üksteisest. 1125 00:57:33,850 --> 00:57:38,050 >> Sa võid seda teha nagu n on suurem kui 100, küsimärk, ja siis teine 1126 00:57:38,050 --> 00:57:41,850 kolmekomponendilist operaator, n on suurem kui 50, küsimärk, ning pesa nii. 1127 00:57:41,850 --> 00:57:45,240 Aga et stsenaarium, oma kood on saada omamoodi loetamatu ja räpane, 1128 00:57:45,240 --> 00:57:47,920 ja see võib olla parem minge Kui / Else avaldus sel hetkel. 1129 00:57:47,920 --> 00:57:54,530 >> ROB: Ja ka nagu pool tähele, PHP valesti rakendab ternaarse 1130 00:57:54,530 --> 00:57:58,053 operaator, nii et nested ternaries isegi ei tööta nii nagu peab. 1131 00:57:58,053 --> 00:57:58,840 >> JOSEPH: Jah. 1132 00:57:58,840 --> 00:58:01,170 Nii see läheb natuke segane, eriti kui sa lähed 1133 00:58:01,170 --> 00:58:02,145 erinevatesse keeltesse. 1134 00:58:02,145 --> 00:58:04,810 >> ROB: See on segane piisavalt, et keeled on valesti midagi. 1135 00:58:04,810 --> 00:58:08,030 1136 00:58:08,030 --> 00:58:11,510 >> JOSEPH: Nii tõesti, lihtsalt selgitada, ei kõik teame, mida see 1137 00:58:11,510 --> 00:58:13,900 % S teeb siin? 1138 00:58:13,900 --> 00:58:15,650 Kõik küsimused selle kohta? 1139 00:58:15,650 --> 00:58:19,760 Ma arvan, et lihtsalt kaamera,% s Põhimõtteliselt võimaldab meil panna kohatäide 1140 00:58:19,760 --> 00:58:20,790 jaoks string. 1141 00:58:20,790 --> 00:58:23,920 Ja siis lõpuks, me täpsustada, et muutuja tahame panna selle 1142 00:58:23,920 --> 00:58:25,500 koha omaniku s. 1143 00:58:25,500 --> 00:58:27,730 Nii et põhimõtteliselt võtab s ja see paneb ta siin. 1144 00:58:27,730 --> 00:58:32,130 Ja siis see välja printida, siis valisin kõrge või valisid madal number. 1145 00:58:32,130 --> 00:58:33,770 OK. 1146 00:58:33,770 --> 00:58:36,970 >> Nii silmuseid võimaldab teil sooritada asjad ringjate liigutustega, eks? 1147 00:58:36,970 --> 00:58:40,300 Sul võib olla tekkinud sellest Scratch kujul Forever ring 1148 00:58:40,300 --> 00:58:45,650 või Korda, kuni või Korda eriti arv kordi. 1149 00:58:45,650 --> 00:58:47,540 Miks see nii on meie jaoks hea? 1150 00:58:47,540 --> 00:58:51,500 Noh, C, oletame, meil on see laul rakendatakse Scratch et 1151 00:58:51,500 --> 00:58:53,450 laulab, on see laul et kunagi lõpeb. 1152 00:58:53,450 --> 00:58:55,710 See lihtsalt läheb edasi ja edasi ja igavesti ja igavesti. 1153 00:58:55,710 --> 00:58:59,395 Noh, te ei saa tõesti teha programm millel on lõpmatu arv printf 1154 00:58:59,395 --> 00:59:00,850 avaldusi, eks? 1155 00:59:00,850 --> 00:59:04,900 >> Nii selles stsenaarium, ühesuunaline et sa võiksid teha seda tööd ja 1156 00:59:04,900 --> 00:59:09,330 et muuta see printida igavesti on asemel kasutada samas silmus. 1157 00:59:09,330 --> 00:59:13,640 Nii samas silmus täidab mis kehas kaks traksid, mis 1158 00:59:13,640 --> 00:59:17,250 kuulub ta selle põhjal, mida tingimus. 1159 00:59:17,250 --> 00:59:21,170 Nii et selles konkreetses näites enne, kui me tahame prindi see igavesti, mida 1160 00:59:21,170 --> 00:59:23,590 võiks me siis teeme? 1161 00:59:23,590 --> 00:59:25,190 Noh, muidugi, eks? 1162 00:59:25,190 --> 00:59:32,290 >> Seega selline ühendab mõte Mõnede Boole'i ​​avaldis 1163 00:59:32,290 --> 00:59:33,610 koos silmus. 1164 00:59:33,610 --> 00:59:35,780 Ja saime teada Loogiline väljendeid varem. 1165 00:59:35,780 --> 00:59:39,650 Nii et kui tingimus sees et kuigi on tõsi, see loop 1166 00:59:39,650 --> 00:59:41,480 täidab edasi ja edasi ja edasi. 1167 00:59:41,480 --> 00:59:44,640 Ja sellisel juhul kui me selle esitama tõsi, see paneb lõpmatu 1168 00:59:44,640 --> 00:59:49,310 loop mis prindib laulu ja ja kui me soovitud enne ilma 1169 00:59:49,310 --> 00:59:52,410 võttes programm, millel on lõpmatu arvu printf avaldusi, mis on 1170 00:59:52,410 --> 00:59:55,220 ei ole võimalik. 1171 00:59:55,220 --> 00:59:57,810 >> Nii enam compellingly, kuigi saate seda 1172 00:59:57,810 --> 00:59:59,710 muutuv ja seisukorras. 1173 00:59:59,710 --> 01:00:04,420 Ütleme tahame korrata fraas, täiesti segane, 10 korda. 1174 01:00:04,420 --> 01:00:08,380 Niisiis, mida saate teha Kuigi silmuse saab esimene initsialiseerida counter 1175 01:00:08,380 --> 01:00:10,860 Muutuva väljaspool Kuigi silmuse 10. 1176 01:00:10,860 --> 01:00:14,360 Ja siis põhimõtteliselt iga kord, kui minna kaudu ajal loop välja printida 1177 01:00:14,360 --> 01:00:19,090 avaldus ja siis väheneb counter muutuja enne lõppu, 1178 01:00:19,090 --> 01:00:23,020 mingil hetkel, kui me lahutame ma piisavalt korda, 1-st I piisavalt korda - 1179 01:00:23,020 --> 01:00:27,290 ja lihtsalt selgitada, ma miinus miinus tähendab, et mul on võrdne I miinus 1. 1180 01:00:27,290 --> 01:00:31,280 >> See põhimõtteliselt tuua I alla kus, kui ma tabanud null, see 1181 01:00:31,280 --> 01:00:35,260 tingimus ei ole enam õige ja nii et see väljub läbi silmuse. 1182 01:00:35,260 --> 01:00:37,045 Seega täiesti segane ainult prindib 10 korda. 1183 01:00:37,045 --> 01:00:39,550 1184 01:00:39,550 --> 01:00:41,080 Küsimusi Kuigi loop? 1185 01:00:41,080 --> 01:00:44,580 1186 01:00:44,580 --> 01:00:46,790 OK. 1187 01:00:46,790 --> 01:00:50,550 >> Seega on nii, et me ei tee seda, mida me tegid rohkem arusaadaval viisil koos 1188 01:00:50,550 --> 01:00:51,715 mida me nimetame For loop. 1189 01:00:51,715 --> 01:00:55,750 Nii For loop koosneb käivitamise, seisukorra ja 1190 01:00:55,750 --> 01:00:58,950 uuendus, nagu meil oli enne Selles samas silmus. 1191 01:00:58,950 --> 01:00:59,890 Võtame vaata. 1192 01:00:59,890 --> 01:01:02,900 Sel ajal loop oli meil käivitamine, siis oli meil 1193 01:01:02,900 --> 01:01:04,260 tingimusel, et me kontrollida. 1194 01:01:04,260 --> 01:01:06,450 Ja siis oli meil uuendus samm ülaosas. 1195 01:01:06,450 --> 01:01:10,060 >> Mis For loop, see põhimõtteliselt võtab need kolm asja ja kondenseerub see 1196 01:01:10,060 --> 01:01:11,370 alla ühte rida. 1197 01:01:11,370 --> 01:01:15,130 Nii et esimene asi, et ta seda teeb For loop on ettekanne. 1198 01:01:15,130 --> 01:01:19,090 Ja siis sa semikoolon ja seejärel sa tingimus, mis on I 1199 01:01:19,090 --> 01:01:22,200 nullist suurem läheb sinna, ja siis uuendus samm. 1200 01:01:22,200 --> 01:01:26,470 Nii et see läheb läbi otsani loop keha. 1201 01:01:26,470 --> 01:01:28,790 Nii et need kaks programmid on sisuliselt samaväärsed. 1202 01:01:28,790 --> 01:01:31,960 1203 01:01:31,960 --> 01:01:33,870 >> Kas on küsimusi? 1204 01:01:33,870 --> 01:01:37,000 Mis on üks erinevus Nende kahe? 1205 01:01:37,000 --> 01:01:38,000 Kas keegi punkti välja? 1206 01:01:38,000 --> 01:01:40,480 See võib olla natuke peenem. 1207 01:01:40,480 --> 01:01:41,930 See on lihtsalt väga väike vahe. 1208 01:01:41,930 --> 01:01:42,330 Jah? 1209 01:01:42,330 --> 01:01:49,008 >> SPEAKER 5: Sa ei oleks võimalik kasutada Ma muutuja väljaspool For loop 1210 01:01:49,008 --> 01:01:49,962 [Kuuldamatu]? 1211 01:01:49,962 --> 01:01:50,900 >> JOSEPH: Täpselt. 1212 01:01:50,900 --> 01:01:53,550 Nii et see on midagi, mida me jõuame hiljem kutsuti muutuja ulatust. 1213 01:01:53,550 --> 01:01:56,610 Aga põhimõtteliselt on see int i elu Väljaspool seda Kuigi silmus. 1214 01:01:56,610 --> 01:01:59,800 Nii et kui see samas silmus tehakse täidesaatev, ma saaks kasutada I hiljem 1215 01:01:59,800 --> 01:02:00,880 in programmi. 1216 01:02:00,880 --> 01:02:05,430 >> Arvestades seda For loop, see int I on rivist sees selle jaoks silmus. 1217 01:02:05,430 --> 01:02:10,240 Ja kuna see asub käesoleva osa Euroopa For loop, mis algab 1218 01:02:10,240 --> 01:02:13,200 juures sulgudes ja lõpeb lokkis traksidega seal. 1219 01:02:13,200 --> 01:02:16,120 Midagi, mis on kuulutatud sees siin ei saa kasutada väljaspool. 1220 01:02:16,120 --> 01:02:20,420 Nii et kui ma üritan kasutada I väljaspool, siis see öelge, deklareerimata sümbol. 1221 01:02:20,420 --> 01:02:22,420 Ja põhiliselt, ma ei oleks võimalik seda kasutada. 1222 01:02:22,420 --> 01:02:28,460 >> ROB: Ja noh, 10 aastat tagasi, sõna otseses mõttes igal juhul lokkis traksid on 1223 01:02:28,460 --> 01:02:31,140 mida kasutatakse, et määrata ulatus erinev. 1224 01:02:31,140 --> 01:02:37,240 Nii et seal, int i võrdub 10 deklareeritakse sees selle 1225 01:02:37,240 --> 01:02:38,520 komplekt lokkis traksid. 1226 01:02:38,520 --> 01:02:42,530 Ja nii siis nii kaua, kui sa püüad kasutada I enne seda lokkis traksidega, kõik on korras. 1227 01:02:42,530 --> 01:02:47,090 1228 01:02:47,090 --> 01:02:51,460 Sa võid näha kui kirjutad teha, siis vaata kriips-kriips-std, võrdne C99. 1229 01:02:51,460 --> 01:02:57,100 >> Nii et on uuem versioon C, mis GCC on rakendanud, et annab ka 1230 01:02:57,100 --> 01:02:58,740 Selle otsetee. 1231 01:02:58,740 --> 01:03:03,505 Nii et see, mida kasutatakse ei lubata C. Ja saate aru, miks, sest see int 1232 01:03:03,505 --> 01:03:07,600 Ma ei kuulu käesoleva lokkis traksidega kuid see on ikka lugeda 1233 01:03:07,600 --> 01:03:09,750 reguleerimisalasse need lokkis traksid. 1234 01:03:09,750 --> 01:03:14,120 Aga see on väga mugav asi, ja nii see on hea laiendus. 1235 01:03:14,120 --> 01:03:15,370 >> JOSEPH: Kas on küsimusi? 1236 01:03:15,370 --> 01:03:17,550 1237 01:03:17,550 --> 01:03:19,260 OK. 1238 01:03:19,260 --> 01:03:22,820 Mis on kasulikum on see, et mõnikord tahad omamoodi dünaamilisuse 1239 01:03:22,820 --> 01:03:23,410 oma loop, eks? 1240 01:03:23,410 --> 01:03:26,350 Sa ei taha lihtsalt pruugi printida täiesti segane kogu aeg, teil 1241 01:03:26,350 --> 01:03:28,650 loendatavaid alla 10 või midagi. 1242 01:03:28,650 --> 01:03:32,010 Ja nii võid kasutada counter muutuja sees, et loop samuti. 1243 01:03:32,010 --> 01:03:35,530 Ja sel juhul see programm lihtsalt loeb ette 10 kogu tee alla. 1244 01:03:35,530 --> 01:03:39,260 Ja mida see ei prindi? 1245 01:03:39,260 --> 01:03:42,790 See ei prindi null, õige, sest kui - 1246 01:03:42,790 --> 01:03:45,460 Jah, see ka ei prindi 11. 1247 01:03:45,460 --> 01:03:49,200 >> Nii see ei prindi null, sest kui Mul on null, pea meeles, hindab ta 1248 01:03:49,200 --> 01:03:52,170 seisukord enne läheb see täita silmus keha. 1249 01:03:52,170 --> 01:03:56,820 Ja kui ma on null, see on vale, nii see ei prindi välja lugedes ette 1250 01:03:56,820 --> 01:04:00,200 null, see lihtsalt printida loendamise alla 10 kõik viis kuni 1. 1251 01:04:00,200 --> 01:04:03,420 Kui me tegelikult tahtsin seda trükkida null, siis me paneks võrdusmärki 1252 01:04:03,420 --> 01:04:04,750 pärast seda üle kirjutama. 1253 01:04:04,750 --> 01:04:09,400 1254 01:04:09,400 --> 01:04:10,130 OK. 1255 01:04:10,130 --> 01:04:16,410 >> Nii et üks võimalus seda teha sisendi valideerimine, mis on see, kui te küsite kasutaja teha 1256 01:04:16,410 --> 01:04:18,620 midagi, sa tahad teha kindel, et nad järgige juhiseid, on kasutada 1257 01:04:18,620 --> 01:04:19,400 Kuigi silmus, eks? 1258 01:04:19,400 --> 01:04:22,990 Nii et sel juhul, ma palun positiivse number ja siis ma olen 1259 01:04:22,990 --> 01:04:23,810 ootab sisend. 1260 01:04:23,810 --> 01:04:28,210 >> Ja siis ma vaatasin Kuigi sisend väiksem kui null, hoida paludes neil. 1261 01:04:28,210 --> 01:04:32,100 Nii kaua kui nad annavad mulle arvu mis ei ole positiivne, hoida paludes, 1262 01:04:32,100 --> 01:04:33,600 hoida küsib, hoida paludes. 1263 01:04:33,600 --> 01:04:35,860 Aga mis on omamoodi imelik on? 1264 01:04:35,860 --> 01:04:38,570 Või mis ei tundu optimaalne umbes Selle struktuur on siin? 1265 01:04:38,570 --> 01:04:44,282 1266 01:04:44,282 --> 01:04:44,758 Keegi? 1267 01:04:44,758 --> 01:04:45,234 Jah? 1268 01:04:45,234 --> 01:04:47,614 >> SPEAKER 6: Sa korrates juhendamine kaks korda. 1269 01:04:47,614 --> 01:04:48,100 >> JOSEPH: Õigus. 1270 01:04:48,100 --> 01:04:50,090 Nii et meil on kaks printf avaldusi siin, eks? 1271 01:04:50,090 --> 01:04:53,440 Seega on nii, et me võiksime saada selle lihtsalt alla üks, mis muudaks meie 1272 01:04:53,440 --> 01:04:57,170 kood lihtsam lugeda ja natuke rohkem puhas. 1273 01:04:57,170 --> 01:05:00,180 Ja siis me ei pea on saada kaks korda samuti. 1274 01:05:00,180 --> 01:05:03,740 Ja üks viis, kuidas saate seda teha on kasutades Do-Kuigi silmus. 1275 01:05:03,740 --> 01:05:07,670 >> Ja Do-Kuigi silmus on põhimõtteliselt eri kujul samas silmus kus 1276 01:05:07,670 --> 01:05:11,460 kõik, mis looksulg saab rakenduma vähemalt üks kord. 1277 01:05:11,460 --> 01:05:14,840 Nii et siin ma tunnistada, int sisend, väljaspool esimese. 1278 01:05:14,840 --> 01:05:18,100 Ja siis ma lihtsalt öelda, kas see juhendamine kuigi sisend 1279 01:05:18,100 --> 01:05:19,140 on väiksem kui null. 1280 01:05:19,140 --> 01:05:20,530 Nii see tabab kõigepealt tegema. 1281 01:05:20,530 --> 01:05:24,190 Ta on alati täita seda vähemalt üks kord, nii et see on alati paluda kasutajal 1282 01:05:24,190 --> 01:05:25,960 sisend vähemalt üks kord. 1283 01:05:25,960 --> 01:05:29,390 Ja siis ta hindab, et sisestada, ja see läheb ringi. 1284 01:05:29,390 --> 01:05:30,135 Jah, küsimus? 1285 01:05:30,135 --> 01:05:32,602 >> SPEAKER 6: Kas on võimalik seda teha [Kuuldamatu] tüübid, nagu siis, kui sa ütled, 1286 01:05:32,602 --> 01:05:34,268 GetString ja keegi [kuuldamatu] 1287 01:05:34,268 --> 01:05:35,220 kas on võimalik, et [kuuldamatu] 1288 01:05:35,220 --> 01:05:40,060 >> JOSEPH: Seega on küsimus selles, kas on olemas kuidas teha sisendi valideerimine, kui kasutaja 1289 01:05:40,060 --> 01:05:41,850 ei pane õiges tüüpi muutuja? 1290 01:05:41,850 --> 01:05:44,460 Nii et kui me küsime int ja nad meile string asemel. 1291 01:05:44,460 --> 01:05:49,110 Ja funktsioone, et me ellu teid, GetInt, getString kõigis 1292 01:05:49,110 --> 01:05:52,680 neid ülesandeid, mida nad tegelikult juba seda sorti baasmudel sisend 1293 01:05:52,680 --> 01:05:54,120 valideerimise kapoti alla. 1294 01:05:54,120 --> 01:05:57,390 Nii et kui te kasutate neid funktsioone, mis me andsin sulle, sa tõesti ei pea. 1295 01:05:57,390 --> 01:06:01,380 >> Aga kui soovite, et uurida täpsemalt, kuidas tegelikult võite seda teha, võite vaadata 1296 01:06:01,380 --> 01:06:03,360 kapoti all on faili I/O-- 1297 01:06:03,360 --> 01:06:07,990 ei esita, standard I / O funktsioone nagu lugemine standard sisend ja 1298 01:06:07,990 --> 01:06:08,580 standardväljundisse. 1299 01:06:08,580 --> 01:06:10,630 Ja saad parema tunde kuidas te võite seda teha. 1300 01:06:10,630 --> 01:06:13,670 >> ROB: Üks küsimus on siiski konkreetselt näitega sa 1301 01:06:13,670 --> 01:06:17,070 ütles, ootate string ja ma sisestan int. 1302 01:06:17,070 --> 01:06:20,110 Kuidas te vahet vahel tahtlikult tahavad 1303 01:06:20,110 --> 01:06:23,130 string 123 versus tahavad int 123? 1304 01:06:23,130 --> 01:06:29,230 Nii string, see on päris palju seal ei ole kinnitamine, see on lihtsalt mis iganes nad 1305 01:06:29,230 --> 01:06:31,600 Sisestatud siis tõlgendama kui string. 1306 01:06:31,600 --> 01:06:35,790 >> Int on lihtsam, sest ükskõik input võtate kasutaja, siis on 1307 01:06:35,790 --> 01:06:37,470 alati võttes string. 1308 01:06:37,470 --> 01:06:40,650 Ja nii, et string saab siis kontrollida, on kõik need 1309 01:06:40,650 --> 01:06:44,218 tegelikult numbriga? 1310 01:06:44,218 --> 01:06:45,170 >> JOSEPH: OK. 1311 01:06:45,170 --> 01:06:46,420 Küsimusi Do-Kuigi silmus? 1312 01:06:46,420 --> 01:06:49,170 >> ROB: Oh, ja see on ka - 1313 01:06:49,170 --> 01:06:55,130 läheb tagasi ulatus mõnevõrra levinud viga üritab kasutada mõningaid kohalikke 1314 01:06:55,130 --> 01:06:59,540 muutuja selles Do-Kuigi loop sees seda tingimust. 1315 01:06:59,540 --> 01:07:02,850 Ja tegelikult, kui me lihtsalt lahti seda ja ütles, int sisend võrdub 1316 01:07:02,850 --> 01:07:06,990 GetInt, siis kompilaator karju meid, sest sisend ei eksisteeri 1317 01:07:06,990 --> 01:07:08,900 väljaspool ulatust need lokkis traksid. 1318 01:07:08,900 --> 01:07:10,792 >> JOSEPH: Ja see on põhjus, miks me seda vaja rivisse. 1319 01:07:10,792 --> 01:07:13,620 1320 01:07:13,620 --> 01:07:14,630 OK. 1321 01:07:14,630 --> 01:07:17,530 Nii saab ka välja murda loop alguses, kui soovite. 1322 01:07:17,530 --> 01:07:21,240 Seega see on teistmoodi rakendamisel, mida me lihtsalt ellu. 1323 01:07:21,240 --> 01:07:24,340 Ja selle asemel jääk Sulgudes, me kasutame 1324 01:07:24,340 --> 01:07:26,920 Kui avaldus sees keha on Do-Kuigi silmus. 1325 01:07:26,920 --> 01:07:30,000 >> Ja põhimõtteliselt, kui sisend on lõpuks suurem kui null, siis me 1326 01:07:30,000 --> 01:07:31,000 murda välja silmus. 1327 01:07:31,000 --> 01:07:33,420 Ja nii me läheme kõik siia alla. 1328 01:07:33,420 --> 01:07:37,920 Ja te näete, et see oleks ilmselt eelistatakse käesolevas 1329 01:07:37,920 --> 01:07:39,870 stsenaarium, sest see on natuke puhtam ja natuke 1330 01:07:39,870 --> 01:07:41,380 natuke lihtsam lugeda. 1331 01:07:41,380 --> 01:07:45,210 Arvestades seda, siis omamoodi on eraldi reale ta. 1332 01:07:45,210 --> 01:07:47,890 See on natuke koledam, Ma arvan, et mõnes mõttes. 1333 01:07:47,890 --> 01:07:48,530 Jah, küsimus? 1334 01:07:48,530 --> 01:07:52,178 >> SPEAKER 4: Kas murda ainult saada sa välja ühe komplekti hambaklambreid? 1335 01:07:52,178 --> 01:07:53,080 >> JOSEPH: Õigus. 1336 01:07:53,080 --> 01:07:58,100 Seega on küsimus selles murdub vaid sulle välja ühe loop? 1337 01:07:58,100 --> 01:07:59,280 Ja vastus on jah. 1338 01:07:59,280 --> 01:08:04,290 Nii et kui teil on hakanud pesitsema jaoks silmuseid jaoks Näiteks kui mul on int I võrdub 0 1339 01:08:04,290 --> 01:08:09,040 kuni 10 ja siis int J võrdub 0 kuni 10, kui ma murda sisemine 1340 01:08:09,040 --> 01:08:12,310 loop, siis ma veel minna Lisa välimise kontuuri. 1341 01:08:12,310 --> 01:08:15,760 Seega hoian täitmisel operatsioonid väljaspool. 1342 01:08:15,760 --> 01:08:17,640 Kõik küsimused selle kohta? 1343 01:08:17,640 --> 01:08:18,000 Jah? 1344 01:08:18,000 --> 01:08:21,760 >> SPEAKER 5: Aga murda ainult funktsioone lokkis traksid, mitte teiste 1345 01:08:21,760 --> 01:08:22,230 avaldused? 1346 01:08:22,230 --> 01:08:22,700 [Kuuldamatu] 1347 01:08:22,700 --> 01:08:27,620 >> JOSEPH: Seega on küsimus selles murdub ainult funktsiooni silmuseid erinevalt 1348 01:08:27,620 --> 01:08:29,014 muud avaldused nagu Kui? 1349 01:08:29,014 --> 01:08:32,950 Ja jah, see on nii, sest sa murrad läbi silmuse, paremale, 1350 01:08:32,950 --> 01:08:33,630 mõnes mõttes. 1351 01:08:33,630 --> 01:08:37,215 >> ROB: Enamikul juhtudel on see see on omamoodi Kui midagi, 1352 01:08:37,215 --> 01:08:37,660 siis murda. 1353 01:08:37,660 --> 01:08:41,580 Nii et sa ei pea murda taotleda Kui seda ümbriste ümber. 1354 01:08:41,580 --> 01:08:45,250 Samuti ei ole see palju tsüklina kuid pea meeles, et lülitid on ka 1355 01:08:45,250 --> 01:08:46,340 välja murdnud puhkepause. 1356 01:08:46,340 --> 01:08:48,390 Nägime puruneb kasutata lülitid enne. 1357 01:08:48,390 --> 01:08:52,189 >> JOSEPH: Ja te võite kasutada ka neid aastal Kuigi silmad ja For silmuseid. 1358 01:08:52,189 --> 01:08:54,560 Kas on küsimusi? 1359 01:08:54,560 --> 01:08:55,830 OK. 1360 01:08:55,830 --> 01:08:57,779 Nii et järgmine up on funktsioone. 1361 01:08:57,779 --> 01:09:01,500 Nii et sa oleks võinud kasutada ühte neist BYOB plokkide oma Scratch projekti. 1362 01:09:01,500 --> 01:09:04,569 Ja see põhimõtteliselt võimaldab teil määrata komplekt 1363 01:09:04,569 --> 01:09:05,680 juhised, mida tuleb järgida. 1364 01:09:05,680 --> 01:09:09,569 >> Ja mida ma mõtlen, et on mõtleme tagasi matemaatika, paremale, algebra. 1365 01:09:09,569 --> 01:09:13,370 Sul on, mida me nimetame x funktsioon mõned muutuja, ja ütleme, et see 1366 01:09:13,370 --> 01:09:16,080 funktsioon f kohal x võrdub x pluss 5. 1367 01:09:16,080 --> 01:09:20,410 Nii et sa ei mõtle, f kohal x kui see must kast, mis võtab 15 ja seejärel 1368 01:09:20,410 --> 01:09:22,590 toodab 20. 1369 01:09:22,590 --> 01:09:26,630 >> Nii üldisemalt funktsioon midagi, mis võtab teatud sisendite ja 1370 01:09:26,630 --> 01:09:27,880 Seejärel tekib mõned väljundid. 1371 01:09:27,880 --> 01:09:31,920 1372 01:09:31,920 --> 01:09:32,960 Ja miks funktsioonid hea? 1373 01:09:32,960 --> 01:09:35,189 Nad on hea mitmel põhjusel. 1374 01:09:35,189 --> 01:09:40,470 Nii ei keegi taha võtta torkehaav , mida organisatsioon tähendab? 1375 01:09:40,470 --> 01:09:42,630 Seoses miks funktsioonid on kasulik? 1376 01:09:42,630 --> 01:09:43,090 Jah? 1377 01:09:43,090 --> 01:09:44,735 >> SPEAKER 4: Ta teeb oma kood loetavamaks. 1378 01:09:44,735 --> 01:09:45,399 >> JOSEPH: Õigus. 1379 01:09:45,399 --> 01:09:47,670 Nii et üks asi, mida ei ta teeb koodi loetavamaks, eks? 1380 01:09:47,670 --> 01:09:53,710 Selle asemel, nagu int x võrdub x korda x korda x, saan kuubik x, 1381 01:09:53,710 --> 01:09:57,190 mis on loetav ja rohkem arusaadav lugejale. 1382 01:09:57,190 --> 01:10:01,150 >> Organisatsioon on ka nende lahku oma kood juhitavaks 1383 01:10:01,150 --> 01:10:05,610 portsjonid, nii et selle asemel, et püüda rakendada seda kõike ühes pikas jagu 1384 01:10:05,610 --> 01:10:09,070 peamiste saate omamoodi jagada see üles sisse nagu OK, kirjutame funktsiooni 1385 01:10:09,070 --> 01:10:11,910 kuubik midagi, kirjutame toimida ruutu midagi. 1386 01:10:11,910 --> 01:10:15,950 Nii saate jagada see üles võetud väike, vähe osi, mida saab lahendada 1387 01:10:15,950 --> 01:10:18,944 erinevalt üritab võidelda suur probleem korraga. 1388 01:10:18,944 --> 01:10:21,806 >> ROB: Või isegi pisikesed osad, mis sina ja partner saab lahendada. 1389 01:10:21,806 --> 01:10:22,283 >> JOSEPH: Jah. 1390 01:10:22,283 --> 01:10:23,855 >> ROB: Selle asemel, et mõlemad sa üritad implantaadi üks 1391 01:10:23,855 --> 01:10:27,170 funktsioneerima samaaegselt. 1392 01:10:27,170 --> 01:10:28,800 >> JOSEPH lihtsustamine. 1393 01:10:28,800 --> 01:10:30,050 Igaüks taha võtta vist? 1394 01:10:30,050 --> 01:10:33,080 1395 01:10:33,080 --> 01:10:33,410 Jah? 1396 01:10:33,410 --> 01:10:34,675 >> SPEAKER 5: rohkem kordusi. 1397 01:10:34,675 --> 01:10:35,260 >> JOSEPH: Õigus. 1398 01:10:35,260 --> 01:10:39,210 Nii et üks asi, mida saate teha koos lihtsustamist, et see on omamoodi edasi 1399 01:10:39,210 --> 01:10:42,520 samamoodi nagu korduskasutatavust on see, et kui ma kirjutan kuubik funktsioon, ma ei 1400 01:10:42,520 --> 01:10:45,410 lihtsalt kasutada seda üle ja üle ja üle jälle minu programmi kirjutamise asemel 1401 01:10:45,410 --> 01:10:49,610 x korda x korda x üle ja ikka ja jälle. 1402 01:10:49,610 --> 01:10:52,980 Ja lihtsustamine siin ka lihtsalt tähendab, et see muudab koodi sorti 1403 01:10:52,980 --> 01:10:55,900 lihtsam siluda kui jagate see üles võetud ülesanded. 1404 01:10:55,900 --> 01:10:58,250 Sest siis saab lokaliseerida, kus oma probleeme omamoodi on. 1405 01:10:58,250 --> 01:11:00,910 1406 01:11:00,910 --> 01:11:02,160 Kas on küsimusi? 1407 01:11:02,160 --> 01:11:04,200 1408 01:11:04,200 --> 01:11:06,540 >> Nii teine ​​mõte on abstraktsioon, eks? 1409 01:11:06,540 --> 01:11:07,390 See must kast. 1410 01:11:07,390 --> 01:11:11,360 Nagu sa tead, mida GetInt ei saada sisend kasutaja? 1411 01:11:11,360 --> 01:11:12,510 Me ei ole tõesti sulle, eks? 1412 01:11:12,510 --> 01:11:15,670 Kõik me oleme teile rääkinud on GetInt ei täpselt, mida ta ütleb, et ta teeb. 1413 01:11:15,670 --> 01:11:18,440 Nii et isegi kui me ei saa öelda, kui see töötab, siis ikka tean. 1414 01:11:18,440 --> 01:11:21,670 >> Nii et sel juhul on see Neljakordne funktsioon, mis teeb 1415 01:11:21,670 --> 01:11:24,520 erinevaid asju sisend toota toodangut. 1416 01:11:24,520 --> 01:11:28,050 Ja saab neljakordne arv korrutades neli. 1417 01:11:28,050 --> 01:11:30,790 Või saab see, mida me nimetame natuke nihutada see kahega. 1418 01:11:30,790 --> 01:11:32,960 Ja me katame selle natuke hiljem. 1419 01:11:32,960 --> 01:11:36,570 Ja ei ole vaja teada, kuidas see funktsiooni tegelikult töötab nii kaua kui see 1420 01:11:36,570 --> 01:11:37,640 töötab nagu. 1421 01:11:37,640 --> 01:11:40,740 >> Nii kapoti alla, ma võiks olla nagu, tagasi sisend korda 1422 01:11:40,740 --> 01:11:41,690 kaheksa jagatud kahte. 1423 01:11:41,690 --> 01:11:42,510 Ja sa ei tea, eks? 1424 01:11:42,510 --> 01:11:44,970 Kõik, mida vaja teada on, see, mida ta ütleb. 1425 01:11:44,970 --> 01:11:48,070 Nii et kasulik asi umbes võtmiseks. 1426 01:11:48,070 --> 01:11:52,910 >> Ja teine ​​asi on see omamoodi idee ning laikude oma koodi ühele 1427 01:11:52,910 --> 01:11:54,280 eriti jagu. 1428 01:11:54,280 --> 01:11:57,450 Nii et kui sul on probleem, siis ärge pean kogu oma koodi üritab 1429 01:11:57,450 --> 01:11:58,730 määrata, kus probleem oli. 1430 01:11:58,730 --> 01:12:00,990 Nii selles asjas I rakendatud kuup valesti. 1431 01:12:00,990 --> 01:12:02,820 Ma arvasin, et kuubi korrutades kolmekordselt. 1432 01:12:02,820 --> 01:12:05,760 >> Kõnealusel juhul nii, et see on üks programm et lihtsalt on korrutades kolm 1433 01:12:05,760 --> 01:12:06,750 kõikjal. 1434 01:12:06,750 --> 01:12:10,910 Ja on veel üks programm, mis on Faktooritava kuubik viidud funktsioon. 1435 01:12:10,910 --> 01:12:14,040 Ja nüüd, kui ma tahan määrata minu viga siin, ma pean määrata iga rida 1436 01:12:14,040 --> 01:12:15,620 Koodi selles programmis. 1437 01:12:15,620 --> 01:12:19,190 Arvestades teisest küljest, kui ma kasutan funktsioon, ma ainult vaja vahetada 1438 01:12:19,190 --> 01:12:20,650 mis viga oli ühes kohas. 1439 01:12:20,650 --> 01:12:25,330 1440 01:12:25,330 --> 01:12:28,730 >> Nii arvuti teadust, me kutsuvad sisendid ja väljundid. 1441 01:12:28,730 --> 01:12:31,640 Sisendid kutsutakse parameetrite või argumendid ja väljundid on nn 1442 01:12:31,640 --> 01:12:32,950 tagasi väärtusi. 1443 01:12:32,950 --> 01:12:39,000 Ja me näeme, kuidas see aitab meil omamoodi ning määratleda funktsiooni teise. 1444 01:12:39,000 --> 01:12:41,430 Nii et see on funktsiooni definitsioon jaoks keeramisel. 1445 01:12:41,430 --> 01:12:45,110 Nii et see võtab sisend ja seejärel ta naaseb, et number korda 1446 01:12:45,110 --> 01:12:47,020 endale kolm korda. 1447 01:12:47,020 --> 01:12:48,020 Teeme jaotada see. 1448 01:12:48,020 --> 01:12:53,090 >> Nii et meil on funktsioon header, mis seisneb põhiliselt kolme asja. 1449 01:12:53,090 --> 01:12:56,050 Nii et meil on parameetrid, mis on, nagu ma enne ütlesin, 1450 01:12:56,050 --> 01:12:57,680 sisestavate seda funktsiooni. 1451 01:12:57,680 --> 01:12:59,300 Ja siis anname funktsiooni nimi. 1452 01:12:59,300 --> 01:13:00,740 Sellisel juhul nimetatakse seda kuup. 1453 01:13:00,740 --> 01:13:03,860 Ja siis me täpsustada, mis tüüpi tagastamise väärtus on. 1454 01:13:03,860 --> 01:13:06,760 >> Nii selles asjas minu kuubifunktsiooni võtab täisarv ja samuti 1455 01:13:06,760 --> 01:13:07,890 tagastab täisarvu. 1456 01:13:07,890 --> 01:13:11,510 Nii et kui ma läbima kaks, kaks on täisarv, tagastab kaheksa mulle, mis 1457 01:13:11,510 --> 01:13:13,250 on täisarv. 1458 01:13:13,250 --> 01:13:15,420 Nii tagasi tüübinime parameetrid. 1459 01:13:15,420 --> 01:13:16,670 Küsimused, mis? 1460 01:13:16,670 --> 01:13:19,440 1461 01:13:19,440 --> 01:13:24,230 >> Ja siis tagastatav väärtus on tegelikult määratletud lõpus öelda tagasipöördumist 1462 01:13:24,230 --> 01:13:27,540 ning pöördub iganes sisaldab tagastatav väärtus. 1463 01:13:27,540 --> 01:13:30,940 Nii et sel juhul, kui me paneme kõik koos funktsioon võtab 1464 01:13:30,940 --> 01:13:35,100 parameetreid, seda nimetatakse midagi, ja tagastab midagi, mis on liigi 1465 01:13:35,100 --> 01:13:36,350 et me ütleme, et see pidi olema. 1466 01:13:36,350 --> 01:13:39,830 1467 01:13:39,830 --> 01:13:41,080 Kas on küsimusi? 1468 01:13:41,080 --> 01:13:43,710 1469 01:13:43,710 --> 01:13:45,080 >> Niisiis, kuidas me kasutame funktsiooni? 1470 01:13:45,080 --> 01:13:49,230 Noh, me kirjutame funktsiooni ja siis me kasutame seda meie programm, eks? 1471 01:13:49,230 --> 01:13:51,565 Nii et ma kutsusin seda kuup, ja siis saan kasutada kuubik. 1472 01:13:51,565 --> 01:13:54,200 >> Aga mis on oluline märkida, on see, et selleks küsimustes. 1473 01:13:54,200 --> 01:13:58,100 Kui mul on kuup allpool peamine, see on jooksegi kuubikuteks. 1474 01:13:58,100 --> 01:14:00,360 Ja selles punktis, et miski nimega kuup programmis, ja see on 1475 01:14:00,360 --> 01:14:02,550 lihtsalt saab olema nagu, mul on ei tea, mis kuup. 1476 01:14:02,550 --> 01:14:05,060 >> Nii ta ütleb sulle, kaudne deklaratsiooni funktsioon. 1477 01:14:05,060 --> 01:14:06,690 See on viga, mis näitab üles. 1478 01:14:06,690 --> 01:14:10,230 Ja nii sellisel juhul, kuup allpool Peamine, et ta ei kavatse 1479 01:14:10,230 --> 01:14:12,006 midagi teada. 1480 01:14:12,006 --> 01:14:14,724 >> SPEAKER 5: Nii peamine on tavaliselt Viimase ülesanne määratleda? 1481 01:14:14,724 --> 01:14:17,290 >> JOSEPH: Seega on küsimus selles, on peamine tavaliselt viimane 1482 01:14:17,290 --> 01:14:18,170 asi, mida soovite määratleda? 1483 01:14:18,170 --> 01:14:19,730 Ja see ei ole. 1484 01:14:19,730 --> 01:14:22,280 See on sellepärast, et me tavaliselt nagu Main et olla tipus, eks? 1485 01:14:22,280 --> 01:14:24,640 Sest see on esimene asi, mida tahad programmeerija avamist 1486 01:14:24,640 --> 01:14:25,640 programmi näha. 1487 01:14:25,640 --> 01:14:29,950 Ja kuidas me selle küsimuse lahendamiseks on meil tahad peamine et olla tipus, kuid 1488 01:14:29,950 --> 01:14:33,750 ülesandeid, mida me tahame, me tahame, et nad olema alla peamised veel võimalik kasutada 1489 01:14:33,750 --> 01:14:34,930 neid sees peamine? 1490 01:14:34,930 --> 01:14:36,870 >> Noh, mida me kasutame, mida me nimetame funktsiooni prototüüp. 1491 01:14:36,870 --> 01:14:40,830 Mis siis funktsiooni prototüüp põhiliselt on on see esimene võtab mida 1492 01:14:40,830 --> 01:14:45,060 allkiri või funktsiooni kaudu mida me tahame rakendada alla 1493 01:14:45,060 --> 01:14:47,420 siin, ja me paneme seda top programmi. 1494 01:14:47,420 --> 01:14:51,400 >> Nii et kui me ütleme, et, noh, hiljem meie programmi, me 1495 01:14:51,400 --> 01:14:55,010 teha lubadus rakendada seda funktsiooni nimetatakse int kuubik, mis võtab 1496 01:14:55,010 --> 01:14:56,260 täisarv sisend. 1497 01:14:56,260 --> 01:15:00,870 Nüüd, kuna see on eelkõige peamine, Peamine, et see saab öelda, oh, noh, 1498 01:15:00,870 --> 01:15:03,910 programmi hiljem, et see saab olema seal nii et ma ei maini, nii et ma 1499 01:15:03,910 --> 01:15:05,230 lihtsalt lase tal minna läbi nüüd. 1500 01:15:05,230 --> 01:15:07,660 >> Ja siis allosas, me ellu kuubik. 1501 01:15:07,660 --> 01:15:11,180 Ja siis põhiline on lihtsalt öelda, Noh, see on mingisugune link 1502 01:15:11,180 --> 01:15:12,250 Nende kahe sümboleid koos. 1503 01:15:12,250 --> 01:15:14,320 Ja me katame mida see tähendab hiljem. 1504 01:15:14,320 --> 01:15:17,090 Ja nii ta teab, et see on kuubifunktsiooni et ta peaks kasutama. 1505 01:15:17,090 --> 01:15:19,630 1506 01:15:19,630 --> 01:15:23,383 >> ROB: [kuuldamatu] kohta, kes tahavad Peamine allosas või 1507 01:15:23,383 --> 01:15:24,880 top, ma olen näinud nii. 1508 01:15:24,880 --> 01:15:28,630 On asju, mida lihtsalt meeldib panna peamised allosas. 1509 01:15:28,630 --> 01:15:32,520 Aga kui projekt muutub eriti suur, tavaliselt peamised on 1510 01:15:32,520 --> 01:15:34,290 esitama kõik oma. 1511 01:15:34,290 --> 01:15:38,170 Ja sel hetkel, nagu int kuubik line oleks - 1512 01:15:38,170 --> 01:15:42,460 sees stdio.h on hunnik Ridade just niimoodi int 1513 01:15:42,460 --> 01:15:44,010 kuubik int sisend line. 1514 01:15:44,010 --> 01:15:50,170 >> Ja nii need prototüübid on asju, mida kipuvad panna header faili, kell 1515 01:15:50,170 --> 01:15:52,140 mis hetkel, see ei ole oluline. 1516 01:15:52,140 --> 01:15:54,700 Noh, see ei ole oluline. 1517 01:15:54,700 --> 01:15:56,070 Need alati minna ülaosas. 1518 01:15:56,070 --> 01:15:59,490 Ja kui peamine on mitte faili kõigi oma, sa ei pea muretsema paneb 1519 01:15:59,490 --> 01:16:02,360 konkreetset funktsiooni prototüüpe faili. 1520 01:16:02,360 --> 01:16:05,370 >> JOSEPH: Ja me jõuame selle veidi Natuke hiljem kui Rob hakkab rääkima 1521 01:16:05,370 --> 01:16:06,380 kompileerimine. 1522 01:16:06,380 --> 01:16:09,480 Ja seal on ka vahe vahel parameeter ja argument. 1523 01:16:09,480 --> 01:16:12,500 Ja parameeter on just see, mida Me kutsume neid sisendeid kui 1524 01:16:12,500 --> 01:16:13,820 me defineerime funktsiooni. 1525 01:16:13,820 --> 01:16:16,950 Ja me kutsume seda argument, kui me tegelikult läbida see funktsioon. 1526 01:16:16,950 --> 01:16:19,600 >> Nii sel juhul on see parameeter nagu me varem öelnud. 1527 01:16:19,600 --> 01:16:24,130 Ja kui me tegelikult seda kasutada seal, kuubik x, siis x on iseenesest 1528 01:16:24,130 --> 01:16:25,910 mida me nimetame argument Lisa funktsioon kuubik. 1529 01:16:25,910 --> 01:16:28,150 >> ROB: Nii parameeter argumendid on - 1530 01:16:28,150 --> 01:16:33,270 on seda vahet, väga segi vaheldumisi. 1531 01:16:33,270 --> 01:16:37,090 Sel hetkel, mulle, see on nagu üks need sõnad, et kui ma seda näen läbi 1532 01:16:37,090 --> 01:16:41,190 metsik, ma ei saa aidata, kuid kohe kas nad kasutavad seda 1533 01:16:41,190 --> 01:16:44,120 kehtiv kontekstis, kuna Erinevus on peen piisavalt, et lihtsalt 1534 01:16:44,120 --> 01:16:45,500 kõik kipub - 1535 01:16:45,500 --> 01:16:48,530 Ma peaaegu alati öelda argument olenemata sellest, mida ma mõtlen. 1536 01:16:48,530 --> 01:16:51,230 1537 01:16:51,230 --> 01:16:54,630 >> JOSEPH: ja funktsioonid on ka kasulik mida me nimetame kõrvaltoimeid. 1538 01:16:54,630 --> 01:16:59,230 Seega funktsioon võib võtta sisendeid ja ta võib ka mingit väljundit. 1539 01:16:59,230 --> 01:17:03,280 Nii et sel juhul, ma olen määratledes alamprogrammi et puudub 1540 01:17:03,280 --> 01:17:03,970 tagastatav väärtus. 1541 01:17:03,970 --> 01:17:07,730 Ja selleks, et täpsustada, et me kasutame mida me nimetame void siin. 1542 01:17:07,730 --> 01:17:10,890 Ja nii kõrvalmõjuks see funktsioon on see, et lihtsalt trükib stuff 1543 01:17:10,890 --> 01:17:11,920 välja saada. 1544 01:17:11,920 --> 01:17:13,840 See ei ole tegelikult võtta sisendit, ja see ei ole 1545 01:17:13,840 --> 01:17:15,360 tegelikult tooda väljundit. 1546 01:17:15,360 --> 01:17:18,230 >> Kuid see võib olla kasulik mõttes kui soovite näiteks silumise 1547 01:17:18,230 --> 01:17:21,530 midagi oma programmi, kui soovite kirjutada väike alamprogrammi et 1548 01:17:21,530 --> 01:17:25,160 prindib, oletame, sisu mälu või midagi. 1549 01:17:25,160 --> 01:17:29,800 Ja nii need kõrvaltoimed on mõnikord kasulik väljaspool konteksti 1550 01:17:29,800 --> 01:17:33,010 lihtsalt meeldib sisendid ja väljundid. 1551 01:17:33,010 --> 01:17:34,260 Kas on küsimusi? 1552 01:17:34,260 --> 01:17:37,270 1553 01:17:37,270 --> 01:17:44,240 >> Ja lõpetama selle turusegmendi, Mida see programm teeb? 1554 01:17:44,240 --> 01:17:47,420 Ma annan teile kutid paar sekundit see läbi lugeda. 1555 01:17:47,420 --> 01:17:52,720 1556 01:17:52,720 --> 01:17:56,880 Kell väga algtasemel, mida me tahame öelda, et ta vahetab x ja y, eks? 1557 01:17:56,880 --> 01:18:00,090 >> Niisiis, kuidas paljud teist tegelikult arvavad see vahetada x ja y? 1558 01:18:00,090 --> 01:18:02,160 Tõsta käsi. 1559 01:18:02,160 --> 01:18:02,760 Mitte keegi. 1560 01:18:02,760 --> 01:18:03,070 OK. 1561 01:18:03,070 --> 01:18:06,720 Kes arvab, et ta teeb ei vaheta x ja y? 1562 01:18:06,720 --> 01:18:09,120 Ja summa, mis oli mitte kogu tuba. 1563 01:18:09,120 --> 01:18:10,440 Nii mõned inimesed ei tea. 1564 01:18:10,440 --> 01:18:10,920 OK. 1565 01:18:10,920 --> 01:18:11,630 See on mõistlik. 1566 01:18:11,630 --> 01:18:16,450 >> Lähme läbi, mis juhtub siis, kui te tegelikult Kõnefunktsioonid esimene 1567 01:18:16,450 --> 01:18:18,320 Et sellele küsimusele vastata. 1568 01:18:18,320 --> 01:18:21,430 Nii et see on see, mida mälu omamoodi välja näeb. 1569 01:18:21,430 --> 01:18:23,860 See on omamoodi nagu lihtsustatud mudel mida mälu välja näeb 1570 01:18:23,860 --> 01:18:24,800 sa jooksed programm. 1571 01:18:24,800 --> 01:18:27,270 Nii et seal on midagi, mida nimetatakse stack alla ja 1572 01:18:27,270 --> 01:18:28,330 midagi, mida nimetatakse hunnik. 1573 01:18:28,330 --> 01:18:30,950 Ja need kasvada poole keset mälu. 1574 01:18:30,950 --> 01:18:33,860 >> Nii et sel juhul, kui helistate funktsiooni, 1575 01:18:33,860 --> 01:18:35,680 saab panna virna. 1576 01:18:35,680 --> 01:18:38,900 Ja siis iganes sisalduv funktsioon jääb see, mida me nimetame seda 1577 01:18:38,900 --> 01:18:40,550 funktsiooni freimi. 1578 01:18:40,550 --> 01:18:44,500 Ja nii, et saada kena visualiseerimine Selle let's - näiteks oli meil 1579 01:18:44,500 --> 01:18:45,960 Programmi peamised varem. 1580 01:18:45,960 --> 01:18:47,820 Ja sees peamine, me kutsusime kuubik. 1581 01:18:47,820 --> 01:18:50,650 Seega peamine kõigepealt minna korstna kujundamisse, sest see on esimene funktsioon 1582 01:18:50,650 --> 01:18:51,640 seda nimetatakse. 1583 01:18:51,640 --> 01:18:55,740 >> Ja siis kui kuubik nimetatakse sees peamine, ta saab panna peal peamised 1584 01:18:55,740 --> 01:18:57,790 sees mälu. 1585 01:18:57,790 --> 01:19:02,090 Niisiis, mida märkad on see, et kuubik on oma parameetrid ja selle 1586 01:19:02,090 --> 01:19:02,950 enda kohalikega. 1587 01:19:02,950 --> 01:19:06,720 Nii et kui te tegelikult läbida midagi Funktsiooni parameetrid, et see 1588 01:19:06,720 --> 01:19:09,910 saab koopiad, mis oli aastal vastu võetud peamistest. 1589 01:19:09,910 --> 01:19:14,140 >> Ja omamoodi seletada seda, olgem kõndida läbi programmi. 1590 01:19:14,140 --> 01:19:16,960 Nii et meil on virnas, see on lihtsalt virna osa. 1591 01:19:16,960 --> 01:19:21,240 Ja mida me teeme, on meie esimene initsialiseerida x ja y on üks ja kaks. 1592 01:19:21,240 --> 01:19:22,400 Nii et meil on need kastikesed. 1593 01:19:22,400 --> 01:19:25,310 Nad istuvad peamine on virnas raami pinu. 1594 01:19:25,310 --> 01:19:26,580 Nad sisaldavad üks kuni kaks. 1595 01:19:26,580 --> 01:19:28,820 >> Nüüd kutsume swap. 1596 01:19:28,820 --> 01:19:33,940 Mis juhtub on see võtame x ja y sisse swap, ja swap loob oma koopiad 1597 01:19:33,940 --> 01:19:36,520 Nende muutujate kasutada sees selle freimi. 1598 01:19:36,520 --> 01:19:39,920 Nüüd seal oleme, mis sisaldab väärtust, mis x oli, ja b, 1599 01:19:39,920 --> 01:19:41,620 mis sisaldab väärtust, mis y oli. 1600 01:19:41,620 --> 01:19:42,670 Niisiis üks, kaks. 1601 01:19:42,670 --> 01:19:47,130 >> Ja sa märkad, et see on eraldi alates x ja y sees peamine. 1602 01:19:47,130 --> 01:19:51,390 Nii et me nüüd luua ajutine muutuja, mis sisaldab. 1603 01:19:51,390 --> 01:19:56,100 Seame võrdne b'ga, nii et see muutuste üks kuni kaks. 1604 01:19:56,100 --> 01:19:59,340 Ja siis seadsime b võrdub temp, mis on üks. 1605 01:19:59,340 --> 01:20:01,640 >> Ja siis nüüd me väljuda Selle funktsiooni. 1606 01:20:01,640 --> 01:20:04,310 1607 01:20:04,310 --> 01:20:07,410 Kui väljuda funktsiooni, freimi saab hüppasid välja pinu. 1608 01:20:07,410 --> 01:20:08,270 Me nimetame seda vajutada. 1609 01:20:08,270 --> 01:20:12,750 Surute freimi peale virna ja sa pop kui ära pinu. 1610 01:20:12,750 --> 01:20:16,080 Ja mis juhtub, on kõik, mis oli, et freimi omamoodi lihtsalt 1611 01:20:16,080 --> 01:20:17,280 läheb põlema. 1612 01:20:17,280 --> 01:20:19,180 Ja nii, et ei ole enam olemas. 1613 01:20:19,180 --> 01:20:20,470 >> Aga mida näeme? 1614 01:20:20,470 --> 01:20:23,690 Me tegelikult ei muutunud väärtused x ja y, mis? 1615 01:20:23,690 --> 01:20:26,530 Nii et need jäid kohalikud peamine. 1616 01:20:26,530 --> 01:20:29,900 Ja lastes asju swap, me tegelikult ei muutunud need väärtused. 1617 01:20:29,900 --> 01:20:31,260 Ja mida me nimetame seda? 1618 01:20:31,260 --> 01:20:33,040 Me nimetame seda möödaminnes väärtusest. 1619 01:20:33,040 --> 01:20:36,860 >> Nii C, kui te kaotate asju funktsioone, siis läheb neile raha ja 1620 01:20:36,860 --> 01:20:40,160 teeb koopia neid funktsiooni kasutada. 1621 01:20:40,160 --> 01:20:43,980 Ja me õppida midagi, mida nimetatakse kulgeb viitega hiljem, kuid see on 1622 01:20:43,980 --> 01:20:45,390 Nii saate seda probleemi lahendada. 1623 01:20:45,390 --> 01:20:47,080 Kuid me ei muretse et alles hiljem. 1624 01:20:47,080 --> 01:20:52,200 >> ROB: Ja tegelikult, et termin, möödaminnes viidates, et C ei ole isegi 1625 01:20:52,200 --> 01:20:54,270 mööduvaid viitamine. 1626 01:20:54,270 --> 01:20:56,760 C eranditult on möödumas väärtus. 1627 01:20:56,760 --> 01:20:59,630 Ükskõik, mida sa teed, sa oled alati kulgeb koopia midagi. 1628 01:20:59,630 --> 01:21:03,395 See on lihtsalt, et nagu ma nagu mainitud et enne näidikumehhanism 1629 01:21:03,395 --> 01:21:07,690 ja et string on tõesti ainult neli baidid osutades kuskil mälus. 1630 01:21:07,690 --> 01:21:11,890 >> Noh, kui mul on see string ja see on mulle, et on koht, kus string - 1631 01:21:11,890 --> 01:21:15,470 Noh, kui mul on see osuti sellele koht mälus, siis ma ei liigu 1632 01:21:15,470 --> 01:21:19,160 koopia, et kursor funktsioon ja et funktsioon ikka teab, kus on 1633 01:21:19,160 --> 01:21:19,780 Mälu on. 1634 01:21:19,780 --> 01:21:22,950 Nii mõlemad viidad suunaga sama koht mällu ja 1635 01:21:22,950 --> 01:21:26,460 see, kuidas me saama muuta asju kaugemale 1636 01:21:26,460 --> 01:21:29,852 praegune freimi. 1637 01:21:29,852 --> 01:21:31,040 >> JOSEPH: Kas sa tahad teha koostamisel? 1638 01:21:31,040 --> 01:21:31,820 >> ROB: Ei, see on 5:30. 1639 01:21:31,820 --> 01:21:32,910 >> JOSEPH: OK. 1640 01:21:32,910 --> 01:21:35,040 See on 05:30. 1641 01:21:35,040 --> 01:21:35,360 OK. 1642 01:21:35,360 --> 01:21:39,280 Nii me katta koostamise vist sisse järgmises osas, või eesel 1643 01:21:39,280 --> 01:21:42,795 müük toob sel hetkel. 1644 01:21:42,795 --> 01:21:43,272 Ja - 1645 01:21:43,272 --> 01:21:44,630 >> ROB: Kas on küsimusi? 1646 01:21:44,630 --> 01:21:46,760 >> JOSEPH: Kas on küsimusi? 1647 01:21:46,760 --> 01:21:47,150 Jah? 1648 01:21:47,150 --> 01:21:52,469 >> SPEAKER 5: Kasutades strings CS50 kõik funktsioone, mida tahame kasutada 1649 01:21:52,469 --> 01:21:53,880 need, mis oleks nagu C funktsioone. 1650 01:21:53,880 --> 01:21:59,050 CS50 ei läinud ja tehtud täiendavaid. 1651 01:21:59,050 --> 01:22:01,850 >> ROB: Õige. 1652 01:22:01,850 --> 01:22:08,155 Kõiki C nagu [kuuldamatu], siis oleks kasutada neid meie keelt. 1653 01:22:08,155 --> 01:22:12,400 >> JOSEPH: Ja viimane asi, mida ma tahan mainida, et meil on stiili juhend 1654 01:22:12,400 --> 01:22:13,130 Selle klassi. 1655 01:22:13,130 --> 01:22:13,360 >> ROB: Oh, jah. 1656 01:22:13,360 --> 01:22:15,270 >> JOSEPH: Nii et kui te olete pärit programmeerimise tausta enne, siis 1657 01:22:15,270 --> 01:22:17,750 võib olla teatud viisil siis, kui olete kirjalikult kood nagu laskmise 1658 01:22:17,750 --> 01:22:20,950 traksid samal liinil või teatava kuidas taandamine 1659 01:22:20,950 --> 01:22:22,240 või pange oma muutujaid. 1660 01:22:22,240 --> 01:22:26,870 Selles klassis tahame järgida konkreetse stiilijuhend lihtsalt sellepärast, 1661 01:22:26,870 --> 01:22:31,100 Noh, kui sa minema ja töötama tööstuse, sa lähed, et oodata 1662 01:22:31,100 --> 01:22:34,780 järgida stiili juhend ettevõte, kus sa lähed. 1663 01:22:34,780 --> 01:22:38,040 >> Nagu näiteks Facebook Arvan on eriline omamoodi nimetades 1664 01:22:38,040 --> 01:22:38,760 konventsioon. 1665 01:22:38,760 --> 01:22:42,570 Ja seal on erinevused kaamel korpuse muutujad ja nagu 1666 01:22:42,570 --> 01:22:44,610 eraldades need alakriipsud. 1667 01:22:44,610 --> 01:22:52,170 Ja ka, ma arvan, et kõige olulisem on, nagu Näiteks taandus, eks? 1668 01:22:52,170 --> 01:22:56,440 >> Me looksulg alustada, kui tingimus on, ja nad 1669 01:22:56,440 --> 01:22:57,730 on järgmisel real. 1670 01:22:57,730 --> 01:23:01,230 Ja me ka panna lokkis traksid isegi kui see on ainult üks rida. 1671 01:23:01,230 --> 01:23:06,100 Ja palju kordi, on võimalusi teha see, kus saate jätta need traksid 1672 01:23:06,100 --> 01:23:08,380 välja, kui see on ainult üks rida alla Kui avalduses. 1673 01:23:08,380 --> 01:23:12,070 Aga selles klassis, tahame järgida konkreetse stiilijuhend lihtsalt nii saad 1674 01:23:12,070 --> 01:23:13,550 harjunud, et selline asi. 1675 01:23:13,550 --> 01:23:16,410 >> ROB: Jah, ja Style 50 läheb jõustamiseks stiilijuhend ja me oleme 1676 01:23:16,410 --> 01:23:18,080 kavatse kasutada Style 50 palgaastmele oma kood. 1677 01:23:18,080 --> 01:23:25,150 Nii et see teeb asjad lihtsamaks meile ja loodetavasti ei peaks tegema asju, mis 1678 01:23:25,150 --> 01:23:30,120 palju hullem sulle antud standardiseeritud stiil ei tohiks olla, et 1679 01:23:30,120 --> 01:23:31,460 ebareaalne. 1680 01:23:31,460 --> 01:23:36,000 >> JOSEPH: Ja lõpuks leida stiili juhendist, minge manual.cs50.net/style. 1681 01:23:36,000 --> 01:23:37,725 Ja jah. 1682 01:23:37,725 --> 01:23:40,575 >> SPEAKER 4: Kas sa jõustada ühtegi märki rea kohta? 1683 01:23:40,575 --> 01:23:42,480 >> ROB: Jah. 1684 01:23:42,480 --> 01:23:45,405 >> JOSEPH: Sorry, kutid. 1685 01:23:45,405 --> 01:23:47,680 >> ROB: See on nagu üks ainsad. 1686 01:23:47,680 --> 01:23:50,420 Sel hetkel, ma olen OK 120. 1687 01:23:50,420 --> 01:23:52,460 Ma olen OK öeldes 120 tähemärki rea kohta. 1688 01:23:52,460 --> 01:23:53,830 Ma saan aru, et oleks mõned piir. 1689 01:23:53,830 --> 01:23:57,130 Ma arvan, et 80 on nii väike, kuid me jõustamiseks. 1690 01:23:57,130 --> 01:24:00,260 >> JOSEPH: Isiklikult ma arvan C, 80 tähemärki on veel OK. 1691 01:24:00,260 --> 01:24:04,160 Kui hakkate saada teiste keelte nagu JavaScript ja PHP, ei 1692 01:24:04,160 --> 01:24:08,860 nii mõistlik lihtsalt piirata see 80 tähemärki. 1693 01:24:08,860 --> 01:24:09,260 OK. 1694 01:24:09,260 --> 01:24:12,780 Noh, see oli super osa. 1695 01:24:12,780 --> 01:24:14,750 Kas keegi tahad kommi? 1696 01:24:14,750 --> 01:24:16,000 >> SPEAKER 4: Jah. 1697 01:24:16,000 --> 01:24:18,667