关于大端小端和移位的一些测试

//VC6.0 下编译通过
#include<stdio.h>
void main()
{
 //测试大端小端,vc用的是小端(高位在后)
 int x=0x31323334;
 int *y=&x;
 char *pt;
 pt=(char *)y;
 printf("%d,  %x/n",x,x);
 for(int i=0;i<4;i++)
 {
  printf("%c/n",*(pt+i));
 }

 //测试左移右移,发现vc不是真正的物理移位,而是逻辑移位
 x=0x80; //左移
 printf("%d,  %x/n",x,x);
 x <<= 1;
 printf("%d,  %x/n",x,x);

 x=0x01000000;//右移
 printf("%10d,%10x/n",x,x);
 x >>= 1;
 printf("%10d,%10x/n",x,x); 

}

你可能感兴趣的:(测试)