c++ - 为 C++ 可执行文件提供变量作为 MATLAB 系统命令的输入参数
问题描述
我有一个在 MATLAB 中实现的算法。我想用我自己的 C++ 实现替换不同的内置操作。我不想使用 MEX 来获得额外的开销。有没有办法使用“系统”命令将变量作为输入参数提供给我的 C++ 可执行函数。例如,对于用 C++ 实现的乘法器,以下工作。
result = system('multiplier.exe 10 50')
结果是 500。但以下不起作用:
a = 10;
b = 50;
result = system('multiplier.exe a b');
在这种情况下,结果始终为 0。我尝试使用 setenv 和 getenv 函数。但是结果仍然是0。有什么帮助吗??
解决方案
正如user4581301在评论中所暗示的那样,您的代码将a
andb
作为字符串a
和字面意思,而b
不是按照您的预期翻译它们。您需要将和的值转换为字符串之后。IE10
50
a
b
result = system(['multiplier.exe ', num2str(a), ' ', num2str(b)]);
推荐阅读
- javascript - 如何更新时间取决于javascript中的分钟
- javascript - 如何在子窗口顶部显示弹出窗口
- javascript - 在函数变量中插入一个值
- jupyter-notebook - 有没有办法将小部件绑定到变量,以便在变量更改时小部件更新?
- java - 有没有办法使用 java 8 替换 List 中的 Map 值?
- python-3.x - 如何在两个不同列表中包含的基于值的数据框中创建新列?
- mongodb - 带有副本集的 mongodb 的 Statefulset
- python-3.x - 在 Pycharm 中设置现有的 Python3.6 环境/包
- php - update_batch 中的多个 where / 键
- python - 尝试在opencv上裁剪图像时出现TypeError