C#byte数组传入C操作方法
更新时间:2019年02月26日 10:36:51 投稿:laozhang
在本篇内容中小编给大家分享了关于C#byte数组传入C操作方法以及相关知识点,需要的朋友们学习下。
将C语言封装成函数dll供C#端调用,需要传递的byte数组作为函数参数来传递。
1、打开Visual Studio2017创建一个C的dll工程;取名为Dll1

2、打开dllmain.cpp,增加一个byte数组元素求和的函数: Cal(unsigned char* data,int length);编译,在工程名上右键选择“生成”;即生成Dll1.dll文件。


3、创建C#工程对,选择窗体类型工程。在界面上增加一个Button按钮。双击Button进入代码编写界面。

4、采用DllImport引用上面封装好的dll,并调用Cal函数,传入byte[]数组{1,2}。显示出计算结果。预期输出结果为3。

5、将Dll1.dll拷贝到C#生成exe的同级目录下;运行C#项目,点击“调用”弹出执行结果3。符合预期结果。

相关文章
C#中LinkedList<T>的存储结构详解
这篇文章主要介绍了深度解析C#中LinkedList<T>的存储结构,本文将从链表的基础特性、C#中LinkedList的底层实现逻辑,.NET的不同版本对于Queue的不同实现方式的原因分析等几个视角进行简单的解读,需要的朋友可以参考下
2023-12-12
利用C#实现可以继承的"枚举"
工作中许多代码中用到枚举(enum),更用到了需要继承的枚举,由于C#的枚举不允许被继承,所以本文就来模拟实现一个可以继承的仿枚举吧
2023-05-05
C#使用正则表达式实现汉字转拼音
这篇文章主要为大家详细介绍了C#如何使用正则表达式实现汉字转拼音的功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
2024-01-01
C#基于Miniblink控件编写一个简易的浏览器
miniblink是一款精简小巧的浏览器控件,基于chromium精简而成,是市面上最小巧的chromium内核控件没有之一,本文将结合C#和Miniblink编写一个简易的浏览器,感兴趣的可以了解下
2024-01-01
WPF利用ScottPlot实现动态绘制图像
ScottPlot是基于.Net的一款开源免费的交互式可视化库,支持Winform和WPF等UI框架,本文主要为大家详细介绍了如何WPF如何使用ScottPlot实现动态绘制图像,需要的可以参考下
2023-12-12
C#小程序15位转18位身份证号代码
现在我们使用的都是18位身份证号,而以前都是15位身份证号,而如何将15位身份证号转18位身份证号转换为18位身份证号呢?
2013-02-02
避免在C#循环中使用await的方法小结
在C#中,异步编程因其能够提升应用程序性能和响应能力而变得越来越流行,async和await关键字使得编写异步代码变得更加容易,但如果使用不当,它们也可能引入一些陷阱,所以本文我们将探讨为什么应该避免在C#循环中使用await,并讨论一些更高效地处理异步操作的替代方法
2024-09-09
最新评论