Addition?
-
hallo hab ein kleines Programm geschrieben, hat aber leider einen fehler
#include <stdio.h>
int main()
{
short x, y, z ;
printf ("x = ") ;
scanf ("%d", &x) ;
printf ("y = ") ;
scanf ("%d", &y) ;
z=x+y ;
printf ("z = %d\n", z) ;
}bei der ausführung ist z immer nur so groß wie y. warum?
Danke
-
Th_der_1 schrieb:
bei der ausführung ist z immer nur so groß wie y. warum?
Weil %d für int ist. Für short int nimm besser %hd.
-
Könnte auch am Puffer liegen: immer nach scanf() löschen:
http://www.c-plusplus.net/forum/viewtopic-var-t-is-39349.html
-
wxSkip schrieb:
Könnte auch am Puffer liegen:
Schwerlich.
-
mngbd schrieb:
wxSkip schrieb:
Könnte auch am Puffer liegen:
Schwerlich.
Ich weiß die "Symptome" nicht mehr, aber ich habe ohne Puffer leeren schon mal Probleme bekommen.