matlab 全局变量的使用举例

昨天在写项目时,想要把获取到的临时变量放入一个全局变量,为以后的使用做准备,结果总是出错,今天做了一个小程序,放在这里备用。

自定义函数:

global_p.m

function y=global_p(x)
%H1注释行
%测试全局变量的用法
global p; %3、声明p是全局变量
p=p+1;    %4、对全局变量p的操作
fprintf('全局变量须先声明,然后操作:自加一次\n');
y=1;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 

调用函数test_global.m:

clc;
clear;
% 测试说明:
% 本程序主要是测试全局变量的使用,以及对其的改变操作
% 自定义函数的输入变量(形参)和输出变量均没有意义,只是为了匹配格式而定义的
global p;  %1、定义p是全局变量
 p=0;      %2、p初始化
for i=1:5
result=global_p(0); %5、调用函数
end

总体来说,就是先声明一下,然后再初始化或操作吧。

附官方说明:

全局内存是指内存的一种特殊类型,它能够被所有的工作区访问。如果一个变量在函数中被声明全局变量,那么它将占用的是全局内存,而不是本地工作区。

如果相同的变量在另一个函数中被声明为全局变量,那么这个变量所占有内存区域就是第一个函数中的相同变量。

最好把全局变量声明在函数的开头,这样可以区别于本地变量。

在一个程序,你能利用全局内存,在函数之间对大规模数据进行交换。

 

 

posted @ 2015-10-09 16:34  平常心,平常心  阅读(44646)  评论(0编辑  收藏  举报