109 lines
5.4 KiB
TeX
109 lines
5.4 KiB
TeX
% master: operatoren_und_ausdruecke.tex
|
|
% Operatoren und Ausdrücke v0.2
|
|
% 2011-05-27 (Rx)
|
|
|
|
\section{Operatoren und Ausdrücke}
|
|
%----------------------------------
|
|
|
|
\subsection{Arithmetische Operatoren:}
|
|
%-------------------------------------
|
|
\begin{verbatim}
|
|
Operator Bedeutung Assoziativität Rang Beispiel
|
|
-------- --------- -------------- ---- --------
|
|
+ Addition > 5 a+b
|
|
- Subtraktion > 5 a-b
|
|
* Multiplikation > 4 a*b
|
|
/ Division > 4 a/b
|
|
% Modulo > 4 a%b
|
|
\end{verbatim}
|
|
|
|
\subsection{Vergleichsoperatoren:}
|
|
%---------------------------------
|
|
\begin{verbatim}
|
|
Operator Bedeutung Assoziativität Rang Beispiel
|
|
-------- --------- -------------- ---- --------
|
|
< kleiner als > 7 a<b
|
|
<= kleiner oder gleich > 7 a<=b
|
|
> größer > 7 a>b
|
|
>= größer oder gleich > 7 a>=b
|
|
== gleich > 8 a==b
|
|
!= ungleich > 8 a!=b
|
|
\end{verbatim}
|
|
|
|
\subsection{Logische Operatoren:}
|
|
%--------------------------------
|
|
\begin{verbatim}
|
|
Operator Bedeutung Assoziativität Rang Beispiel
|
|
-------- --------- -------------- ---- --------
|
|
& bitweises AND > 9 a&b
|
|
| bitweises OR > 11 a|b
|
|
^ bitweises XOR > 10 a^b
|
|
<< bitweises Linksschieben > 6 a<<n
|
|
>> bitweises Rechtsschieben > 6 a>>n
|
|
~ Einerkomplement < 2 ~a
|
|
&& logisches AND > 12 a&&b
|
|
|| logisches OR > 13 a||b
|
|
! logische Negation < 2 !a
|
|
\end{verbatim}
|
|
|
|
\subsection{Zuweisungsoperatoren:}
|
|
%---------------------------------
|
|
\begin{verbatim}
|
|
Operator Bedeutung Assoziativität Rang Beispiel
|
|
-------- --------- -------------- ---- --------
|
|
= Zuweisung < 15 a=b
|
|
+= Zuweisung nach Addition < 15 a+=b
|
|
-= Zuweisung nach Subtraktion < 15 a-=b
|
|
*= Zuweisung nach Multiplikation < 15 a*=b
|
|
/= Zuweisung nach Division < 15 a/=b
|
|
%= Zuweisung nach Modulo < 15 a%=b
|
|
<<= Zuweisung nach bitweisem < 15 a<<=b
|
|
Linksschieben
|
|
>>= Zuweisung nach bitweisem < 15 a>>=b
|
|
Rechtsschieben
|
|
&= Zuweisung nach bitweisem AND < 15 a&=b
|
|
|= Zuweisung nach bitweisem OR < 15 a|=b
|
|
^= Zuweisung nach bitweisem XOR < 15 a^=b
|
|
\end{verbatim}
|
|
|
|
\subsection{Post- und Prefix- Operatoren:}
|
|
%-----------------------------------------
|
|
\begin{verbatim}
|
|
Operator Bedeutung Assoziativität Rang Beispiel
|
|
-------- --------- -------------- ---- --------
|
|
++ Inkrement > < 1 2 a++ ++a
|
|
-- Dekrement > < 1 2 a-- --a
|
|
() Funktionsaufruf > 1 sqrt(a)
|
|
[] Arrayelement > 1 feld[a]
|
|
. Feld einer structur oder union > 1 tag.dat
|
|
-> Zeiger auf structur > 1 zeig->ele
|
|
( type ) expl. Typenumwandlung < 2 double(a)
|
|
\end{verbatim}
|
|
|
|
\subsection{Zeigeroperatoren:}
|
|
%-----------------------------
|
|
\begin{verbatim}
|
|
Operator Bedeutung Assoziativität Rang Beispiel
|
|
-------- --------- -------------- ---- --------
|
|
& Adresse von < 2 &a
|
|
* Indirektion < 2 *a
|
|
.* Dereferenzzeiger > 3 tag.*dat
|
|
->* Dereferenzzeiger > 3 tag->dat
|
|
\end{verbatim}
|
|
|
|
\subsection{Diverse Kategorien:}
|
|
%-------------------------------
|
|
\begin{verbatim}
|
|
Operator Bedeutung Assoziativität Rang Beispiel
|
|
-------- --------- -------------- ---- --------
|
|
?: Bedinung < 14 a?b:c
|
|
i = x<y ? 6 : k+1 ; x kleiner y dann 6 sonst k+1
|
|
, Aufzählungsoperator > 16 a,b, ...
|
|
- unäres Minus < 2 -n
|
|
+ unäres Plus < 2 +n
|
|
sizeof(typ) Größe des Types in Byte < 2 sizeof(a)
|
|
new dynam. Objekt erzeugen < 2 b = new float[a]
|
|
delete dynam. Objekt löschen < 2 delete b
|
|
:: Zugiffs-/Bereichsoperator < 2 adr::nam
|
|
\end{verbatim}
|
|
|