Home
Add Document
Sign In
Create An Account
Grundlagen der Informatik 2. Operatoren
Grundlagen der Informatik 2. Operatoren Ausdrücke und Operatoren Referenzen Typumwandlungen Vorrangregeln Kommentare Grundlagen der Informatik (Alex...
Author:
Elsa Knopp
0 downloads
0 Views
91KB Size
Report
Download PDF
Recommend Documents
Grundlagen der Informatik 2
Grundlagen der Informatik 2
2.Vorlesung Grundlagen der Informatik
Grundlagen der Informatik 2. Typen
Grundlagen der Informatik Theoretische Informatik
Grundlagen der Theoretischen Informatik
Grundlagen der Technischen Informatik
Theoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik
Grundlagen der Informatik
Grundlagen der Informatik
Grundlagen der Informatik
Grundlagen der Theoretischen Informatik
Erweiterungscurriculum Grundlagen der Informatik
Grundlagen der Theoretischen Informatik
Theoretische Grundlagen der Informatik
Theoretische Grundlagen der Informatik
Grundlagen der Theoretischen Informatik
Grundlagen der Informatik
Grundlagen der Informatik
Grundlagen der Technischen Informatik
Grundlagen der Informatik
Grundlagen der Informatik II
Grundlagen der Informatik III
Grundlagen der Informatik 2. Operatoren
Ausdrücke und Operatoren Referenzen Typumwandlungen Vorrangregeln Kommentare
Grundlagen der Informatik (Alex Rempel)
1
Grundlagen der Informatik Ausdrücke und Operatoren ●
Ausdruck (z.B. "x = 34 + y;") ●
●
Folge von Operatoren und Operanden
Operatoren ●
Arithmetische Operatoren
●
Vergleichsoperatoren
●
Logische Operatoren
●
Bitoperatoren
●
Sonstige Grundlagen der Informatik (Alex Rempel)
2
Grundlagen der Informatik Ausdrücke und Operatoren ●
Arithmetische Operatoren ●
Erzeugen aus 2 (binary) oder 1 (unary) numerischen Operanden 1 numerischen Wert
●
Addition
+
binary
3 + 8 = 11
(Überschreitung Wertebereich)
●
Subtraktion
-
binary
3 – 8 = -5
(Überschreitung Wertebereich)
●
Multiplikation
*
binary
3 * 8 = 24
(Überschreitung Wertebereich)
●
Division
/
binary
8/3=2
(Nulldivision Laufzeitfehler)
●
Modulo (Rest)
%
binary
3%8=3
(Überschreitung Wertebereich)
●
Negation
-
unary
-(3) = -3
(Überschreitung Wertebereich)
●
Inkrement
++
unary
++3 = 4
(Überschreitung Wertebereich)
●
Dekrement
--
unary
--3 = 2
(Überschreitung Wertebereich)
Grundlagen der Informatik (Alex Rempel)
3
Grundlagen der Informatik Ausdrücke und Operatoren ●
Arithmetische Operatoren ●
Inkrement/Dekrement Richtung –
'++x'
erhöhen dann zuweisen
–
'x++'
zuweisen dann erhöhen
–
Beispiele: ●
'x = 3; y = ++x;'
x(4) y(4)
●
'x = 3; y = x++;'
x(4) y(3)
●
'x = 3; y = --x;'
x(2) y(2)
●
'x = 3; y = x--;'
x(2) y(3)
Grundlagen der Informatik (Alex Rempel)
4
Grundlagen der Informatik Ausdrücke und Operatoren ●
Vergleichsoperatoren ●
Erzeugen aus 2 (binary) Operanden 1 Wahrheitswert
●
Gleich
==
3.0 == 3
●
Ungleich
!=
3.1 != 3
●
Größer
>
3.1 > 3
●
GrößerGleich >=
3 >= 3
●
Kleiner
3 < 3.1
●
KleinerGleich 1 = 0010
Shift links/rechts um 1 ist dasselbe wie mal/durch die Basis 2 Grundlagen der Informatik (Alex Rempel)
7
Grundlagen der Informatik Ausdrücke und Operatoren ●
Sonstige Operatoren ●
Zuweisungsoperator '=' –
●
Verwechslungsgefahr mit '=='
sizeof Operator (unary) –
Ergibt die Anzahl erforderlicher Bytes für den Operanden ●
sizeof(14) == sizeof(int) == 4
●
sizeof('A') == 1
●
sizeof("A") == 2
●
sizeof(dNumber) = 8
...in Wirklichkeit liegt [A][\0] im Speicher...
"double dNumber;" muss zuvor deklariert worden sein sizeof(3.4f) = 4 –
●
●
Weitere Operatoren (werden in späteren Kapiteln ergründet) –
Referenzierung (*) und Dereferenzierung (->) Grundlagen der Informatik (Alex Rempel)
8
Grundlagen der Informatik Referenzen ●
Referenzen ●
Verweis bzw. Alias auf ein bestehendes Objekt
●
Erstellung: –
●
Typ & Name
Muss immer bei Deklaration initialisiert werden!
Beispiel: ●
int iStudents = 4;
●
int& iStudentsRef = iStudents;
–
'iStudentsRef' ist nun ein Alias für 'iStudents' und kann genauso verwendet werden
–
Beide Variablen verweisen auf denselben Speicher Grundlagen der Informatik (Alex Rempel)
9
Grundlagen der Informatik Typumwandlung ●
Typumwandlung ●
Bei unterschiedlichen Operandtypen in einem Ausdruck wird der Typ implizit umgewandelt: –
'char' wird zu 'int'
–
logische Resultate werden zu 0 (false) und 1 (true)
–
arithmetisch: schwächerer Typ wird zum stärkeren Typ ●
–
z.B. wird 'int' zu 'float' und 'float' wird zu 'double'
bei Zuweisungen wird der R Typ zu L Typ gewandelt ●
d.h. bei 'a = b' wird der Typ von b zu dem Typ von a Grundlagen der Informatik (Alex Rempel)
10
Grundlagen der Informatik Typumwandlung ●
Explizite Typumwandlung: cast Operator '(type)' ●
Explizite Typumwandlung sollte immer genutzt werden, um anderen Entwicklern zu zeigen, dass man diese Typumwandlung nicht einfach übersehen hat –
●
Genauigkeitsverlust ●
Bei Umwandlung aus größerem Wertebereich in den kleineren
●
Runden und Clamping (Abschneiden) sind implementationsabhängig –
●
z.B. 'int iNumber = (int)4.32' oder alternativ 'int iNumber = int(4.32)'
z.B. ergibt 'int iNumber = 2.5 / 2;' das Resultat 1
Vorsicht beim Umwandeln zwischen 'signed' and 'unsigned' ●
'(long)-1 < (unsigned long)1' liefert beispielsweise 'false' Grundlagen der Informatik (Alex Rempel)
11
Grundlagen der Informatik Vorrangregeln ●
Vorrangregeln (höhere Position bedeutet höhere Priorität) ●
●
::
danach
. -> [] () sizeof
! + -(unär) ++ -- ~ &(Adressoperator) *(Defererenzierung) new new[] delete delete[]
●
.* ->*
danach
*/%
●
+-
danach
>
●
< > =
danach
== !=
●
&(bitweise UND)
danach
^
●
|
danach
&&
●
||
danach
?:
●
Zuweisungen, wie z.B. = +=
danach
,
Grundlagen der Informatik (Alex Rempel)
12
Grundlagen der Informatik Vorrangregeln ●
Vorrangregeln ●
Gleiche Priorität: Auswertung von links nach rechts –
●
Ausnahme: unäre Operatoren von rechts nach links
Klammern werden berücksichtigt –
Empfehlung: zur besseren Lesbarkeit und Robustheit bei komplexen Ausdrücken lieber Klammern nutzen
Grundlagen der Informatik (Alex Rempel)
13
Grundlagen der Informatik Kommentare ●
Kommentare ●
Einzeilig: alles nach '//'
●
Mehrzeilig: alles zwischen '/*' und '*/'
●
Kommentare werden beim Kompilieren ignoriert
●
Empfehlungen: –
nie das offensichtliche kommentieren, stattdessen verständlicheren Code schreiben
–
immer alles kommentieren, was einem anderen Entwickler die Konzepte erklärt ●
auch wenn diese einem selbst ganz klar erscheinen Grundlagen der Informatik (Alex Rempel)
14
Suggest Documents
Grundlagen der Informatik 2
Read more
Grundlagen der Informatik 2
Read more
2.Vorlesung Grundlagen der Informatik
Read more
Grundlagen der Informatik 2. Typen
Read more
Grundlagen der Informatik Theoretische Informatik
Read more
Grundlagen der Theoretischen Informatik
Read more
Grundlagen der Technischen Informatik
Read more
Theoretische Grundlagen der Informatik
Read more
Theoretische Grundlagen der Informatik
Read more
Grundlagen der Informatik
Read more
Grundlagen der Informatik
Read more
Grundlagen der Informatik
Read more
Grundlagen der Theoretischen Informatik
Read more
Erweiterungscurriculum Grundlagen der Informatik
Read more
Grundlagen der Theoretischen Informatik
Read more
Theoretische Grundlagen der Informatik
Read more
Theoretische Grundlagen der Informatik
Read more
Grundlagen der Theoretischen Informatik
Read more
Grundlagen der Informatik
Read more
Grundlagen der Informatik
Read more
Grundlagen der Technischen Informatik
Read more
Grundlagen der Informatik
Read more
Grundlagen der Informatik II
Read more
Grundlagen der Informatik III
Read more
×
Report "Grundlagen der Informatik 2. Operatoren"
Your name
Email
Reason
-Select Reason-
Pornographic
Defamatory
Illegal/Unlawful
Spam
Other Terms Of Service Violation
File a copyright complaint
Description
×
Sign In
Email
Password
Remember me
Forgot password?
Sign In
Login with Google
Login with Facebook