Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将matlab事件从sbyte[]转换为sbyte[]_C#_Arrays - Fatal编程技术网

C# 将matlab事件从sbyte[]转换为sbyte[]

C# 将matlab事件从sbyte[]转换为sbyte[],c#,arrays,C#,Arrays,我从字节[]中的非托管代码分配数据内存。我能够在sbyte[]中转换该数组,并将其每个事件提供给matlab侦听器。但matlab无法将此数据解释为sbyte[]。 但是Matlab能够理解系统.SByte[]对象。因此,我想将sbyte[]数组转换为sbyte[],并给出matlab脚本 但是我不想把每个元素复制到一个新的数组中 有人有过这样的经历吗?这里一个轻率的回答是: sbyte[] arr = GetData(); System.SByte[] arr2 = arr; CallMatl

我从字节[]中的非托管代码分配数据内存。我能够在sbyte[]中转换该数组,并将其每个事件提供给matlab侦听器。但matlab无法将此数据解释为sbyte[]。 但是Matlab能够理解系统.SByte[]对象。因此,我想将sbyte[]数组转换为sbyte[],并给出matlab脚本

但是我不想把每个元素复制到一个新的数组中


有人有过这样的经历吗?

这里一个轻率的回答是:

sbyte[] arr = GetData();
System.SByte[] arr2 = arr;
CallMatlab(arr2);
然而,这基本上不是答案,因为它没有任何作用。sbyte只是global::System.sbyte的别名。它们是完全相同的东西。没有必要或适当的转换,因为它们已经是相同的东西,忽略了故意的边缘情况,比如声明自己的本地类型SByte。C不像Java;在Java中,例如int和Integer之间有一个重要的区别;在C语言中,情况并非如此:int==System.Int32.

um。。。。sbyte是System.sbyte。它们是完全一样的东西。因此,sbyte[]是System.sbyte[]。。。您能更具体地说明这里发生的错误吗?