Я думал, что ^ сделал это.Я ожидал:
10^0=1 10^1=10 10^2=100
Что я получаю
10^0=10 10^1=11 10^2=8
Фактический код
int value = 10 ^ exp;
с заменой exp на 0, 1 и 2оператор ^ делает?
Math.Pow (x, y), чтобы поднять x до степени y. Вы делали XOR. операторы C #
Вы хотите сделать:
Math.Pow(10, exp);
Это на самом деле производит double, хотя вам нужно будет бросить его, если вы действительно хотите int.
double
int
В c # ^ - логический оператор XOR .
Как уже говорили другие, вам нужно использовать Math.pow(x, y), чтобы сделать x^y в C #.Оператор ^ на самом деле является логическим оператором XOR для битов двух чисел.Более подробную информацию о логическом XOR можно найти здесь: http://msdn.microsoft.com/en-us/library/zkacc7k1.aspx
Math.pow(x, y)
x^y
Дело в том, что ^ эквивалентно XOR, поэтому 10 ^ 0 = 10, потому что
^
XOR
1010 XOR 1010 XOR 0000 = 0010 = 1010 1000
Вам необходимо использовать Math.Pow метод.
PS = 10 ^ 2 фактически возвращает 8 ...
^ является оператором XOR.
http://en.wikipedia.org/wiki/Xor
Если вы хотите поднять число до степени, используйте
Math.Pow(num, exp);
В C # оператор ^ является логическим оператором XOR.
http://msdn.microsoft.com/en-us/library/6a71f45d.aspx
Math.Power(10,exp) works like charm...
Для этого нет оператора.Используйте Math.Pow.
Math.Pow
Существует полный список всех операторов C # со связанной документацией на каждом.