int[] 在当前上下文中不存在
int[] does not exist in the current context
我正在尝试将一个 int[] 传递到方法中,将它与另一个数组连接起来,然后 return 将它传递给 main 以在控制台中打印。
这是代码:
//where preTemp is another array derived in previous method
public static int[] sesLayer(int[] preTemp)
{
//set two arrays for rtr and r1r0
int[] r1r0 = new int[2] { 0, 0 };
int[] RTR = new int[1] { 0 };
//add r1r0 to the preTemp int array
//set length of the new array to accomodate temp + r1r0
var length = new int[preTemp.Length + r1r0.Length];
r1r0.CopyTo(length, 0);
preTemp.CopyTo(length, length.Length);
//add RTR to the packet
return preTemp;
}
public static int[] preLayer(int tempData)
{
string binaryTemp = Convert.ToString(tempData, 2);
int DLC = binaryTemp.Length;
binaryTemp = binaryTemp.PadLeft(64, '0');
string binaryDLC = Convert.ToString(DLC, 2);
binaryDLC = binaryDLC.PadLeft(4, '0');
string prePacket = binaryDLC + binaryTemp;
//convert string to int[]
int[] preTemp = prePacket.Select(c => int.Parse(c.ToString())).ToArray();
return preTemp;
}
static void Main(string[] args)
{
int[] sesTemp = sesLayer(preTemp); //**error crops up here**
Console.Write(sesTemp);
Console.ReadLine();
}
和 int tempData = 58;
任何帮助表示赞赏。
错误很明显。您正在调用一个不存在的变量。
int[] sesTemp = sesLayer(preTemp);
您的 Main()
方法范围内没有名为 preTemp
的变量。您仅将其用作方法的参数。您必须创建一个新变量。
int[] preTemp = new int[] { /* your values */ };
int[] sesTemp = sesLayer(preTemp);
我正在尝试将一个 int[] 传递到方法中,将它与另一个数组连接起来,然后 return 将它传递给 main 以在控制台中打印。 这是代码:
//where preTemp is another array derived in previous method
public static int[] sesLayer(int[] preTemp)
{
//set two arrays for rtr and r1r0
int[] r1r0 = new int[2] { 0, 0 };
int[] RTR = new int[1] { 0 };
//add r1r0 to the preTemp int array
//set length of the new array to accomodate temp + r1r0
var length = new int[preTemp.Length + r1r0.Length];
r1r0.CopyTo(length, 0);
preTemp.CopyTo(length, length.Length);
//add RTR to the packet
return preTemp;
}
public static int[] preLayer(int tempData)
{
string binaryTemp = Convert.ToString(tempData, 2);
int DLC = binaryTemp.Length;
binaryTemp = binaryTemp.PadLeft(64, '0');
string binaryDLC = Convert.ToString(DLC, 2);
binaryDLC = binaryDLC.PadLeft(4, '0');
string prePacket = binaryDLC + binaryTemp;
//convert string to int[]
int[] preTemp = prePacket.Select(c => int.Parse(c.ToString())).ToArray();
return preTemp;
}
static void Main(string[] args)
{
int[] sesTemp = sesLayer(preTemp); //**error crops up here**
Console.Write(sesTemp);
Console.ReadLine();
}
和 int tempData = 58; 任何帮助表示赞赏。
错误很明显。您正在调用一个不存在的变量。
int[] sesTemp = sesLayer(preTemp);
您的 Main()
方法范围内没有名为 preTemp
的变量。您仅将其用作方法的参数。您必须创建一个新变量。
int[] preTemp = new int[] { /* your values */ };
int[] sesTemp = sesLayer(preTemp);