【c# – FxCop说我应该返回一个通用列表接口而不是字节数组.我是不是该?】教程文章相关的互联网学习教程文章

从C#中不受管理的C DLL获取字节数组上的指针【代码】

在C我有这样的功能extern "C" _declspec(dllexport) uint8* bufferOperations(uint8* incoming, int size)我正在尝试像这样从c#调用它[DllImport("MagicLib.DLL", CallingConvention = CallingConvention.Cdecl)] //[return: MarshalAs(UnmanagedType.ByValArray)]//, ArraySubType=UnmanagedType.SysUInt)] public static extern byte[] bufferOperations(byte[] incoming, int size);但是我得到了无法封送“返回值”:无效的托管...

如何将双精度数组从C#传递到C(DLL)【代码】

C函数签名为:int Eye_GetPositionSC2(std::string fname_mob, double sensors[9], int &map_x, int &map_y)C#函数签名为:[DllImport(@"eyeWhere.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Unicode)] public static extern int Eye_GetPositionSC2([MarshalAs(UnmanagedType.LPWStr)]string filename, [In , MarshalAs(UnmanagedType.LPArray)]double[] sensors)代码编译良好,但是在将双精度数组传递...

如何在C中构建动态数组并将其返回给C#/ .NET【代码】

我必须找到在C Win32端构建结构数组的方法.我没有最初的项目数.调整该数组的速度应该非常快. 构建列表时,我需要将其返回给.NET.因此,数组(列表)应该转换为可以在.NET端轻松读取的传输,或者初始列表可以“按原样”使用,只需传递指针即可. 在此先感谢给我一个提示!解决方法:在C中实现“动态数组”的一种非常常见的方法是使用STL的std :: vector.在您的情况下,您可以定义向量< SomeData>.根据您的请求,std :: vector可以动态地(即在运...

c# – 垂直翻转字节数组中位图的算法【代码】

我正在通过Mono For Android为Android中的便携式蓝牙打印机编写一个用于打印位图的课程.我的类用于从流中获取像素数据,以便可以以正确的格式将其发送到打印机.现在这个类很简单,它只读取每个像素的高度,宽度和位数. 使用它读取的偏移量并将像素数据返回给打印机.现在我只使用每像素1位黑白图像.我正在使用的位图是Windows格式. 这是原始图像: 这是打印的结果,第一张图片没有任何变换.第二个是使用以下代码修改BitArray的结果:Bit...

用C#指示生成int数组?【代码】

以下C程序按预期编译和运行:#include <stdio.h>int main(int argc, char* argv[]) {int* test = new int[10];for (int i = 0; i < 10; i++)test[i] = i * 10;printf("%d \n", test[5]); // 50printf("%d \n", 5[test]); // 50return getchar(); }我能为这个问题做出的最接近的C#简单示例是:using System;class Program {unsafe static int Main(string[] args){// error CS0029: Cannot implicitly convert type 'int[]' to 'int...

c# – OpenCV从字节数组创建Mat【代码】

在我的C dll中,我从字节数组创建Mat:BYTE * ptrImageData; //Image data is in this array passed to this functionMat newImg = Mat(nImageHeight, nImageWidth, CV_8UC3, ptrImageData);使用一些灰色阴影而不是原始阴影创建图像. 这是从字节数组创建Mat的正确方法吗? 请参阅代码 ptrImageData从C#代码传递给C dll. 传递图像数据的C#代码System.Drawing.Image srcImage //Has the image MemoryStream ms = new MemoryStream();...

将字节数组从C unmanaged dll传递到C#unity【代码】

我试图将字节数组从我的非托管c dll返回到c#unity.非常感谢您抽出宝贵的时间来帮助><我在团结中对DLL非常陌生,所以我非常困惑2种语言甚至可以合作.CPP问题出在这里,我已经完成了我的计算,但我很难找到一种方法将数据格式返回给c#.目前,字节数组包含颜色代码,例如RGBA(223,124,23,255,212,143,234,255),它重复 #include "WebcamDLL.h" #include <vector>extern "C" { int adjustBrightnesss(unsigned char* bytes, int sizeOfArray)...

c# – 从C本机插件更新float数组【代码】

在尝试将数组从C传递到C#时,我看到了一个非常奇怪的问题.我正在使用Marshal.Copy(具体来说:https://msdn.microsoft.com/en-us/library/a53bd6cz(v=vs.110).aspx). 问题:从C到C#的浮点数组在结果数组中产生一些NaN.(注意:我在Unity游戏引擎的上下文中工作) 码 示例C代码:extern "C" bool UNITY_INTERFACE_EXPORT UNITY_INTERFACE_API getSomeFloats(float** points, int* count) {std::vector<float> results;std::vector<SOME_...

将矢量/数组从非托管C传递到C#【代码】

我想从非托管C传递大约100 – 10,000点到C#. C面看起来像这样:__declspec(dllexport) void detect_targets( char * , int , /* More arguments */ ) {std::vector<double> id_x_y_z;// Now what's the best way to pass this vector to C# }现在我的C#端看起来像这样:using System; using System.Runtime.InteropServices;class HelloCpp {[DllImport("detector.dll")]public static unsafe extern void detect_targets( stri...

C# 实现二维数组的排序算法(代码)【代码】

@[TOC](C# 实现二维数组的排序算法(代码))//二维数组排序类class toDimSort{//返回第row行的所有元素,是一个一维数组public object[] GetRowByID(object[,] lists, int row){if (row > (lists.GetLength(0) - 1))throw new Exception("row超出最大的行索引号");object[] tmp = new object[lists.GetLength(1)] ;for (int i = 0; i < lists.GetLength(1); i++)tmp[i] = lists[row, i];return tmp;}//复制一行数据到指定的行上publi...

C# 数组

数组 day06 2018.01.09 周二 -------------------------------------------------------- 上午 数组 数组的定义: 数组类型[] 数组名 ; 如:int[] ages ; 数组的初始化:明确数组长度和数组元素赋值的过程 静态:明确已知数组长度,数组中每个元素具体值 int[] ages = { 20 ,25 ,30 } ages.Length ; //数组长度 动态:明确已知数组的长度,但是不明...

C# 练习题 数组结构

排序问题 上午 复习 ---------------------------------------------------- 1.复习:冒泡排序 问题:有一组数据,排序之前: -1 10 - 20 -30 要求按从小到大的顺序排序 --------------------------------------------------- 解答: 1) 排序过程: 第一轮:3次,最大值,冒到最后 10 1) -1 10 不交换 -1 10 - 20 -30 2)10 -20 交换 -1 -20 10 -30 ...

C#培训2019-9-5第五课(课堂练习) 利用数组实现加法运算【代码】【图】

要求:创建固定长度的数组(eg:128),将输入的字符串转存到Int数组中,实现两个数组相加。 提示: 1、由于两个数组的有效长度不一定一样,例如123+1234,若正向存储(1234→Array[0]存1;Array[1]存2;Array[2]存3;Array[3]存4),则相加时会出现错位相加(eg:十位和个位相加),因此需要反向存储(1234→Array[3]存1;Array[2]存2;Array[1]存3;Array[0]存4),这样的话两个数组的Array[0]永远是个位,可以实现直接相加。 2、...

将C#字节数组转换为C.【代码】

我非常感谢这个社区以及它为我过去编程问题提供的所有帮助. 现在不幸的是,我似乎无法找到这个问题的答案,乍一看,这似乎是一个毫无疑问的问题.请注意,我目前正在使用C 6.0. 这是我试图从C#转换的代码:byte[] Data = new byte[0x200000]; uint Length = (uint)Data.Length;在C中,我声明了新的字节数组Data如下:BYTE Data[0x200000]; DWORD Length = sizeof(Data) / sizeof(DWORD);当我运行我的程序时,我收到堆栈溢出错误(如图).我相...

c# – 将一个通用字符串列表从Handler返回到JS数组【代码】

尝试将此列表作为数组返回,以便我可以通过JS在客户端获取它并迭代其值. 所以我的一个.ashx方法在方法的最后返回一个这样的列表: equipmentTypes是一个通用的字符串列表_httpContext.Response.ContentType = "text";_httpContext.Response.Write(equipmentTypes.ToArray());当我在客户端收到它时,我得到文字文本“System.String []”.那么我应该返回什么内容类型?显然这是不正确的. 然后我假设我可以将其评估为js侧的数组(对象).解...