概述
Matlab/Simulink中的静态变量和全局变量
1、静态变量(persistent)
1)Matlab中使用静态变量
2、全局变量(global)
1)Matlab中使用全局变量
2)Simulink中使用全局变量
(1)使用 Data Store Memory 模块存储数据
(2)使用 Simulink.Signal 对象存储数据
1、静态变量(persistent)
1)Matlab中使用静态变量
在函数中声明的变量,当函数调用完之后就会释放。如果想保留这个变量的值(供该函数下一次调用),可以把这个变量声明为静态变量。
静态变量只能在function里声明,且只有这个function才能认识它(main函数也不行,被遮蔽无法使用)。静态变量不能在声明的时候赋值,x声明后是[],就是一个空的array。声明后需初始化,注意不能直接用persistent x=0;而是用isempty(x)判断x是否已经赋值。
function y=persistentTest()
persistent x;
if isempty(x)
x=0;
end
x = x + 1;
在命令窗中多次运行如下命令验证是否静态变量创建正确.若x未赋值,则赋值为0,输出结果为1;若x已经赋值,则使用已赋的值进行+1运算。
y = persistentTest
之后调用一次y=persistenTest;结果y=1,再调用一次y=persistenTest;结果y=2。就是说x记录了每次调用function后的结果。
释放静态变量
最后
以上就是强健大叔为你收集整理的matlab怎设置静态变量,Matlab/Simulink中的静态变量和全局变量的全部内容,希望文章能够帮你解决matlab怎设置静态变量,Matlab/Simulink中的静态变量和全局变量所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复