zoukankan      html  css  js  c++  java
  • MATLAB中的nargin与varargin的用法

    nargin的用法:

    nargin:number of function input arguments,指的是一个函数的输入变量的个数。

    用法:nargin或着nargin(fx), 其中fx指的是一个函数名或着函数句柄。

    当一个函数的参数中含有varargin变量时,这时候返回值为负。

    下面举例说明:

    用于nargin:

    function c = addme(a, b)
    switch nargin
    case 2
     c= a + b;
    case 1
     c = a + a ;
    otherwise
      c = 0;
    end

    返回的结果为 a + b。

    用到nargin(fx):

    fx = 'addme';
    nargin(fx)
    ans = 
        2

    当含有 varargin参数时,

    function mynewplot(x, y, varargin)
     
    fx = 'mynewplot';
    nargin(fx)
    ans = 
    -3

    varargin的用法:

    varargin:Variable-length input arguments list. 即指的是变输入参数列表;

    varargin 就是一个输入 变量,它可以是任意个不定个数的输入参数。要求:第一,指明它用小写的字母表示;第二,在函数的参数列表中,varargin放在最后面。    当函数执行时,varargin就是一个1*n的cell数组。下面我们举例说明:

    第一个例子:

    function varlist( vargarin)
    fprintf(' Number of arguments: %d
    ',nargin);
    celldisp(varargin)
    
    varlist( ones(3), 'some text', pi)
    Number of arguments:3
    varargin{1} = 
        1    1    1
        1    1    1
        1    1    1
    varargin{2} = 
    some text
    varargin{3} = 
    3.1416

    第二个例子:

    function varlist2(x, y, varargin)
    fprintf('Total number of inputs = %d
    ', nargin);
    nVarargs = length(varargin);
    fprintf('Inputs in varargin( %d ) :
    ', nVarargs);
    for k = 1 : nVarargs
    fprintf('    %d ', varargin{k} )
    end
    
    
    
    varlist2( 10, 20, 30, 40, 50)
    Total number of inputs = 5
    Inputs in varargin(3):
    30
    40
    50
  • 相关阅读:
    spring boot 配置rabbitmq启动遇到的问题
    linux 启动rabbitmq 报错:
    spring boot 读取自定义properties文件
    jvm笔记-02-垃圾收集器与内存分配策略
    Jvm笔记-01-Java运行时数据区域与对象
    C++ 14 重载操作符与转换
    C++ 13 复制控制
    C++ 12 类
    C++ 11 泛型算法、迭代器
    android studio 问题及处理记录
  • 原文地址:https://www.cnblogs.com/yinheyi/p/5571992.html
Copyright © 2011-2022 走看看