我知道这是一个简单的问题,但出于某种原因,无论我在哪里,我找不到直接的答案。
基本上,我在一个m文件中找到了4个值,我想通过一个单独的m文件运行它们并从中检索输出。
我尝试过类似的东西,但都没有效果:
result = generate(nrow,ncol,a,b);
function result = generate(nrow,ncol,a,b);
result = @generate(nrow,ncol,a,b);
m文件“generate”中的最终值称为result
,我正试图将其传递到我的初始m文件。
对于我做错的任何建议都将不胜感激!拜托,谢谢
答案 0 :(得分:6)
如果您的文件generate.m
定义了一个函数,它应该具有以下结构(考虑到您有四个返回值的事实)
function [ret1 ret2 ret3 ret4] = generate(nrow,ncol,a,b)
.... % # Some processing of yours
ret1 = ... ; % # Returned values are eventually set
ret2 = ... ;
ret3 = ... ;
ret4 = ... ;
end
应该调用该函数(例如在 main 脚本中)
[ret1 ret2 ret3 ret4] = generate(nrow,ncol,a,b);
现在您在调用者范围内可以使用变量ret1,ret2,ret3,ret4
。
请注意,文件generate.m
必须位于当前的matlab PATH中。