我不知道这是什么意思(x ^ y)?在c ++中

时间:2017-07-01 12:10:09

标签: c++

这个函数用于什么?并且它不适用于电源功能。

    #include<iostream>

    using namespace std;

    int main(){

    int x,y;

    cout<<(x^y)<<endl;/* this is the unkown (X^Y)*/

    return 0;

    }

3 个答案:

答案 0 :(得分:3)

现在^运算符是按位XOR。以6和12为例

二进制中的

6是:110 二进制12是:1100

您可以将xor视为:&#34; 第一个或第二个但不是两个&#34;。这是什么意思?我用xor

的真值表向你解释
A     B     A^B
0     0      0
0     1      1
1     0      1
1     1      0

您可以看到唯一的1-bits是设置了A或B(但不是两者)的地方。

回到第一个例子:

A    1100 => 12
B    0110 => 6
A^B  1010 => 10

答案 1 :(得分:2)

这是异或。如果您想了解更多相关信息,请参阅此处https://en.wikipedia.org/wiki/Exclusive_or

答案 2 :(得分:2)

c ++中的幂函数是

#include <math.h>
#include <iostream>
int main()
{
    int x, y;
    std::cout << "Give numbers " << std::endl;
    std::cout << "x = ";
    std::cin >> x;
    std::cout << "y = ";
    std::cin >> y;
    std::cout << "Result = " << pow(x, y) << std::endl;
    return 0;

}

您的版本是XOR(逻辑运算),用于例如嵌入式系统等。