Code:
#include<stdio.h>
#include<conio.h>
#define STYLE1 char
void main()
{
typedef char STYLE2;
STYLE1 x;
STYLE2 y;
clrscr();
x=255;
y=255;
printf("%d %d",x,y);
}
Pls explain how?
|
Newbie Member
|
|
| 18Feb2008,21:43 | #1 |
|
I used Turbo C compiler
Code:
#include<stdio.h>
#include<conio.h>
#define STYLE1 char
void main()
{
typedef char STYLE2;
STYLE1 x;
STYLE2 y;
clrscr();
x=255;
y=255;
printf("%d %d",x,y);
}
Pls explain how? |
|
Contributor
|
|
| 19Feb2008,11:09 | #2 |
|
because char is treated as signed char...
the range for signed char is -128 to 127 ... now think on these terms 1) number is stored as its binary equivalent... 2) when a number is signed it most significant bit is always high i.e. 1 3) a negative number is represented as it's 2's compliment i believe when u think on these terms..u will easily understand the o/p. |