我是靠谱客的博主 欣喜啤酒,最近开发中收集的这篇文章主要介绍matlab 字符串 参数传递,C++和MATLAB混合编程字符串传递问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

呃,这个问题搞了有段时间,今天解决掉了。

先上给我启示的MATLAB里面带的例子:

Example

mxChar data[6] = {'H', 'e' , `l' , 'l' , 'o' , ''};

mxChar data_copy[6] ;

mwArray a(1, 6, mxCHAR_CLASS);

a.SetCharData(data, 6);

a.GetCharData(data_copy, 6);

字符串的传递和数字的传递有点不同,网上有很多穿数字的,我在这里就不介绍了。然后上我写的一段小代码。

​mxChar output[100];

for (int i = 0; i

{

output[i] = (mxChar)s_output.GetAt(i);

}

mwArray mwOutput(1, s_output.GetLength(), mxCHAR_CLASS);

mwOutput.SetCharData(output, s_output.GetLength());

我是在MFC下弄的,s_output是一个CStrng类型的字符串,应该普通的字符串也可以搞,但是在转换的时候一定要用强制类型转换,要不会转换不成功。上面的代码应该很明白了,希望大家少走弯路。​

继续写一下mwArry转换为CString类型,如果要从MATLAB里面传递结果到c++中可以用到:

​mwString output_s

= result.ToString();

CString output_c = (CString)output_s;

就这么简单,然后就可以输出结果了。

最后

以上就是欣喜啤酒为你收集整理的matlab 字符串 参数传递,C++和MATLAB混合编程字符串传递问题的全部内容,希望文章能够帮你解决matlab 字符串 参数传递,C++和MATLAB混合编程字符串传递问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部