#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<string.h>
int main()
{
unsigned short x,n;
unsigned short mask;
scanf("%hu%hu",&x,&n);
mask = (~0>> n);
printf("%x",mask);
return 0;
}
为什么程序里的 ~0>>n, 不能成功移位,求解答,谢谢!
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<string.h>
int main()
{
unsigned short x,n;
unsigned short mask;
scanf("%hu%hu",&x,&n);
mask = (~0>> n);
printf("%x",mask);
return 0;
}
为什么程序里的 ~0>>n, 不能成功移位,求解答,谢谢!
mask = (unsigned short)(~0) >> n;