判斷整形a 是的2^n , 交換那個整數的值

 24         /**
 25  * 當一個數是2的n次方的時候,必然會出現嗎,二級制:100000, 
 26  * -1 二進制是: 11111,  則兩個數去 & ,必然爲 0,
 27  *  8 的二進制 1000, 7 的二進制是: 111,
 28  *  去 & 爲 0 
 29  */     
 30         int a = x&(x-1);// =0 是,!=0 不是

 31         printf("is2n is a:%d\n",a); spa


----------------------------------------交換順序------------------------------------------------------------------ io

             int a=10;
  7         int b = 100;
  8 
  9         a^=b;
 10         b^=a;
 11         a^=b; 二進制

-----------------------低位在前仍是高位在前的判斷-------------------------------------------- nio

1 #include<stdio.h>
  2 
  3 union{
  4         int i;
  5         char c[sizeof(int)];
  6 }X;
  7 
  8 
  9 int main()
 10 {
 11         X.i = 1;
 12         if(X.c[0] ==1){
 13 
 14                         printf("低位到高位\n");
 15                 }else{
 16                         printf("高位到低位\n");
 17 
 18                 }
 19 
 20 }
di

相關文章
相關標籤/搜索