你说的"数据"是什么类型?
--------------------------
//把 "10001"中取第3位:可以用10001 "与"上00100 再右移2位得到
int a=17;//10001
int b=4;//00100
int c=a&b//c就是你要取的位了//把 "10001"中的第3位置成1:可以用10001 "或"上00100 int a=17;//10001
int a=17;//10001
int b=4;//00100
int c=a|b//10101

解决方案 »

  1.   

    你说的"数据"是什么类型?
    --------------------------
    //把 "10001"中取第3位:可以用10001 "与"上00100 再右移2位得到
    int a=17;//10001
    int b=4;//00100
    int c=(a&b)>>2//c就是你要取的位了//把 "10001"中的第3位置成1:可以用10001 "或"上00100 int a=17;//10001
    int a=17;//10001
    int b=4;//00100
    int c=a|b//10101
      

  2.   

    用~ 符号,按位取反。
      &       按位与
      |       按位或
      <<      左移 
      >>      右移
      ^       按位异或
      

  3.   

    c#有类是bit的数据类型没有?应为我使用的算法中涉及到对一个位的单独操作