matlab中的静态变量与全局变量

matlab中的静态变量和全局变量

1.静态变量

在matlab中,和其他语言一样,函数中的变量一把都是局部变量,也就是说,在函数调用完毕后,变量就会被释放。但是有些时候回希望上次改变的变量在下一次调用时也能发挥作用。这时候就要永达静态变量。
关键字:
persistent
用例:

function rndNum = rnd(x)
%produce random numbers
persistent x;
if isempty(x)
    x=0.5;
end
a = 17;
b = 139;
c = 256;
x = mod(a*x+b);

rndNum=x/c;

注意:
上面对x的初始化,我们不能直接用persistent x = 0.5; 而应该要先判断x是否已经赋值,然后在初始化。

2.全局变量

有些时候,希望一些变量能够在函数之间或者在脚本文件与函数之间共享,那么就需要用到全局变量。
关键字:
global
用例:

function y = fun1()
global x;
x=133;
y=3*x;
function y = fun2()
global x;
y=3/x;
posted @   裏表異体  阅读(886)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示