gpt4 book ai didi

c# - 出于某种原因不能将 XOR 运算符与两个字符一起使用,有人知道为什么吗?

转载 作者:行者123 更新时间:2023-11-30 13:27:26 24 4
gpt4 key购买 nike

是否有一些正式标准不允许在 C# 中对两个字符使用 ^ 或 XOR 函数?

    public char[] XORinput(char[] input, char SN)
{
int InputSize = input.Length;
//initialize an output array
char[] output = new char[InputSize];

for (int i = 0; i < InputSize; i++)
{

output[i] = input[i] ^ SN;

}


return output;

}

无论出于何种原因,这段代码都会给我这个错误,错误 1400 无法将类型“int”隐式转换为“char”。存在显式转换(是否缺少强制转换?)

这没有任何意义。

来电者:

                string num = "12345";
char SN = Convert.ToChar(num);//serial number

string sCommand = ("Hellow");

char[] out = new char[sCommand.ToCharArray().Length];


out = calculator.XORinput(sCommand.ToCharArray(), SN);

最佳答案

错误不在于函数,而在于函数的结果。

当您执行 input[i] ^ SN; 时,您的结果是一个 int,您“无法将类型‘int’隐式转换为‘char’。

你可以这样转换它:

(char)(input[i] ^ SN);

关于c# - 出于某种原因不能将 XOR 运算符与两个字符一起使用,有人知道为什么吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11566778/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com