Integer-Typen, die kleiner als int sind, werden heraufgestuft, wenn eine Operation ausgeführt wird. Wenn alle Werte des ursprünglichen Typs als int dargestellt werden können, wird der Wert des kleineren Typs in an int konvertiert; Andernfalls wird es in einen unsigned int konvertiert.
Integer-Werbeaktionen erfordern die Förderung jeder Variablen (c und i) zur int-Größe.
short i = 20;
char c = 97;
//The two int values are added and the sum is truncated to fit into the char type.
char a = c + i;
printf("%d, %d, %d %d\n", sizeof(i), sizeof(c), sizeof(c + i),sizeof(a));
2, 1, 4 1
Ganzzahlige Werbung? – nouney
(c + i) wird zuerst hinzugefügt und die sizeof wird für die Resultierende berechnet .. und das Ergebnis ist eine ganze Zahl .. so ist die Größe 4 .. –
Nitpick: 'sizeof' ist keine Funktion, es ist ein Operator. – milleniumbug