发布网友
共2个回答
热心网友
假设你的data是在Workspace(工作空间)中定义的,那你在command
window(命令行窗口)下直接调用data
=
fun(data);就能改变。
MATALB是按值传递的,不像C语言那样可以按地址传递然后让你在函数中去改变原变量的值。如果你想在MATLAB中改变原变量的值,可以这么做
定义函数:
funtion
o_data
=
fun(i_data)
%在程序中修改i_data的值
%最后返回函数之前让o_data
=
i_data
然后你调用函数的时候是这样的:
data
=
fun(data);
热心网友
把改变后的参数再传回来(调用时使用同样的变量接受返回数据),例如
函数定义:
function
a=fun(a)
a=a.^2;
调用的时候:
a=fun(a);
如果要传递的数据比较大,也可以考虑使用全局变量。注意:全局变量需要在每个使用的模块里面都要声明。