MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [求助]全局变量 (https://www.labfans.com/bbs/showthread.php?t=4766)

xjjjanet 2008-10-08 22:58

[求助]全局变量
 
:confused:
程序:
clc
clear
a=1;b=2;c=3;
jieguo=f1(3)*a+f2(2)*b+c;%f1和f2是自定义函数。

function m=f1(x)
a=1;b=2;c=3;
m=a*(b*x)^2/c;

function n=f2(x)
a=1;b=2;c=3;
n=x^3*b^2/(a*c);

a,b,c是三个参数,在主程序和f1、f2里都要用到。
上面那个程序,如果的a,b,c中某一个值要变,则三个文件里的参数值都要改一遍。可不可以只改一个,其余两个文件中设置的参数在多个函数里赋一样的值呢?
原本以为全局变量是可以的。于是改为:
clc
clear
globe a b c
a=1;b=2;c=3;
jieguo=f1(3)*a+f2(2)*b+c;%f1和f2是自定义函数。

function m=f1(x)
m=a*(b*x)^2/c;

function n=f2(x)
n=x^3*b^2/(a*c);

结果是 error:f1中的a没有定义。应该是我理解错了。
哪位大大帮忙解释一下。这个,该怎么办?

一个人的旅行 2008-10-09 16:39

回复: [求助]全局变量
 
我也是新手

首先你那个全局变量写错了,可能是你输入错误,应该是global

然后在子函数里再次声明一下全局变量应该就可以了

我刚刚试过了

xjjjanet 2008-10-09 21:30

回复: [求助]全局变量
 
是我写错了。汗。。。谢谢。以后提问题之前先检查一遍。谢谢ls。我也是新手。。。呵呵。


所有时间均为北京时间。现在的时间是 03:06

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.