[Powered by Google Translate] Vorrangregeln ist, wie wir die Frage zu beantworten, was sollte Operation, die wir als erstes tun?
Ob Lösen von mathematischen Gleichungen oder Parsing Zeilen Computercode,
es gibt strenge Regeln der Rangfolge, die wir einhalten
so dass alle Computer und die Leute können das gleiche Ergebnis.
>> First off, um die wichtigste Regel erinnern, vor allem in bug testing,
ist, dass wir immer von den innersten Klammern nach außen zu arbeiten.
Mit zusätzlichen Klammern kann eine hilfreiche Debugging Taktik sein,
aber es ist nicht ratsam, Einstreu Ihren Code mit unnötigen Klammern.
Nehmen Sie sich Zeit, um grundlegende Operatorvorrang Regeln zu lernen.
>> Die zweite Regel ist, dass, wenn die Betreiber gleich Prioritätsachse dient haben,
Sie einfach von links nach rechts zu lösen.
Beim Umgang mit einfacher Mathematik beginnen wir mit Klammern,
dann Multiplikation und Division, und schließlich tun, Addition und Subtraktion.
Multiplikation und Division haben die gleiche Priorität,
weil sie im Wesentlichen die gleiche Operation durchführen.
Nach allen Abteilungen einfach Multiplikation mit dem Kehrwert eines Werts.
Ähnlich wird Subtraktion einfaches Hinzufügen eines negativen Wert.
>> Lassen Sie uns ein Beispiel.
Nach der Rangfolge, werden wir mit den Klammern zu starten. Neun minus 1.
Das wird uns 8. Dann können wir weiter zum Division und Multiplikation.
Wir von links nach rechts zu lösen. So 10 geteilt durch 2 ist 5.
Wir haben 5 mal 8 hier, und das wird uns 40.
Dann sind wir auf die nächste Rangfolge bewegen.
Also sind wir mit 3 plus 40 minus 1 übrig.
Lösen wieder nur links nach rechts,
weil es die gleiche Priorität zwischen der Addition und Subtraktion.
Wir können sagen, 3 plus 40 ist 43, minus 1 ist 42. Das ist unsere Antwort.
>> Es gibt 2 Arten von Dekrement und Inkrement-Operatoren;
Das Präfix Form, und das Suffix Form.
Das Suffix Form i + +, wird häufig in for-Schleifen verwendet werden,
was bedeutet, dass der aktuelle Wert in dem Ausdruck verwendet wird, und es wird dann inkrementiert.
So Wert wird nur anders sein beim nächsten Mal die Variable verwendet wird.
Auf der anderen Seite bedeutet die Vorsilbe Inkrement oder Dekrement, dass der aktuelle Wert
inkrementiert oder dekrementiert wird zuerst, und dann wird in dem Ausdruck verwendet.
>> Nehmen wir ein Beispiel mit der Zahl x.
Wir richten es gleich 5 ist.
Wenn wir das Suffix-Operator auf sie und sagen, x + +, x auf dieser Linie noch 5.
Wenn wir es ausdrucken, würden wir erhalten den Wert 5.
Aber für die Zukunft x1 Tat gleich 6.
So hier auf dieser Linie x gleich 6, und wenn wir es ausgedruckt würden wir den Wert 6.
Wenn wir nun den Präfix-Operator verwendet, + + x, x wird zuerst erhöht und dann wird der Wert verwendet wird.
So ist es gleich 7 auf dieser Linie.
Inkrementieren Kurs 6 bis 7, und wenn wir es ausdrucken, würden wir erhalten den Wert 7.
>> Der letzte Nuance in Vorrangregeln, dass wir auf Angebote mit Zeigernotation aussehen.
Die Dereferenzierungsoperator, Stern, hat Vorrang vor grundlegende mathematische Operatoren,
aber nicht über dem Suffix incement und Dekrement-Operatoren.
Dies führt uns zu unserem letzten Beispiel.
Nehmen wir die Zahl x und legen Sie es gleich 7.
Wir werden auch einen Zeiger y und setzen sie gleich an die Adresse von x.
So dass, wenn wir dereference y sollten wir den Wert 7 zu bekommen.
Jetzt in dieser Codezeile, haben wir eine etwas unklare Situation.
Sind wir Dereferenzierung y zuerst, und dann Inkrementieren den Wert 7?
Oder sind wir Inkrementieren des Zeigers und dann Dereferenzierung es?
In der Tat, denn das Suffix-Operator hat Vorrang
Dereferenzierungsoperator, wir versuchen, um den Zeiger y erhöhen,
was würden Sie den Mauszeiger nach Größe des int bytes bewegen.
Essentially geben uns eine Adresse in irgendeiner ganz anderen Punkt in Erinnerung,
und dann sind wir Dereferenzierung es.
Also das ist sehr bedeutungslose Linie.
Wenn wir tatsächlich gesucht, um den Wert von 7 zu inkrementieren,
müssten wir die Dereferenzierungsoperator mit y in Klammern gesetzt.
Dann könnten wir erhöhen es.
Während wir also würde nicht Inkrementieren des Wertes x mit der zweiten bis zur letzten Zeile des Codes,
in der letzten Zeile des Codes würden wir infact dereference y
, um den Wert x zu erhalten und erhöhen, dass.
Wir würden mit dem Wert x gleich 8 verbleiben.
>> Hier ist eine kurze Zusammenfassung der Vorrangregeln, dass wir darüber gesprochen.
Wir werden mit den innersten Klammern beginnen und nach außen.
Dann haben wir auf suffix Operatoren wie i + + oder i bewegen -.
Dann Dereferenzierung und Adresse von Betreibern wie Stern x oder kaufmännisches x,
und die Präfix-Operatoren wie + + i oder - i.
Schließlich haben wir die einfachen mathematischen Operationen wie Multiplikation, Division, Modulo.
Dann Addition, Subtraktion.
Das ist Vorrangregeln. Ich bin Jordan Jozwiak, und dies ist CS50.
Wir werden dereferenzieren und verwenden Sie die Adresse und - wie wollen Sie Satz, dass?
Ich bin fertig. Okay.