When I enter 'A', below code outputs(my editor Visual Studio Express 2012) ,
A 65 65 65
but this example given in Deitel C How to Program output is different such as:
A -13247 -858993599 -858993599
Why?
#include <stdio.h>
union dummy {
char c;
short s;
int i;
long l;
} a;
int main(void) {
printf("Enter a character\n");
scanf("%c", &a.c);
printf("%c printed as a char is %c.\n", a.c, a.c);
printf("%c printed as a short is %hd.\n", a.c, a.s);
printf("%c printed as an int is %d.\n", a.c, a.i);
printf("%c printed as a long is %ld.\n", a.c, a.l);
getch();
return 0;
}