[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. Мы будем разыменования и использовать адреса и - как вам фраза? Я сделал. Хорошо.