MatLab变量

1. 变量命名

在 MatLab 中,变量不需预先声明就可直接进行赋值操作。变量命名遵循以下规则:

  • 变量名和函数名对字母大小写敏感
  • 变量名和函数名必须以字母为开端,其后可以是字母、数字和下划线
  • 不能使用 MatLab 关键字作为变量名和函数名(可使用 iskeywords 函数查看 MatLab 中所有的关键字)
  • 变量名和函数名最多可包含 63 个字符,超过部分被截断忽略
  • 避免使用函数名作为变量名,如果变量采用函数名,则该函数失效

【注】在 MatLab 中可使用 isvarname 函数验证变量命名是否符合规范。

2. 变量类型

【注】MatLab 工作区详情请参见

  • 局部变量
    MatLab 中直接赋值使用的变量都是局部变量,每个局部变量都存储在对应的工作区内,作用域仅限于该工作区。

  • 全局变量
    MatLab 全局变量存储在自己的工作区内,在 MatLab 的全部工作区内都可以访问,访问前需要使用关键字 global 进行声明:

1
global var
  • 永久变量
    MatLab 永久变量类似于其他编程语言(比如 C 语言)中的静态变量,只能在 MatLab 普通函数中定义和使用。永久变量存储在当前 MatLab 窗口对应的内存中,不会因为函数工作区的清除而清除(即在当前 MatLab 窗口下多次调用同一函数,永久变量会保留上次调用后的值)。永久变量需要使用关键字 persistent 进行声明:
1
persistent var

3. 特殊变量

MatLab 预定义了许多特殊变量,这些变量具有系统默认的含义,大部分还能当作函数使用:

特殊变量 描述 特殊变量 描述
ans 系统默认保存运算结果的变量 eps 及其零阈值(MatLab 中的最小值)
realmin 可用的最小正实数 realmax 可用的最大正实数
bixmax 可用的最大正整数(double) pi 圆周率
NaN 或 nan 表示不定/未知数 Inf 或 inf 表示无穷大
nargin 函数实际输入参数个数(在函数体内部使用) nargout 函数实际输出参数个数(在函数体内部使用)
varargin 函数可变长度输入参数列表(1×N1 \times N 元胞数组,在函数体内部使用) varargout 函数可变长度输出参数列表(1×N1 \times N 元胞数组,在函数体内部使用)
i 或 j 虚数 beep 是计算机发出“嘟嘟”声
date 当前日期(字符向量) datetime 当前时间(datetime类型)
clock 当前时间(六元素行向量) cputime 当前 MatLab 窗口自启动时使用的总的 CPU 时间(秒为单位)
now 自预设日期(0000年 1月 0日)到当前的天数(double类型)

【注】nargin、nargout、varargin、varargout详情请参阅 MatLab 帮助文档。


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!