Atari Logo
Atari Computer

Hauptseite -
Welches System? -
Hardware -
Software -
Emulatoren -
Internet
MausNet
Programmieren
Verweise
Über

C

Home Variable und Standarddatentypen Konstanten Beispiele für Deklarationen

6.6 Typkonvertierung

C kann inmplizit von einem "kleineren" in einen "größeren" Datentyp umwandeln. Wenn z.B. einer int Variable eine char Variable zugewiesen wird, kann C automatisch char zu int konvertieren, da der Wertebereich von char in den Wertebereich von int paßt. Auch bei Verknüpfungen in Anweisungen kann diese Konvertierung automatisch erfolgen. Werden z.B. ein int und ein char addiert und einem int zugewiesen, so wird der char automatisch zu einem int konvertiert.

In anderen Fällen, also bei einer Typumwandlung zu einem kleineren Datentyp, muß dem Compiler dies explizit angegeben werden. Dazu dient der cast. Der gewünschte Datentyp wird in Klammern der Variable oder Konstante oder auch einem gesamten Ausdruck vorangestellt.

...
int i = 10;
char j;

j = (char)i;

Die Variable i wird zu einem char gecastet, um sie j zuweisen zu können. Hierbei muß der Anwender selbst darauf achten, daß der Ergebnisdatentyp auch den kompletten Wert aufnehmen kann. Wird der Wertebereich des Ziels überschritten, kann ein overflow zu negativen Zahlen auftreten, wenn das Ziel vorzeichenbehaftet ist. Achtung: bei dem Datentyp char ist nicht definiert, ob er vorzeichenbehaftet oder vorzeichenlos ist!

Schreiben sie ruhig ein paar kleine Testprogramme nachdem Sie auch das Kapitel über Anweisungen durchgelesen haben, um sich das Verhalten zu verdeutlichen. Benutzen sie auch Werte, die den Wertebereich des Ziels überschreiten.


Home Variable und Standarddatentypen Konstanten Beispiele für Deklarationen


Best viewed with any browser English version not yet available.

Änderungen und Irrtümer vorbehalten. Letzte Änderung:
14 September 2001.
Home - Mail an den Webmaster - Impressum