【发布时间】:2013-08-21 13:30:08
【问题描述】:
我正在使用一个公共字节数组并希望分配值,就像我在方法中分配数组一样,即
byte[] foo = {0x32, 0x00, 0x1E, 0x00};
但是当我定义值时,我不得不这样做
foo[0] = 0x32;
foo[1] = 0x00;
foo[2] = 0x1E;
foo[3] = 0x00;
如果我使用第一个例子VS给出错误“只有赋值、调用、递增、递减、等待和新对象表达式可以用作语句”
如果有帮助,数组总是 4 个字节。
我的代码
public byte[] SetSpeed = new byte[4];
private void trackBar1_Scroll(object sender, EventArgs e)
{
if (trackBar1.Value == 0)
{
try
{
stop = true;
UpdateSThread.Abort();
Thread.Sleep(350);
}
catch { }
SetSpeed = {0x00,0x00,0x00,0x00};
WriteMem(GetPlayer() + STATUS_OFFSET, SetSpeed);
label1.Text = "Normal";
}
}
【问题讨论】:
-
请发布一个简短但完整的失败示例。我希望你给的东西没问题 - 但如果你只是分配给
foo而不声明它。 -
你的第一个例子编译(VS2012)
-
您仍然没有显示无法编译的代码。我怀疑您正在尝试
SetSpeed = { 0x00, 0x00, 0x00, 0x00 },这与您的原始示例完全不同。此外,您还没有明确说明您是真的想创建一个新数组还是只想改变现有数组。 -
我现在举的例子是不能编译的。
-
@user2340475:最后。这就是应该开始的问题。