我编写了一个简单的C程序,它接受命令行参数并显示该参数:
#include <stdio.h>
#include <stdlib.h>
int main(int argc,char *argv[]){
if(argc<2){return 0;}
else{
double x=atof(argv[1]);
printf("%f\n",x);
return 0;
}
}
现在我想使用system()函数在Matlab中运行这个程序:
>> x=3.14;
>> cmd=['/path/to/program/./test',x]
cmd =
/path/to/program/./test
>> [status,cmdout]=system(cmd)
status =
127
cmdout =
/bin/bash: /path/to/program/./test: No such file or directory
当我尝试时,这似乎不起作用。我真的不知道如何解决这个问题。我正在使用Mac。提前谢谢。
答案 0 :(得分:0)
尝试:
x=3.14;
cmd=['/path/to/program/./test ',num2str(x)];
[status,cmdout]=system(cmd)
和'/ path / to / program /'看起来很奇怪 - 测试真的位于/ path / to / program /?