diff options
| author | caminsha <c.96marco@hotmail.com> | 2020-01-31 01:47:49 +0100 | 
|---|---|---|
| committer | caminsha <c.96marco@hotmail.com> | 2020-01-31 01:47:49 +0100 | 
| commit | a53f355f9ffa02e4b87f1769bb48b2cb2b40ea2f (patch) | |
| tree | f26c251ca75fb5e20f15627e2c43e30ad908eddd /de-de | |
| parent | dcf628e2866634bee9e9e04ecbb336885adaf7e4 (diff) | |
added translation for type casting
Diffstat (limited to 'de-de')
| -rw-r--r-- | de-de/c-de.html.markdown | 27 | 
1 files changed, 27 insertions, 0 deletions
| diff --git a/de-de/c-de.html.markdown b/de-de/c-de.html.markdown index b027cdbe..1b97faaf 100644 --- a/de-de/c-de.html.markdown +++ b/de-de/c-de.html.markdown @@ -372,4 +372,31 @@ int main (int argc, char** argv){  error:      printf("Ein Fehler ist aufgetreten bei i = %d & j ? %d\n", i, j); +    //////////////////////////////////////////////// +    // Typenumwandlung +    //////////////////////////////////////////////// + +    // Jeder Wert in C hat einen bestimmten Typen, aber es ist möglich, ein  +    // Wert in einen anderen Typ umzuwandeln (mit einigen Einschränkungen). + +    int x_hex = 0x01; // Es ist möglich, Variablen Hexadezimalwerten zuzuweisen. + +    // Bei der Umwandlung zwischen Typen wird versucht, den numerischen Wert +    // beizubehalten. +    printf("%d\n", x_hex); // => 1 +    printf("%d\n", (short) x_hex); // => 1 +    printf("%d\n", (char) x_hex); // => 1 + +    // Typen werden überlaufen (overflow) ohne jegliche Warnung +    printf("%d\n", (unsigned char) 257); // => 1 (Max char = 255 wenn char 8 Bit lang ist) + +    // Um den maximalen Wert eines `char`, `signed char` oder `unsigned char`  +    // herauszufinden, können die Makros `CHAR_MAX`, `SCHAR_MAX` und `UCHAR_MAX` +    // aus der Header-Datei `<limits.h>` verwendet werden. + +    // Integer-Typen können zu Gleitkommazahlen und umgekehrt umgewandelt werden. +    printf("%f\n", (double) 100); // %f formattiert immer zu einem `double`... +    printf("%f\n", (flaot) 100); // ... auch mit einem `float` +    printf("%d\n", (char)100.0);  +  } | 
