变长度输入宗量
可变长度的输入参数列表
语法
描述
变长度输入宗量
是函数定义语句中的输入变量,它使函数能够接受任意数量的输入参数。指定变长度输入宗量
通过使用小写字符。在任何显式声明的输入之后,包括变长度输入宗量
作为最后一个输入参数。
当函数执行时,变长度输入宗量
是1 -N单元阵列,N是函数在显式声明的输入之后接收的输入数。如果函数在显式声明的输入之后没有接收到任何输入,则变长度输入宗量
是一个空单元格数组。
例子
变量数量的函数输入
在命名为acceptVariableNumInputs.m
它接受数量可变的输入并显示每个输入的值。
类型acceptVariableNumInputs
函数acceptVariableNumInputs(varargin) disp("输入参数的数量:" + nargin) celldisp(varargin)结束
调用带有多个输入的函数。
acceptVariableNumInputs ((3),“一些文本”π)
输入参数的数量:3 varargin{1} = 1 1 1 1 1 1 1 1 varargin{2} = some text varargin{3} = 3.1416
变长度输入宗量
并宣布输入
在命名为definedAndVariableNumInputs.m
它期望两个输入并接受额外数量的输入。
类型definedAndVariableNumInputs
function definedAndVariableNumInputs(X,Y,varargin) disp("输入参数的总数:" + nargin) formatSpec = " varargin单元数组的大小:%dx%d";str =组成(formatSpec、大小(变长度输入宗量));disp (str)结束
调用带有多个输入的函数。
definedAndVariableNumInputs(7,π,兰德(4),日期时间(“现在”),“你好”)
varargin单元数组的大小:1x3
调用带有两个输入的函数。变长度输入宗量
是一个空单元格数组。
42 definedAndVariableNumInputs(13日)
输入参数总数:2可变单元格数组的大小:0x0
输入和输出的可变数量
在命名为variableNumInputAndOutput.m
它接受可变数量的输入和输出。
类型variableNumInputAndOutput
函数varargout = variableNumInputAndOutput(varargin) disp(['提供的输入数量:' num2str(长度(varargin))]) disp(['请求的输出数量:' num2str(nargout)]) for k = 1:nargout varargout{k} = k;结束结束
调用具有两个输入和三个输出的函数。
g (d, p) = variableNumInputAndOutput (6“关系”)
提供的输入数量:2请求的输出数量:3
d = 1
g = 2
p = 3
在没有输入或输出的情况下再次调用函数。
variableNumInputAndOutput
提供的输入数量:0请求的输出数量:0
创建函数包装器
在工作文件夹中的文件中,为绘制红线的plot函数创建一个包装器。的redplot
函数接受一个变长输入参数列表并返回一个变长输出参数列表。它将行颜色设置为红色,并将其他输入值转发到情节
函数。此函数包装器使您能够传递redplot
同样的输入情节
并且不指定线条颜色为红色。
类型redplot.m
function varargout = redplot(varargout) [varargout{1:nargout}] = plot(varargout{:},'Color',[1,0,0]);结束
使用redplot
创建一个线状图。
x = 0:π/ 100:2 *π;y = sin (x);redplot (x, y)
调用redplot
并指定要转发到的输入和输出参数情节
函数。
h = redplot (x, y,“标记”,“o”,“MarkerEdgeColor”,“绿色”);
扩展功能
C / c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
如果你使用
变长度输入宗量
为定义入口点(顶层)函数的实参,代码生成器生成一个具有固定数量输入实参的C/ c++函数。生成代码时指定的参数数量决定了参数的固定数量。你不能写信给
变长度输入宗量
.如果要写入输入参数,首先要将输入参数复制到局部变量中。该指数为
变长度输入宗量
必须是编译时常量。
HDL代码生成
使用HDL Coder™为FPGA和ASIC设计生成Verilog和VHDL代码。
使用注意事项和限制:
你不能写信给
变长度输入宗量
.如果要写入输入参数,首先要将输入参数复制到局部变量中。使用
变长度输入宗量
在一个MATLAB函数具有HDL块属性的块体系结构设置为MATLAB Datapath公司
:方法可以创建单元格数组
变长度输入宗量
.方法等其他初始化技术无法使用细胞
函数或使用大括号创建单元格数组,如cellArr = {1,2,3}
.不能对单元格数组进行多索引。例如,这段代码在HDL代码生成中会导致错误。
[x, y] = varargin{1:2};
版本历史
之前介绍过的R2006a
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。