C#重载字节错误

C#重载字节错误,c#,C#,我正在尝试制作一个支持4个参数的函数,但它不起作用。。 我如何解决这个问题? 多谢各位 private void Byte(byte a, byte b, uint c, byte d) { PS3.SetMemory(a + b * c, new byte[] { d }); } Byte(0x00f474e3 + 0x3700 * dataGridView1.CurrentRow.Index, new byte[] { 0x03 }); 错误: 错误说明了一切。 对。您没有指定

我正在尝试制作一个支持4个参数的函数,但它不起作用。。 我如何解决这个问题? 多谢各位

private void Byte(byte a, byte b, uint c, byte d)
{
     PS3.SetMemory(a + b * c, new byte[] { d });
}

Byte(0x00f474e3 + 0x3700 * dataGridView1.CurrentRow.Index, new byte[] { 0x03 });
错误:

错误说明了一切。 对。您没有指定
c
d

0x00f474e3+0x3700*dataGridView1.CurrentRow.Index
a

新字节[]{0x03}
b
,这是错误的。它不需要字节数组,只需要字节

那么
c
d

因此,我认为你应该:

Byte(0x00f474e3,0x3700,dataGridView1.CurrentRow.Index,0x03);

发送参数时不需要执行计算

我想你想这样做:

Byte(0x00f474e3,0x3700 , dataGridView1.CurrentRow.Index , 0x03);

您只需编写以下代码即可避免使用Byte()函数:

PS3.SetMemory(0x00f474e3 + 0x3700 * dataGridView1.CurrentRow.Index, 
                                                            new byte[] { 0x03 });

您应该按原样传递参数:

Byte(0x00f474e3, 0x3700, dataGridView1.CurrentRow.Index, 0x03);

错误消息不清楚?您的
Byte
方法接受
4
参数,但您尝试使用
2
参数调用它。一个是
(0x00f474e3+0x3700*dataGridView1.CurrentRow.Index
,另一个是
新字节[]{0x03}
,您的第二个参数是非字节数组,但您正在尝试传递字节数组。此外,您的第三个和第四个参数没有指定。此外:当然,字节[]不是字节。
Byte(0x00f474e3, 0x3700, dataGridView1.CurrentRow.Index, 0x03);