真是令人沮丧。给出与where is(date<<7)>>12
不同的结果的可能原因是什么?我应该补充一点,后者按我的意图正常工作,但第一个不是。有什么区别?我看不到。y>>12
y
date<<7
#include<stdio.h>
int main()
{
unsigned short date=5225,x,y,z;
x=(date<<7)>>12;
printf("Month is %hu\n",x);
y=date<<7;
z=y>>12;
printf("Month is %hu\n",z);
}
输出
Month is 163
Month is 3