1 00:00:07,780 --> 00:00:10,540 [Powered by Google Translate] Precendence je, kako smo odgovorili na vprašanje, kaj operacija naj naredimo najprej? 2 00:00:10,540 --> 00:00:14,250 Ali reševanju matematičnih enačb ali razčlenjevanju zasnovo računalniške kode, 3 00:00:14,250 --> 00:00:17,230 obstajajo stroga pravila o prednosti, ki jih držijo 4 00:00:17,230 --> 00:00:20,270 tako da se lahko vsi računalniki in ljudje dobili enak rezultat. 5 00:00:20,270 --> 00:00:24,710 >> Prvič, je najbolj pomembno pravilo, da se spomnite, predvsem pri testiranju napaki, 6 00:00:24,710 --> 00:00:27,680 je, da smo vedno delajo iz najglobljih oklepaju tujino. 7 00:00:27,680 --> 00:00:31,120 Uporaba dodatnih oklepajev lahko v pomoč taktika odpravljanje napak, 8 00:00:31,120 --> 00:00:34,640 vendar pa to ni dobra praksa, da legla svojo kodo, s nepotrebnih oklepajih. 9 00:00:34,640 --> 00:00:38,220 Vzemite si čas, da se naučijo osnovnih operaterja izpiąemo pravila. 10 00:00:38,220 --> 00:00:42,450 >> Drugi Splošno pravilo je, da ko so operaterji enako priorty, 11 00:00:42,450 --> 00:00:44,820 preprosto rešiti z leve proti desni. 12 00:00:44,820 --> 00:00:47,690 Ko se ukvarjajo s preprostimi matematičnimi začnemo z oklepaji, 13 00:00:47,690 --> 00:00:52,110 naredite množenje in deljenje, in na koncu ne seštevanje in odštevanje. 14 00:00:52,110 --> 00:00:54,400 Množenje in deljenje enako prednost, 15 00:00:54,400 --> 00:00:56,870 ker so v bistvu opravljajo enako operacijo. 16 00:00:56,870 --> 00:01:00,880 Po vseh dejavnosti je enostavno pomnožimo s obratne vrednosti. 17 00:01:00,880 --> 00:01:04,300 Podobno, odštevanje se preprosto dodate negativno vrednost. 18 00:01:04,300 --> 00:01:06,150 >> Naredimo zgled. 19 00:01:14,470 --> 00:01:18,300 Po prednostnem vrstnem redu, bomo začeli z oklepaji. Devet minus 1. 20 00:01:18,300 --> 00:01:23,410 To nam bo dalo 8. Potem lahko gremo na delitev in razmnoževanje. 21 00:01:23,410 --> 00:01:27,450 Mi bomo rešili od leve proti desni. Torej 10 deljeno z 2 je 5. 22 00:01:27,450 --> 00:01:31,290 Imamo 5 krat 8 tu, da nam bo dal 40. 23 00:01:33,230 --> 00:01:35,410 Potem pa gremo na naslednjo vrstnem redu. 24 00:01:35,410 --> 00:01:38,730 Zato smo zapustili z 3 plus 40 minus 1. 25 00:01:42,400 --> 00:01:43,700 Spet samo reševanje leve proti desni, 26 00:01:43,700 --> 00:01:47,650 zato, ker je enako prednost med dodajanjem in odvzemanjem. 27 00:01:47,650 --> 00:01:51,510 Lahko rečemo, 3 plus 40 je 43, minus 1 je 42. To je naš odgovor. 28 00:01:53,920 --> 00:01:56,730 >> Obstajata 2 vrsti subjektov vzroka in prirastek; 29 00:01:56,730 --> 00:02:01,000 Predpona oblika in pripona obliki. 30 00:02:01,000 --> 00:02:06,130 Pripona oblika, i + +, se pogosto uporablja v for zanke, 31 00:02:06,130 --> 00:02:10,500 kar pomeni, da je trenutna vrednost v izrazu, nato pa se poveča. 32 00:02:10,500 --> 00:02:14,240 Tako bo vrednost le drugačen naslednjič, ko bo spremenljivka se uporablja. 33 00:02:14,240 --> 00:02:17,910 Po drugi strani pa je predpona prirastek ali padanje pomeni, da je sedanja vrednost 34 00:02:17,910 --> 00:02:22,760 se poveča ali decremented prvi, nato pa je v izrazu. 35 00:02:22,760 --> 00:02:25,310 >> Vzemimo za primer s x celo. 36 00:02:25,310 --> 00:02:27,220 Postavili bomo to enako 5. 37 00:02:27,220 --> 00:02:36,500 Če uporabljamo končnico operaterja na njej in rekel x + +, x na tej progi še 5. 38 00:02:36,500 --> 00:02:39,230 Če bi ga natisnite bi dobili vrednost 5. 39 00:02:39,230 --> 00:02:42,540 Ampak gre naprej x1 dejstva enaka 6. 40 00:02:42,540 --> 00:02:48,770 Torej, tukaj na tej spletni x je enaka 6, in če jo natisne bi dobili vrednost 6. 41 00:02:48,770 --> 00:02:57,380 Zdaj, če smo uporabili predpono operaterja, + + x, x se najprej poveča, nato pa se uporablja vrednost. 42 00:02:57,380 --> 00:03:00,110 Torej je enako 7 na tej liniji. 43 00:03:00,110 --> 00:03:04,750 Povečevanje seveda 6-7, in če bi ga natisnite bi dobili vrednost 7. 44 00:03:04,750 --> 00:03:09,160 >> Zadnji odtenek v precendence, da bomo pogledali ukvarja z notacijo kazalca. 45 00:03:09,160 --> 00:03:15,050 The dereference operater, zvezda, ima prednost pred osnovnimi matematičnimi subjektov, 46 00:03:15,050 --> 00:03:18,550 vendar ne več kot pripono incement in znižanje subjekti. 47 00:03:18,550 --> 00:03:20,690 To nas pripelje do našega končnega primer. 48 00:03:20,690 --> 00:03:24,500 Oglejmo celo število x in so ga v višini 7. 49 00:03:24,500 --> 00:03:30,540 Prav tako bomo narediti kazalec y in ga postavi na naslovu x. 50 00:03:30,540 --> 00:03:34,920 Tako da, ko bi morali dereference y dobimo vrednost 7. 51 00:03:34,920 --> 00:03:39,380 Zdaj v tej vrstici kode, imamo nekoliko nejasen položaj. 52 00:03:39,380 --> 00:03:44,310 Ali smo Dereferenciranje y 1. in nato povečevanje vrednosti 7? 53 00:03:44,310 --> 00:03:48,300 Ali smo povečevanje kazalca in ga nato Dereferenciranje? 54 00:03:48,300 --> 00:03:52,800 V bistvu, saj je pripona prirastek ima operater prednost pred 55 00:03:52,800 --> 00:03:55,370 dereference the operator, bomo poskušali prirastek kazalca y, 56 00:03:55,370 --> 00:03:59,170 ki bi premaknite kazalec po velikosti int bajtov. 57 00:03:59,170 --> 00:04:03,040 V bistvu nam daje naslov v nekaj povsem drugega zornega v spominu, 58 00:04:03,040 --> 00:04:05,010 in potem ga bomo Dereferenciranje. 59 00:04:05,010 --> 00:04:07,350 Torej, to je zelo nesmiselno line. 60 00:04:07,350 --> 00:04:10,250 Če smo dejansko želel prirastek vrednosti 7, 61 00:04:10,250 --> 00:04:14,260 bomo morali postaviti dereference operaterju y v oklepajih. 62 00:04:14,260 --> 00:04:17,290 Potem bi jo lahko prirastek. 63 00:04:17,290 --> 00:04:21,089 Torej, medtem ko ne bi povečevanje vrednosti x pri predzadnji vrstici kode, 64 00:04:21,089 --> 00:04:23,380 v zadnji vrstici kode bi nam Dejstvo dereference y 65 00:04:23,380 --> 00:04:26,380 da se je vrednost x in prirastek to. 66 00:04:26,380 --> 00:04:29,540 Mi bi zapustili z vrednostjo x 8 enaka. 67 00:04:31,580 --> 00:04:33,580 >> Tukaj je hitro Rekapitulacija o precendence pravil, ki smo govorili o tem. 68 00:04:33,580 --> 00:04:37,210 Začeli bomo z najglobljih oklepajih in deluje navzven. 69 00:04:37,210 --> 00:04:41,210 Potem pa gremo na Suffix subjektom, kot sem jaz + + ali -. 70 00:04:41,210 --> 00:04:45,920 Potem dereference in naslov subjektov, kot zvezda x ali znak '& x, 71 00:04:45,920 --> 00:04:50,260 predpona in operaterji, kot + + i ali - i. 72 00:04:50,260 --> 00:04:54,920 Na koncu bomo preproste matematične operacije, kot so množenja, deljenja, modulo. 73 00:04:54,920 --> 00:04:58,400 Potem seštevanje, odštevanje. 74 00:04:58,400 --> 00:05:02,170 To je precendence. Jaz sem Jordan Jozwiak, in to je CS50. 75 00:05:04,160 --> 00:05:10,480 Mi bomo dereference in uporabljajo naslov in - kako vam stavek tega? 76 00:05:12,380 --> 00:05:13,190 Jaz sem naredil. Ok.