implizites Casting (2/4)

Zuerst ein paar einfache Beispiele:

void main()
{
  int i = 3, j = 4, k;
  double x=2.5, y=-3.14159, z;
  unsigned int a = 5, b = 3, c;

  k = i + j;    //  3 + 4 = 7 ==> k = 7;
  z = x + y;    //  2.5 + -3.14159 = -0.61459  ==> z = -0.61459
  k = i + x;    //  3.0 + 2.5 = 5.5 ==> k = 5
  z = i + x;    //  3.0 + 2.5 = 5.5 ==> z = 5.5
  k = -2 + 0.5; //  -2.0 + 0.5 = -1.5 ==> k = -1
 
  c = i + j;    //  3 + 4 = 7 ==> c = 7
  c = i - j;    //  3 - 4 = -1 ==> c = 65534 (je nach Bitgröße eines int)  
  k = i * j;    //  3 * 4 = 12 ==> k = 12;
                //  völlig analog .... (s. u.)
}

Die Rundung von Fließkommazahlen beim impliziten Casting erfolgt unabhängig von den Nachkommastellen immer in Richtung der 0.