我是c#的新手。我正在写一个c#函数,它读取句子中每个单词的ASCII总和。
以下是我的代码。当我将每个char修改为整数时会出现问题。
private void textBox1_TextChanged(object sender, EventArgs e)
{
char[] chars = {' ','\r','\n'};
string[] str = textBox1.Text.Split(chars, StringSplitOptions.RemoveEmptyEntries);
int[] sum;
for (int i = 0; i < str.Length; i++)
{
int[] asciiChar = Encoding.ASCII.GetChars(str[i]); // error occurs here.
sum[i] = asciiChar.Sum();
}
label1.Text = sum.Length.ToString();
}
答案 0 :(得分:4)
GetChars
预计会收到byte[]
。但是你传递的是string
。你应该打电话给GetBytes
。
byte[] asciiChar = Encoding.ASCII.GetBytes(str[i]);
此外,您忘记分配数组sum
。