Gast
2005-09-13, 20:31:53
Hallo ich bin Anfänger in C und habe jetzt leider ein Problem das ich leider gar nicht verstehe.
Der Quelltext:
#include <stdio.h>
int main(void){
short z, s;
printf("z = ");
scanf("%d", &z);
printf("s = ");
scanf("%d", &s);
printf("z = %d | s = %d\n", z, s);
return 0;
}
Wenn mans dann kompiliert hat bekommt man folgende Ausgabe:
z = 3
s = 3
z = 0 | s = 3
Warum ist z = 0 mit den Datentypen char und short?
Mit int ist z = 3
P.S. Falls es wichtig ist: Ich habs mit gcc 4.0.1 kompiliert
Der Quelltext:
#include <stdio.h>
int main(void){
short z, s;
printf("z = ");
scanf("%d", &z);
printf("s = ");
scanf("%d", &s);
printf("z = %d | s = %d\n", z, s);
return 0;
}
Wenn mans dann kompiliert hat bekommt man folgende Ausgabe:
z = 3
s = 3
z = 0 | s = 3
Warum ist z = 0 mit den Datentypen char und short?
Mit int ist z = 3
P.S. Falls es wichtig ist: Ich habs mit gcc 4.0.1 kompiliert