请记住,我没有太多的编码经验...
我在访问数组时遇到问题。我正在使用返回数组的函数创建数组,这是一个示例:
int[] ArrayName = ReturnArray(string);
因此,既然 ArrayName 已经创建,它应该与 ReturnArray 返回的内容相同吗?
好吧,我在以下位置设置了一个断点:
int[] ArrayName = ReturnArray(string);
我可以看到 ArrayName 已正确创建。
好吧,当我尝试像这样访问 Array 的 1 个值时:
print(ArrayName[0]);
它应该只返回数组中的第一个值吗?好吧,不是!它返回一个多于一个值,并且该值甚至与 ReturnArray(string) 返回的值不匹配
这是“ReturnArray”函数:
public static int[] ReturnArray(string t)
{
int i,ii,;
string ba;
string base64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
List<int> list = new List<int>();
for (i = 0; i < t.Length;i++)
{
ba = t.Substring(i, 1);
ii = base64.IndexOf(ba) * 64;
list.Add(ii);
}
return list.ToArray();
}
添加了更多代码来响应评论
private void outputLoop()
{
int i = 0;
for (i = 0; i < 63; i++)
{
int te = lines[i].Length - 128;
string tes = lines[i].Substring(te, 64);
int[] ArrayName = ReturnArray(tes);
_textlayer.DrawString(_font, ArrayName[i].ToString(), new Vector2(1100, i * 15), Color.White);
}
}