C/C++ Term in Bedingung

darktrym

Fahnenträger
Kann mir mal jemand folgendes Verhalten erklären:
Code:
#include <stdio.h>

int main() {
unsigned int a=126, b=127;
unsigned char c=126, d=127;


	if(a-b < 0) {
		printf("1. true\n");
	}

	if(c-d < 0) {
		printf("2. true\n");
	}

}
Ausgabe:
 
Das ganze nennt sich Integer Promotion Rules und war bereits teil von ANSI-C. Bei diversen 8-Bit Compilern kann man das abschalten.
 
Zurück
Oben