关于避免 输入几个f 代表全 1 的 就是0xffff.......啥的 看看这个办法可行乎
程序代码:
#include <stdio.h>
//计算cpu字长
int c_get_cpu_lenth()
{
unsigned int a;
int i;
a=~0;
i=1;
while((a>>=1)!=0) ++i;
return i;
}
//计算2^N
unsigned int c_get_half_one()
{
unsigned int t=1;
for(int i=1;i<=c_get_cpu_lenth()/2;i++) t*=2u;
return t-1;
}
int main()
{
long test = 10*61380;
long tl = test & c_get_half_one(); //获取整数的低16位 或者低X位 这里就不用0xffff 了 以避免弄错 可行?
printf("L16=%X\n",tl);
return 0;
}









