Hallo. Willkommen zurück. In
dieser Vorlesung werden wir einige der grundlegenden Operatoren diskutieren, die
von der Programmiersprache c unterstützt werden.
Die Operatoren sind also wieder nur spezielle Symbole für
Funktionen, die Sie ausführen.
Daher werden wir in dieser Vorlesung im Wesentlichen 4 verschiedene
Arten von Operatoren diskutieren.
Die arithmetischen,
logischen, Zuweisungs- und Vergleichsoperatoren.
Und dann werden wir in einer anderen Vorlesung die bitweisen Operatoren
und dann einige andere spezielle Operatoren diskutieren, die nicht wirklich so aussehen, als
wären sie ein Operator, aber sie sind die Größe des Operators und des Casting-Operators.
Ein arithmetischer Operator ist also wahrscheinlich der vernünftigste, mit
dem Sie wahrscheinlich am besten vertraut sind. Es ist eine mathematische
Funktion, nimmt 2 Operanden und berechnet sie.
Es ist ein Infix, also die Operatoren und zwischen den Operanden.
Ein logischer Operator, manchmal auch als Boolescher Operator bezeichnet, ist ein
Operator, der ein Boolesches Ergebnis zurückgibt. Richtiger oder falscher Wert, das ist ein Boolescher Wert.
Es ist also wirklich nur ein bedingter Operator.
Es basiert auf dem booleschen Ergebnis von einem oder mehreren zwei anderen
Ausdrücken, einem oder zwei anderen Ausdrücken.
Ein Zuweisungsoperator setzt nur Variablen gleich Werte.
Es weist der Variablen links den Wert des Ausdrucks rechts zu.
Es ist also ein rechter und ein linker Operand.
Wieder ist es Infix.
Und dann vergleicht ein Vergleichsoperator Variablen miteinander.
Das ist also eine Art vergleichbare Typreihenfolge, kleiner als und größer als.
Aber lassen Sie uns jeden einzelnen von ihnen durchgehen, denn es gibt
viele, viele, viele der verschiedenen Operatoren. C unterstützt ein superreiches Set.
Die ersten sind also diese arithmetischen Operatoren in c.
Dies sind die mathematischen Funktionen. Es gibt also
eine kleine Tabelle, die ich online auf
der Tutorials Points-Website gefunden habe, was sehr schön ist.
Und dies fasst alle unterstützten arithmetischen Operatoren in c zusammen.
Also die grundlegenden, genau wie in Mathe. Hier gibt es nichts wirklich Neues.
Auf der linken Seite der Tabelle befindet sich der Operator, und
in der Mitte befindet sich eine Beschreibung dessen, was er tut, und auf der rechten Seite ein Beispiel.
Also das Pluszeichen, das den Operanden
hinzugefügt wird. Es ist ein Infix. Es liegt zwischen den beiden Operanden.
Sie würden also entweder Variablen hinzufügen,
eine Kombination von Konstanten in eine Variable einfügen oder nur Konstanten.
Und dieses sagen wir, a plus b ist gleich 30.
Der tatsächliche Operator und die Operanden sind jedoch nur ein Pluspunkt. B.
Und dann wäre das das Beispiel.
Minus subtrahiert 2 Operanden, a minus b.
Ein Minus b könnte also tatsächlich gleich einer negativen 10 sein, wenn a
gleich 20 und b gleich 10 ist oder b gleich einer
negativen 10 ist.
Das Sternchen dient zur Multiplikation.
Wieder Infix zwischen
Operanden.
Division ist der Schrägstrich.
Prozent ist Moduloperator. Dies ist der Restoperator.
Wenn Sie also wie ein variabler Prozentsatz a sagen
würden, was wäre das gleich? Wenn b gleich 20 wäre, wäre
a gleich 12,
würde der Moduloperator 8 zurückgeben, da dies der Rest von 20 geteilt durch 12 ist.
Plus plus und minus minus, dies sind spezifische Inkrementierungs- und Dekrementierungsoperatoren.
Sie werden immer noch als arithmetische Operatoren bezeichnet, aber Sie sehen
sie normalerweise nur in Schleifen, wenn Sie Code
wiederholen, aber nicht immer. Ich meine, in diesem Beispiel
hier erhöhen Sie im Grunde eine Variable um 1
oder um einen bestimmten Wert, wenn Sie
etwas anderes tun. Aber wenn Sie ein Plus-Plus machen, was
auch immer ein war, wenn es 5 war, wird es nicht gleich 6 sein.
Und dann gibt es einen Dekrementierungsoperator,
der den ganzzahligen Wert um 1 verringert, also ein Minus-Minus.
Und das Plus-Plus und das Minus-Minus, die Sie beachten sollten, stehen hinter der Variablen.
Dies wird als Postfix bezeichnet.
Wenn sich diese Variable in einem Ausdruck befindet,
wird ihr die zusätzliche Variable erst nach dieser Anweisung zugewiesen.
Wenn es sich um ein
Präfix handelt, wird es zuvor zugewiesen. Lassen Sie uns einige Beispiele
für diese arithmetischen Betriebscodeblöcke durchgehen, damit sie etwas sinnvoller sind.
Also hier sind Codeblöcke, hier ist unsere Hauptroutine.
Damit sind wir inzwischen vertraut. Ich werde nur ein paar Variablen
erstellen und einige Operationen an ihnen ausführen und sie dann ausdrucken.
Und ich werde nur ganze Zahlen erstellen. Und es spielt keine Rolle, ob Sie Floats
erstellen können, um Berechnungen oder Doppelte durchzuführen, aber wir machen es einfach.
Wir werden sagen, a ist gleich 33.
Erstellen Sie eine weitere Variable vom Typ Integer, und wir
werden diese 15 zuweisen. Wir machen also eine Deklaration und eine Zuweisung in einer einzigen Anweisung.
Und dann haben wir nur noch eine Ergebnisvariable.
Und dies wird auf 0 initialisiert, damit wir hier
mit der Durchführung von Berechnungen beginnen können. Wir können c
sagen und Aufgaben erledigen. Wir haben nicht speziell formal über Aufgaben gelernt,
aber wir wissen, was Aufgaben sind. Zuweisungen nehmen Daten und fügen diese
Daten in diese Variable ein. C equals nimmt also alles,
was sich auf der rechten Seite befindet, und fügt das Ergebnis in diese Variable ein.
Wenn wir also a plus b sagen, sieht dies
wieder wie eine normale mathematische Routine aus,
und das ist es auch. Es wäre nur 33 plus 15, und was wäre
der Wert von c, 48. Und so können Sie einfach die Werte ausdrucken.
Sie können einfach sagen, dass c Prozent d ist, wenn Sie unseren
Formatbezeichner verwenden und nur c ausdrucken.
Und dann könnten wir vielleicht einen Zeilenvorschub machen.
Und das würde nur 2 Zahlen hinzufügen. Es ist so einfach. So einfach ist das.
Wir zeigen es nur an. Wenn wir dieses Programm
ausführen, werden 33 plus 15 hinzugefügt.
Wir kompilieren dies neu, speichern es, sagen Build und speichern
dann Run.
Sie werden sehen, wenn ich es nach meinem Virenscanner starte, heißt es, dass c 48 ist.
Sie können also damit herumspielen. Ich meine das ist das sind grundlegend. Also a plus
b, Sie können das Minus machen, Sie können das Sternchen für die Multiplikation machen,
und dann können Sie die Division für
den Schrägstrich und dann das Prozentzeichen machen, das der Modul ist.
Das ist also interessant, weil Sie wissen, dass 33 geteilt durch 15 2 mit einem Rest von 3 wäre. In
diesem Fall wird das Ergebnis also 3 sein. Stellen wir jedoch sicher, dass dies der Fall ist.
Speichern Sie dies und stellen Sie sicher, dass wir unsere Ausführung schließen.
Und wenn wir es ausführen, können wir sehen, dass
c gleich
3 ist, weil das der Rest ist.
Ansonsten ist es ziemlich einfach. Die wichtigsten mit dem Pluszeichen Plus
sind das Verstehen des Präfixes und des Postfixes.
Wenn ich also sagen würde und dies relevanter ist, wenn Sie es tatsächlich in einer einzigen Anweisung tun, printf.
Nehmen wir also an, ich drucke ein Plus-Plus
aus. Das, was gedruckt werden soll, ist 34, weil Sie ein
Plus um 1 erhöhen und
es dann ausdrucken werden. Aber du wirst es in der einzelnen Anweisung tun,
du wirst es in derselben Zeile tun, weil es danach ist.
Tatsächlich wird hier nur
33 angezeigt.
Es wird a erst in der nächsten Codezeile inkrementieren.
Wenn wir dies ausführen,
werden Sie sehen, dass es nur 33 druckt.
Das ist der Unterschied zwischen einem Plus plus einem.
Wenn Sie ein Plus plus a machen, was dasselbe ist, das Sie um
eins erhöhen werden, besteht der Unterschied darin, dass Sie es um 1 erhöhen und
dann, bevor die Anweisung ausgeführt wird. Hier werden wir also
feststellen, dass
wir nur ein paar
Warnungen haben, keine Fehler. Und wenn wir es ausführen, sehen Sie jetzt, dass die Antwort 34 ist,
da sie tatsächlich erhöht wird, bevor die Anweisung ausgeführt wird. Und das ist wichtig
zu wissen zwischen plus plus Variablenname und Variablenname plus plus.
Das wird nur als Präfix und Postfix bezeichnet.
Das gleiche würde für das Minus-Minus passieren.
Denken Sie also an diese für Ihre
Unary.
Dies sind auch unäre Operatoren, da sie nur einen Operanden haben.
Die anderen sind binäre Operatoren, da sich zwischen den
Operanden ein Operator befindet.
Aber verstehe das Minus Minus gegen das Plus Plus.
Und dann verstehen Sie auch, ob Sie es vor der Variablen nach der Variablen platzieren,
wenn es tatsächlich inkrementiert oder dekrementiert wird.
Und wieder ist alles, was es ist, wenn
es nach der Variablen ist, es genau dort inkrementiert
oder dekrementiert, bevor es die Codezeile ausführt. Wenn es um vor der Variablen
steht, wird die Codezeile ausgeführt, und nachdem die Anweisung ausgeführt wurde, wird sie
entweder inkrementiert oder dekrementiert.
Aber spielen Sie damit herum, öffnen Sie ein Fenster,
machen Sie eine Reihe anderer arithmetischer Ausdrücke und sehen Sie, wie das alles funktioniert.
Lassen Sie uns nun über einige der anderen Arten von Operatoren sprechen.
Die nächste Gruppe von Operatoren wird als logische Operatoren bezeichnet.
Und wir haben definiert, was dies bedeutet, dass es sich im
Grunde genommen um bedingte Typoperatoren handelt. Sie geben boolesche Ergebnisse, wahre oder
falsche Werte zurück.
Die Symbole, die logische Operatoren darstellen, sind also das kaufmännische Und-kaufmännische Und.
Die 2 parallelen Balken und das Ausrufezeichen.
Das kaufmännische Und kaufmännisches Und wird als logisch und Operator bezeichnet.
Es ist auch ein Infix-Operator, der zwei Operanden benötigt, einen
links und einen seitlich. Wenn jeder Operand
nicht 0 ist, wird die Bedingung grundsätzlich wahr.
Und so bedeutet Nicht-0 1, was wahr bedeutet. Wenn also a wahr ist und b
wahr ist, dann wäre die Antwort
wahr.
Wenn a falsch und b wahr
ist, ist die Antwort falsch. Wenn a falsch und b falsch ist, ist die
Antwort falsch. Also noch einmal, wir werden einige Beispiele dafür machen.
Und dann sind parallele Balken die Logik oder der Operator. Auch dies sollte Ihrer Matheklasse ähnlich sein, damit ich
nicht zu viel Zeit damit verbringen möchte. Wenn jedoch einer der beiden Operanden
nicht 0
ist, ist einer der beiden wahr, dann ist er wahr. Wenn also a wahr und b falsch ist, ist es wahr.
Und dies sind Ausdrücke, die Werte zurückgeben.
Wenn also a wahr und b falsch ist, ist die Rückkehr wahr.
Und dann der logische Nicht-Operator, der das Ausrufezeichen ist, kehrt dies nur
den logischen Zustand seines Operanden um.
Wenn die Bedingung also wahr ist, wird sie false zurückgeben.
Wenn Sie also nicht a sagen, ist das Ausrufezeichen und a wahr a falsch.
Wenn Sie das Nicht außerhalb von Klammern setzen, wird das, was auch immer a und
b ausgewertet haben, jetzt das Gegenteil bedeuten.
Schauen wir uns also noch einmal einige Beispiele und Codeblöcke an.
Hier sind kalte Blöcke. Und wieder werde ich ein paar Variablen erstellen, um logische Operatoren zu demonstrieren.
Wieder werde ich nur einige ganze Zahlen erstellen, von
denen wir sagen, dass a gleich 12 und dann b gleich 20 ist.
Und was besser wäre, ist, dass wir
eine erstellen, weil ich keine Bedingungen verwenden möchte, also erstellen
wir einfach einen Unterstrich-Bool, und wir werden das zuweisen, ich werde
sagen, dass dies Ergebnisse sein
werden, und wir
werden es zunächst tun das nichts zuordnen.
Und dann drucken wir einfach einige Daten aus.
Wir wollen also sehen, welche Werte
diese Ausdrücke zurückgeben, wenn wir die logischen Operatoren verwenden.
Also werde ich hier Prozent d
ausdrucken, was eine ganze Zahl ist. Denken Sie daran, dass boolesche Ausdrücke nur
ganze Zahlen sind.
Boolesche Variablen sind ganze Zahlen. Wenn der Boolesche Wert 1 ist, bedeutet dies,
dass er wahr ist.
Wenn es 0 ist, ist es falsch. Alles andere normalerweise 1, es ist wahr.
Also werde ich nur das Ergebnis ausdrucken.
Und dann werde ich ihm einige Daten zuweisen. Wenn ich also sage, dass
die Ergebnisse gleich a und b sind, macht
das keinen Sinn, da es sich um Zahlen handelt.
Initialisieren wir also a gleich true und
verwenden Sie erneut Boolesche Werte.
Und hier werden wir sagen, dass
dies wahr ist und dass dies wahr ist.
Und wenn wir das kaufmännische
Und verwenden, heißt das, dass a und b beide wahr sein müssen, damit die Rückkehr wahr ist.
Die Ergebnisse sollten also 1 ausdrucken, da 1
für wahr steht. Lassen Sie uns
dies erstellen
und sicherstellen, dass wir den
richtigen Namensraum verwenden müssen. Wir werden also nur 1 für wahr und
1 darstellen, weil wir im Moment
nicht das richtige Include machen, also ist das keine große Sache. Jetzt laufen wir also, es sollte true melden,
1 und es tut 1.
Wenn ich nun eines davon in nicht nicht wahr ändere, wenn ich 0
sage, dann ist das Ergebnis falsch, weil
a und b beide wahr sein müssen, damit das Ergebnis wahr ist.
Wenn ich dies erstelle und es ausführe, werden Sie
sehen, dass das Ergebnis 0 ist, weil es
falsch ist.
Wenn ich also a oder b auf 0 ändere,
was falsch bedeutet, wäre das Ergebnis falsch, da sowohl a als auch b wahr sein müssen.
Wenn ich nun einen parallelen Balken sage, der oder
a oder b ist, muss nur einer von ihnen wahr sein, damit die Ergebnisse wahr sind.
In diesem Fall sollten die Ergebnisse also 1 sein.
Also lasst uns das bauen und ausführen.
Und jetzt haben wir einen Wert von 1.
Also muss nur einer von ihnen wahr sein. Wenn ich sie jetzt
beide falsch mache
und dies viel zutreffender ist, wenn wir darüber sprechen, ob Aussagen und
Bedingungen und Entscheidungen getroffen werden, aber ich demonstriere hier die boolesche Logik.
Jetzt sind beide falsch. Das sollte
also 0 zurückgeben, was falsch
ist und 0, also ziemlich ordentlich. Und dann ist das letzte nur das Nicht-Symbol, das
Ausrufezeichen, das nur das Gegenteil bewirkt.
Wenn ich also nicht a sage,
wenn a gleich 0 ist, wird a jetzt gleich
1 sein oder das Ergebnis wird und das Ergebnis wird gleich
1 sein, was es ist.
Das sind also die 3 logischen Operatoren. Auch hier werden sie in der Regel in Entscheidungsaussagen verwendet.
Lassen Sie uns nun fortfahren und über eine andere Gruppe von Operatoren sprechen.
Hier sind nun die Zuweisungsoperatoren. Wir kennen zumindest den einfachen Zuweisungsoperator, der
das gleiche Symbol ist. Das gleiche Symbol weist Daten zu,
und das ist ziemlich einfach. C ist gleich a plus b, c ist das Ergebnis von a plus b.
Jetzt gibt es diese zusammengesetzten
Operatortypen, bei denen Sie Plus-Gleich oder Minus-Gleich oder Stern-Gleich ausführen können.
Plus gleich ist, wo Sie hinzufügen und der Zuweisungsoperator.
Es fügt also den rechten Operanden zum linken Operanden hinzu und weist dann
die Ergebnisse dem linken Operanden zu.
Man könnte also sagen, dass c plus gleich a ist, und das ist dasselbe wie zu sagen, dass c gleich c plus a ist.
Minus entspricht genau der gleichen Sache, außer dass Sie subtrahieren. Sie subtrahieren und weisen dann zu.
Sie subtrahieren also den rechten Operanden vom linken Operanden und weisen dann die Daten zu.
Wenn Sie also sagen, dass c minus gleich a ist, ist es wirklich c gleich c minus a.
Es ist eine Kurzschreibweise, diese Plus-Gleichen und Minus-Gleichen.
Sie können die Dinge etwas schneller schreiben, da
Sie zwei Operationen im
Wesentlichen in einer einzigen Anweisung ausführen.
Und dann multipliziert man dasselbe, Stern ist gleich, multipliziert und weist zu.
Also ist c Stern gleich a äquivalent zu c gleich c mal a.
Das ist ziemlich einfach, denke ich.
Die anderen
Zuweisungsoperatoren sind ähnlich, außer dass Sie Division verwenden. Division gleich ist also Teilen und dann unterschreiben.
Prozent ist, den Modul zu machen und dann das Ergebnis zuzuweisen.
Das ist also ziemlich einfach.
Und dann haben wir noch einige andere, über die wir in einem anderen Vortrag ausführlicher sprechen werden.
Ich werde sie hier also nicht ansprechen, weil sie wirklich völlig anders sind.
Sie werden als bitweise Operatoren bezeichnet, was links
bleibt, und ich sage hier nur, dass Sie sie für
die bitweisen Operatoren, über die wir
sprechen werden, auch in einzelnen Anweisungen zuweisen können.
Wenn Sie also verschieben, eine Links- und
Rechtsverschiebung ausführen und zuweisen, können Sie nur weniger als weniger als gleich und mehr als jedes größere als gleich schreiben.
Und andererseits beziehen sich das kaufmännische Und, die Karotte und
der Barren darauf, Dinge auf Bits zu tun.
Wir werden darauf zurückkommen, aber sie sind Teil der Zuweisungsoperatoren.
Der Zuweisungsoperator ist also ziemlich einfach: Er weist Daten zu. Wenn Sie
dann tatsächlich Ausdrücke ausführen möchten, ein paar Ausdrücke,
und dann zuweisen, führen Sie die kombinierten aus.
Die Vergleichsoperatoren sind Vergleichsoperatoren. Sie vergleichen 2 Werte.
Das ist also wichtig, gleich gleich. Wir werden den Wert von 2 Variablen vergleichen.
Und wenn sie gleich sind, wird true zurückgegeben, da ein boolescher Ausdruck,
true oder false oder ein boolescher Wert zurückgegeben wird.
Ausrufezeichen gleich ist die Überprüfung, ob die Werte 2 Operanden gleich sind oder nicht.
Also ist a nicht gleich b ist, wie Sie das lesen wollen.
Wenn a wahr und b wahr
ist, wird dies falsch zurückgeben, weil sie gleich sind.
A müsste also falsch
sein oder b müsste wahr sein oder umgekehrt, und das würde wahr zurückgeben. Das Symbol größer als prüft, ob a größer als
b ist oder nicht.
Weniger als das Symbol, a ist kleiner als b. Größer als gleich, a ist größer oder
gleich und kleiner als gleich.
Also nochmal, das ist alles grundlegendes Mathe-Zeug.
Ich werde keine Beispiele in der IDE durchgehen, da dies ziemlich einfach ist.
Der Vergleichsoperator ist genau wie in der Mathematik größer als gleich und so weiter.
Hoffentlich haben wir die Grundoperatoren Arithmetik,
Logik, Zuweisung und Relationalität gut im Griff.
Wird ziemlich oft verwendet, daher müssen Sie sie verstehen. Hoffentlich ist es nicht zu
schwierig oder verwirrend.
Sie werden viel davon in
if-Aussagen und Entscheidungsaussagen verwenden, daher werden wir eine Menge weiterer Beispiele dazu bereitstellen. Vielen Dank.