// c の定義
SAMPLE_EXPORT void SAMPLE_NumberSequence(unsigned char *bytes, int length);
[DllImport(DllName, EntryPoint = "SAMPLE_NumberSequence")]
public static extern void SAMPLE_NumberSequence_UseRef(ref byte bytes, int length);
と書いておいて
static void StackSample()
{
Span<byte> span = stackalloc byte[10];
SampleImport.SAMPLE_NumberSequence_UseRef(ref span[0], span.Length);
Console.WriteLine(ToString(span));
}
ref span[0]
で先頭要素へのリファレンスを渡すことでできた。
実験コード