来源:https://ww2.mathworks.cn/help/matlab/ref/nargin.html?searchHighlight=nargin&s_tid=doc_srchtitle

 

说明

示例

nargin 针对当前正在执行的函数,返回函数调用中给定函数输入参数的数目。该语法仅可在函数体内使用。

示例

nargin(fun) 返回 fun 函数定义中出现的输入参数的数目。如果该函数定义中包含 varargin,那么 nargin 返回输入数目的负数。例如,如果 myFun 函数声明输入 abvarargin,那么 nargin('myFun') 返回 -3

 

示例

全部折叠

当前函数的输入

在名为 addme.m 的文件中创建最多可接受两个输入的函数。在函数主体中使用 nargin 确定输入数目。

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

在命令提示符下使用两个输入调用 addme 函数。

c = addme(13,42)
c = 55

使用一个输入调用该函数。

c = addme(13)
c = 26
 
 

为函数定义的输入

确定一个函数可接受多少个输入。

上一个示例中创建的 addme 函数在声明语句中包含两个输入(ab)。以字符向量的形式定义函数名称,并使用它作为 nargin 的输入。

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

使用 varargin 的函数的输入

确定使用 varargin 的函数可接受多少个输入。

在名为 mynewplot.m 的文件中创建一个函数,该函数接受数值输入 xy,并使用 varargin 返回任意数目的其他绘图输入。

type mynewplot.m
function mynewplot(x,y,varargin)
figure
plot(x,y,varargin{:})
title('My New Plot')
end

查询 newplot 可以接受多少个输入。

fx = 'mynewplot';
nargin(fx)
ans = -3

负号表示第三个输入是 vararginmynewplot 函数可接受不定数目的附加输入参数。

 
 

输入参数

全部折叠

fun - 函数 函数句柄 | 字符向量 | 字符串标量

一个函数,nargin 从该函数的定义中返回其输入参数数目;指定为函数句柄、字符向量或字符串标量。

示例: @cos

示例: 'plot'

数据类型: char | function_handle

扩展功能

C/C++ 代码生成 使用 MATLAB Coder 生成 C 代码和 C++ 代码。

用法说明和限制:

  • 对于语法 nargin(fun),如果 fun 是 C/C++ 代码生成所不支持的函数句柄或函数名称,那么 nargin 生成的代码将返回 0。

在 R2006a 之前推出

matlab中nargin函数输入参数数目的更多相关文章

  1. Matlab中 awgn 函数输入参数带有‘measured’ 时snr的含义

    MATLAB中awgn 函数可以为输入信号x 添加一定大小的噪声. out = awgn(in,snr,'measured');  是一种常见的使用方法,意思是在添加噪声前先测量一下输入信号的功率,再 ...

  2. matlab 中“newff” 函数的参数设置

    matlab 中"newff" 函数的使用方法技巧|和各参数的意义 先来一个简单的源程序让大家练习一下: % Here input P and targets T define a ...

  3. matlab中nargin函数的用法

    nargin是用来判断输入变量个数的函数,这样就可以针对不同的情况执行不同的功能. 通常可以用他来设定一些默认值,如下面的函数. 例子,函数test1的功能是输出a和b的和.如果只输入一个变量,则认为 ...

  4. 【matlab】设定函数默认参数

    C++/java/python系列的语言,函数可以有默认值,通常类似如下的形式: funtion_name (param1, param2=default_value, ...) 到了matlab下发 ...

  5. MATLAB中mexFunction函数的接口规范(转载)

    MEX文件的调用极为方便,其调用方式与MATALAB的内建函数完全相同,只需要在命令窗口内输入对应的文件名称即可. C语言MEX程序代码文件有计算子例程(Computational routine)和 ...

  6. MATLAB中mexFunction函数的接口规范

    MEX文件的调用极为方便,其调用方式与MATALAB的内建函数完全相同,只需要在命令窗口内输入对应的文件名称即可. C语言MEX程序代码文件有计算子例程(Computational routine)和 ...

  7. MATLAB中mexFunction函数的接口规范(转)

    reference:https://www.cnblogs.com/haoyul/p/5606720.html https://www.cnblogs.com/zeakey/p/3984733.htm ...

  8. MATLAB中的函数句柄及其应用

    1.函数句柄的创建 函数句柄(function handle)是MATLAB中的一类特殊的数据结构,它的地位类似于其它计算机语言里的函数对象(Javascript,Python),函数指针(C++), ...

  9. Matlab中imfilter()函数的用法

    Matlab中imfilter()函数的用法 功能:对任意类型数组或多维图像进行滤波.用法:B = imfilter(A,H) B = imfilter(A,H,option1,option2,... ...

随机推荐

  1. vagrant安装的坑

    关于VAGRANT安装过程的坑 标签: 虚拟化     闲来无聊 试试vagrant虚拟化技术 安装过程中坑太多了 所以记录下方便以后 注意: 执行 vagrant up 命令报错 如下   PS F ...

  2. vue实现pdf文件的在线预览

    我是通过 <iframe> 标签就可以满足我工作的 pdf预览需求 如果<iframe> 无法满足需求 , 可以使用pdf.js这个插件,功能强大. <iframe :s ...

  3. 用rspec执行自动化测试用例

    rspec是一款行为驱动开发(BDD)的工具,不过在这里用于测试,准确来说应该是测试驱动开发(TDD)吧.事实上我也没搞清楚.作为初学者不清楚就不清楚吧,以后会知道的.写博客无非就是写写学习笔记,不纠 ...

  4. 前端通过jqplot绘制折线图

    首先需要下载jqplot需要的js与css文件,我已近打包好了,需要的可以下载 接下来导入其中关键的js与css如下, <link href="css/jquery.jqplot.mi ...

  5. [易霖博YCTF]Web WriteUp

    中午队里师傅发到群里的比赛,借来队里师傅账号和队里其他师傅一起做了一下,ak了web,师傅们tql.学到挺多东西,总结一下. rce_nopar 进入题目给出源码: <?php if(isset ...

  6. ASP调用WEBSERVICE并对返回结果进行解析时遇到的问题

    项目上用动易平台做新闻发布网站,动易平台是用ASP做的,期间需要根据当前登录的用户,取其他系统比如OA的待办事项进行列表展示,OA组的同事给了我一个WSDL接口,百度了很多ASP调用webservic ...

  7. 实际项目中遇到EF实体类的操作问题及操作方法

    之前一直做ASP,都是直接写数据库操作语句,但是现在使用linq或者EF了,具体数据库操作不会了,遇到几个问题,然后经过查找资料解决了,记录一下. 一.遇到序列化问题 遇到循环引用问题,我的项目是一个 ...

  8. SpringBean容器启动流程+Bean的生命周期【附源码】

    如果对SpringIoc与Aop的源码感兴趣,可以访问参考:https://javadoop.com/,十分详细. 目录 Spring容器的启动全流程 Spring容器关闭流程 Bean 的生命周期 ...

  9. Thymeleaf 中如何实现including

    Problem:Jsp中有including,Thymeleaf中有无类似的语法? Solution:有,Themeleaf中提供同样功能的标签是 th:fragment="blockNam ...

  10. oracle之通过group by产生统计报告

    通过group by产生统计报告 Oracle数据库中的ROLLUP配合group by命令使用,可以提供信息汇总功能(与"小计"相似)CUBE,也是GROUP BY子句的一种扩展 ...