Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 其它 > 资料存档
资料存档 资料存档
回复
 
主题工具 显示模式
旧 2019-12-14, 20:13   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 C#调用MATLAB

我正在按照Matlab的示例在C#中运行,但是由于我是C#的新手,所以我想打印System.Array prresult = new double[4];的结果System.Array prresult = new double[4];这是使用MATLAB的C#代码:

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1{ class Class1{ [STAThread] static void Main(string[] args){ MLApp.MLAppClass matlab = new MLApp.MLAppClass(); System.Array pr = new double[4]; pr.SetValue(11,0); pr.SetValue(12,1); pr.SetValue(13,2); pr.SetValue(14,3); System.Array pi = new double[4]; pi.SetValue(1,0); pi.SetValue(2,1); pi.SetValue(3,2); pi.SetValue(4,3); matlab.PutFullMatrix("a", "base", pr, pi); System.Array prresult = new double[4]; System.Array piresult = new double[4]; matlab.GetFullMatrix("a", "base", ref prresult, ref piresult); } } } 我在喜欢之前和之后添加了这些行:

System.Array prresult = new double[4]; System.Array piresult = new double[4]; Console.Write(prresult); Console.Write(piresult); matlab.GetFullMatrix("a", "base", ref prresult, ref piresult); Console.Write(prresult); Console.Write(piresult); 我进入控制台:

System.Double[]System.Double[]System.Double[]System.Double[] 。 。 。

如何在控制台中打印正确的结果?



回答:

像这样:

foreach(var item in prresult) { Console.Write(item.ToString() + ", "); } 这是一个以类似于MATLAB的语法输出数组元素的函数:

static void PrintArray(double[] aArray) { var str = ""; for (int index = 0; index < aArray.Length; index++) { var item = aArray[index]; str += item.ToString(); if (index < aArray.Length - 1) str += ", "; } Console.WriteLine("[" + str + "]"); } 因此可以这样使用:

PrintArray(prresult);

更多&回答...
poster 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛禁用 表情符号
论坛启用 [IMG] 代码
论坛启用 HTML 代码



所有时间均为北京时间。现在的时间是 10:30


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.