[Powered by Google Translate] Precendence, hogy hogyan tudjuk a kérdésre, milyen műveletet tegyünk először?
Akár megoldása matematikai egyenleteket és elemzési sornyi számítógépes kód,
vannak szigorú szabályok elsőbbséget amelyhez betartására
hogy a számítógép és az ember ugyanazt az eredményt kapjuk.
>> Először is, a legfontosabb szabály, hogy emlékezzen, különösen a bug vizsgálat,
az, hogy mi mindig működik a legbelső zárójelekben kifelé.
A extra zárójelben lehet hasznos hibakereső taktika,
de ez nem jó gyakorlat, hogy alom meg a kódot szükségtelen zárójelben.
Szánj időt, hogy megtanulják az alapvető operátor precedencia szabályokat.
>> A második, az általános szabály az, hogy ha a gazdasági szereplők egyenlő priorty,
egyszerűen megoldani balról jobbra.
Kezelése során egyszerű matematikai kezdjük zárójelben
majd tegye szorzás és osztás, és végül nem összeadás és a kivonás.
Szorzás és osztás van ugyanaz az elsőbbség,
mert lényegében végez az ugyanazon művelet.
Miután az összes körzet egyszerűen megszorozzuk az inverz értéket.
Hasonlóképpen, a kivonás egyszerűen hozzá egy negatív értéket.
>> Csináljunk egy példát.
Követően a sorrendet, akkor kezdjük a zárójelben. Kilenc mínusz 1.
Ez ad nekünk 8. Akkor tudunk lépni a megosztottság és a szaporodást.
Fogjuk megoldani balról jobbra. Azaz 10 osztva 2-5 lehet.
Jelenleg 5 alkalommal 8 van, és ez ad nekünk 40.
Aztán megyünk tovább a következő sorrendet.
Szóval marad a 3 plusz 40 mínusz 1.
Ismét csak a megoldási balról jobbra,
mert ott azonos prioritást közötti összeadás és kivonás.
Azt lehet mondani, 3 plus 40-43, mínusz az 1-42. Ez a válasz.
>> Vannak 2 típusú csökkentő és a növedék szereplők;
Az előtag formában, és az utótag űrlapot.
Az utótag forma, i + +, gyakran használják a hurok,
ami azt jelenti, hogy az aktuális értéket használják a kifejezést, és majd ezt követően növekszik.
Így érték csak akkor lesz más a következő alkalommal, amikor a változót használjuk.
Másrészről, az előtag növelése vagy csökkentése azt jelenti, hogy az aktuális értéket
növekszik vagy csökkentjük az első, és azután nem használnak fel a kifejezést.
>> Nézzünk egy példát az egész x.
Majd állítsd egyenlő 5-re.
Ha használjuk az utótag operátor rajta és azt mondja x + +, x ezen a vonalon még mindig 5.
Ha volt, hogy nyomtassa ki kapnánk 5 az értéke.
De jövőre x1 valójában = 6.
Tehát itt ezen a vonalon x egyenlő 6, és ha kinyomtatta kapnánk az érték 6.
Ha most használt az előtag operátor, + + x, x, növekszik az első, majd az értéket használja.
Tehát maximálisan 7 ezen a vonalon.
Inkrementálás persze 6-7, és ha volt, hogy nyomtassa ki kapnánk az érték 7.
>> Az utolsó árnyalatot a precendence fogunk nézni foglalkozik mutató jelöléssel.
A dereference operátor, star, elsőbbséget élvez az alap matematikai szereplők,
de nem az utótagot incement és csökkentő operátorok.
Ez elvezet minket a végső példa.
Vegyük az egész, x és állítsa egyenlő 7-re.
Majd azt is, hogy a mutató y, és állítsa megegyezik a címét x.
Tehát amikor dereference y kéne az érték 7.
Most, ebben a sorban a kód, hogy van egy kétértelmű helyzetet.
Vagyunk dereferencing y első, majd növelésével az érték 7?
Vagy mi növelésével a mutatót, majd dereferencing ez?
Tény, hogy azért, mert az utótag növelő operátor elsőbbséget élvez
A dereference üzemeltető Igyekszünk növelni a mutató y,
ami mozgassa a mutatót méret szerinti int bájt.
Lényegében ad nekünk egy címet bizonyos teljesen más pont a memóriában,
aztán mi dereferencing azt.
Szóval ez nagyon értelmetlen vonal.
Ha tulajdonképpen volna növelni a értéke 7,
mi lett volna tenni a dereference üzemeltető y zárójelben.
Akkor is megnöveljük.
Tehát miközben nem lenne növelésével x értéke a második az utolsó sort,
az utolsó sort, mi lenne infact dereference y
hogy az x érték, és növelni azt.
Mi maradna az x érték egyenlő 8.
>> Itt egy gyors bedugni a precendence szabályok, hogy már beszéltünk.
Kezdjük a legbelső zárójelekben és a munka kifelé.
Aztán lépni utótag operátorok, mint a + + i vagy i -.
Aztán dereference és címe szereplők, mint a csillag x vagy x jelet,
és prefix operátorok, mint a + + i vagy - i.
Végül mi az egyszerű matematikai műveletek, mint szorzás, osztás, modulo.
Aztán az összeadást, kivonást.
Ez precendence. Én Jordan Jozwiak, és ez CS50.
Majd dereference és használja a cím és a - hogyan kifejezést?
Kész vagyok. Oké.