C# Bitwise Operator With Ints

后端 未结 3 1713
没有蜡笔的小新
没有蜡笔的小新 2021-01-25 09:00

What does this expression actually mean??

Note - the x and y vars are just sample values.

int x = 3; 
int y = 1; 

if ((x & y) !=0)

相关标签:
3条回答
  • 2021-01-25 09:22

    This checks whether x and y both have at least one common bit set. In the case of your example this would be the true.

    0 讨论(0)
  • 2021-01-25 09:26

    It's comparing the bits in each value. It returns any bits that are set in both numbers.

    In your example:

        3:  0011
        1:  0001
    
    3 & 1:  0001
    
    0 讨论(0)
  • 2021-01-25 09:28
    if ((x & y) != 0)
    

    This would typically be used to determine whether the value x has a specific bit-flag (y) set. The AND operator returns an integer with only those bits set that are set in both operands.

    0 讨论(0)
提交回复
热议问题