如何进行c#与matlab混合编程
1个回答
展开全部
你是指,参数传递吧,怎么会有函数传递呢
以下代码,供你参考,涉及到参数转换和传递,不懂的再补充吧
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MathWorks.MATLAB.NET.Arrays;//在MWArray.dll,最常用的
using MathWorks.MATLAB.NET.Utility;// 在MWArray.dll,最常用的
using test_erfc;// 我在matlab中采样deploytool编译成test_erfc.dll
namespace erfccc
{
class Program
{
static void Main(string[] args)
{
test_erfc.test_erfcclass E = new test_erfcclass();
Console.WriteLine("输入x的值:");
int x = Convert.ToInt32(Console.ReadLine());
MWArray[] result = E.erfc(1, (MWArray)x); //第一个参数取决于你的erfc有几个返回参数
MWNumericArray r1 = (MWNumericArray)result[0];
double[,] location1 = (double[,])r1.ToArray(MWArrayComponent.Real);
Console.WriteLine(location1[0, 0].ToString());
Console.ReadLine();
}
}
}
以下代码,供你参考,涉及到参数转换和传递,不懂的再补充吧
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MathWorks.MATLAB.NET.Arrays;//在MWArray.dll,最常用的
using MathWorks.MATLAB.NET.Utility;// 在MWArray.dll,最常用的
using test_erfc;// 我在matlab中采样deploytool编译成test_erfc.dll
namespace erfccc
{
class Program
{
static void Main(string[] args)
{
test_erfc.test_erfcclass E = new test_erfcclass();
Console.WriteLine("输入x的值:");
int x = Convert.ToInt32(Console.ReadLine());
MWArray[] result = E.erfc(1, (MWArray)x); //第一个参数取决于你的erfc有几个返回参数
MWNumericArray r1 = (MWNumericArray)result[0];
double[,] location1 = (double[,])r1.ToArray(MWArrayComponent.Real);
Console.WriteLine(location1[0, 0].ToString());
Console.ReadLine();
}
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询