[Powered by Google Translate] Precendence, як мы адкажам на пытанне, якія аперацыі мы павінны зрабіць у першую чаргу? Калі рашэння матэматычных раўнанняў або разбору радкоў праграмнага кода, існуюць строгія правілы прыярытэту, да якога мы прытрымліваемся так што ўсе кампутары, і людзі могуць атрымаць той жа вынік. Па-першае, самае важнае правіла для запамінання, асабліва ў памылцы тэставання, з'яўляецца тое, што мы заўсёды працуем з унутранага дужкі вонкі. Выкарыстанне дадатковых круглых дужках можа быць карысным тактыка адладкі, але гэта не вельмі добрая практыка, каб смецце код з непатрэбнымі дужках. Выдаткуйце час, каб вывучыць асноўныя правілы прыярытэту аператараў. Другое агульнае правіла абвяшчае, што, калі аператары маюць роўныя priorty, Вы проста вырашыць злева направа. Калі маеш справу з простай матэматыцы мы пачынаем з дужках, затым выканаеце множанне і дзяленне, і, нарэшце, рабіць складанне і адніманне. Множанне і дзяленне маюць аднолькавы прыярытэт, таму што яны, па сутнасці выконваючы тую ж працу. Бо падзел проста множанне на адваротны значэнне. Сапраўды гэтак жа, адніманне проста дадаўшы адмоўнае значэнне. Давайце зробім прыклад. Пасля парадку чарговасці, мы пачнем з дужках. Дзевяць мінус 1. Гэта дасць нам 8. Тады мы можам перайсці да дзялення і размнажэння. Мы вырашым злева направа. Так 10 падзяліць на 2 роўна 5. У нас ёсць 5 разоў 8 тут, і гэта дасць нам 40. Затым мы пяройдзем да наступнага парадку старшынства. Такім чынам, мы пакінулі з 3 плюс 40 мінус 1. Зноў жа толькі рашэння злева направа, таму што ёсць роўны прыярытэт паміж складаннем і адніманнем. Мы можам сказаць 3 плюс 40 на 43, мінус 1, 42. Гэта наш адказ. Ёсць 2 тыпу декремент і інкрэмент; Прэфікс форме, і суфікс форме. Суфікс форме, я + +, шырока выкарыстоўваецца ў цыклы, Гэта азначае, што бягучае значэнне выкарыстоўваецца ў выразе, а затым яна павялічваецца. Такім чынам, кошт толькі будзе розным у наступны раз пераменная выкарыстоўваецца. З іншага боку, прырост або змяншэнне прэфікса азначае, што бягучае значэнне павялічваецца ці памяншаецца, а затым яна выкарыстоўваецца ў выразе. Давайце возьмем прыклад з цэлымі х. Мы усталюем яго роўным 5. Калі мы выкарыстоўваем суфікс аператара на ім і кажуць х + +, х на гэтай лініі яшчэ 5. Калі б мы маглі раздрукаваць яго, што мы атрымаем значэнне 5. Але ісці наперад факт x1 роўная 6. Так што прама тут, на гэтай лініі х роўная 6, і калі мы друкавалі яго мы атрымаем значэнне 6. Цяпер, калі мы выкарыстоўвалі прэфікс аператара, + + х, х павялічваецца, а затым выкарыстоўваецца значэнне. Так што роўна 7 на гэтай лініі. Інкрэмент, вядома, ад 6 да 7, і калі б мы павінны былі раздрукаваць яго, што мы атрымаем значэнне 7. Апошні нюанс у precendence, што мы будзем глядзець на справу з паказальнікам наймення. Аператар разнаймення, зорка, мае прыярытэт над асноўнымі аператарамі матэматыцы, , Але не больш за incement суфіксаў і декремента. Гэта прыводзіць нас да нашай канчатковай прыклад. Давайце возьмем лік х і ўсталяваць яго роўным 7. Мы таксама зрабіць паказальнік у і ўсталяваць яго роўным па адрасе х. Так што, калі мы разнаймення у мы павінны атрымаць значэнне 7. Цяпер у гэтай радку кода, у нас ёсць некалькі двухсэнсоўнай сітуацыі. Няўжо мы разнаймення ў першага, а затым павялічваючы значэнне 7? Ці мы прырашчэнне паказальніка, а затым разнаймення гэта? На самай справе, так як аператар суфікс прырост мае прыярытэт над разыменовать аператар, мы спрабуем павялічыць паказальнік у, які б перамясціць паказальнік па памеры Int байт. Па сутнасці дае нам адрас у некаторых зусім іншы кропкі ў памяці, а потым мы разнаймення яго. Так што гэта вельмі бессэнсоўныя лініі. Калі мы на самай справе хацелі павялічыць значэнне 7, мы павінны былі б паставіць аператар разнаймення з у ў дужках. Тады мы маглі б павялічыць яго. Такім чынам, хоць мы б не павялічваючы значэнне х з другога да апошняга радка кода, У апошняй радку кода мы б фактычна ў разнаймення каб атрымаць значэнне х і павялічваць гэта. Мы не застанецца значэнне х роўна 8. Вось кароткае рэзюмэ precendence правілы, пра якія мы гаварылі. Пачнем з самых ўнутраных дужак і працаваць вонкі. Затым мы пяройдзем да суфікс аператары, як я + +, ці я -. Тады разнаймення і адрас аператара, як зоркі х ці амперсанда х, і прэфікс аператары, такія як + + ці я - я. Нарэшце, мы робім простыя матэматычныя аперацыі, як множанне, дзяленне па модулю. Тады складанне, адніманне. Вось precendence. Я Іарданіі Jozwiak, і гэта CS50. Мы будзем разнаймення і выкарыстоўваць адрасы і - як вам фраза? Я зрабіў. Добра.