这一句char a='a',b='b';这里为什么要定义为char 型
main(){
char a='a',b='b';
int p,c,d,Oxff,Oxff00;
p=a;
p=(p<<8)|b;
d=p&Oxff;
c=(p&Oxff00)>>8;
printf("a=%d\nb=%d\nc=%d\nd=%d\n",a,b,c,d);
getch();
return 0;
}
这一句char a='a',b='b';这里为什么要定义为char 型,我觉得应该定义为int 型,这样才便于后面的计算,但是结果却是定义为int型的和定义为char型的结果一样,为什么?