概述
在程序中会经常定义一些变量来保存和处理数据,从本质上看,变量代表了一段可操作的内存,也可以认为变量是内存的符号化表示。
当程序中需要使用内存时,可以定义某种类型的变量。此时编译器根据变量的数据类型分配一定大小的内存空间,程序就可以通过变量名来访问对应的内存了。
1.变量的命名
在MATLAB中,变量不需要预先声明就可以进行赋值。变量的命名遵循以下规则:
(1)变量名和函数名对字母的大小写敏感,因此x和X是两个不同的变量;sin是MATLAB定义的正弦函数,而SIN不是。
(2)变量名必须以字母开头,其后可以是任意字母或者下划线,但是不能有空格、中文、或者标点,例如_xy, a.b都不合法,而className_x,是一个合法的变量名。
(3)不能使用MATLAB的关键字作为变量名,避免使用函数名作为变量名,如果变量名采用函数名,则该函数失效,例如设置变量名为“if”、“end”等。
(4)变量名最对可以包含63个字符,从第64个字符开始之后的字符将被忽略,为了程序的可读性及维护方便,变量名一般代表一定的含义。
通过isvarname函数,可以验证用户指定的变量名是否合法,返回1表示合法,返回0表示不合法。
2.变量的类型
MATLAB将变量划分为3类:局部变量,全局变量和永久变量
(1)局部变量:MATLAB中的每一个函数都有自己的局部变量,这些变量存储在该函数独立的工作区中,与其他函数的变量及主工作区中的变量分开存储。当该函数调用结束后,这些变量随之被删除,不会保存在内存中。
(2)全局变量:全局变量在定义该变量的全部工作区中有效,当在一个工作区内改变该变量的值时,该变量在其余工作区内的值也将会改变。
通常,全局变量的变量名用大写字母表示,并在函数体开头位置进行定义,格式如下:
global X_Val
使用全局变量的目的是减少数据传递的次数。然而,使用全局变量有一定的风险,容易造成错误, 这种错误源自全局变量的工作原理。
(3)永久变量,永久变量用persistent声明,只能在M文件函数中定义和使用,只允许声明它的函数存取,当声明它的函数退出时,MATLAB不会从内存中清除它,例如声明a为全局变量
persistent a
3.MATLAB默认的特殊变量
MATLAB预定义了许多特殊变量,这些变量具有系统默认的含义
MATLAB中的特殊变量
特殊变量 描述
ans 系统默认的用作保存运算结果的变量名
pi 圆周率
eps 机器零阈值,MATLAB中的最小值
inf 表示无穷大
NaN或nan 表示不定数
i或j 表示虚数
nargin 函数的输入参数个数
nargout 函数的输出参数个数
realmin 可用的最小正实数
realmax 可用的最大正实数
bitmax 可用的最大正整数(以双精度格式存储)
varargin 可变的函数输出参数个数
beep 使计算机发出“嘟嘟”声音
4、关键字
关键字是MATLAB程序设计中常用的流程控制变量,共有20个。在命令行窗口中输入iskeyword,既可查询这20个关键字。
最后
以上就是细心马里奥为你收集整理的8.1 MATLAB 变量的全部内容,希望文章能够帮你解决8.1 MATLAB 变量所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复