1、varargout与nargout区别

1、varargout与nargout区别

 

varargout简介:

varargout可以看做“Variable length outputargument list”的缩写。在matlab中定义m函数时通过varargout我们可以得到可变的数个返回值。在matlab命令窗口中输入doc varargout或help varargout可以获得相关帮助信息。函数申明时的输出参数。

 

用法:function varargout = foo(n)。

 

nargout简介:

 

在matlab中定义一个函数时, 在函数体内部, nargout指出了输出参数的个数。特别是在利用了可变参数列表的函数中, 用nargout获取输出参数个数很方便。

 

用法:

 

n = nargout

    n= nargout(fun)

 

 

 

2、varargin与nargin的区别

 

varargin简介:

varargin可以看做“Variable length inputargument list”的缩写。在matlab中, varargin提供了一种函数可变参数列表机制。 就是说,使用了“可变参数列表机制”的函数允许调用者调用该函数时根据需要来改变输入参数的个数。

 

用法:function y = bar(varargin)。

 

nargin简介:

 

在matlab中定义一个函数时, 在函数体内部, nargin指出了输入参数的个数。 特便是在利用了可变参数列表的函数中, 用nargin获取输入参数个数很方便。

    用法:

    n = nargin

    n = nargin(fun)

 

 

3、实例

 

function  varargout =foo(varargin)

    fprintf('How many outputarguments? %d\nAnd they are: \n', nargout);

    for k=1:nargout

    varargout(k) = varargin(k); %the same as {varargin{k}};

    fprintf('%s ',num2str(varargout{k}));

    end

    disp(' ');

    end

 

 

在matlab command中运行结果如下:

 

>>[y1,y2]=lianxi(1,2,3)

    How many output arguments? 2

    And they are:

    1 2

 

 

y1 =

 

     1

 

    y2 =

 

 

     2

 

 

>> y=lianxi(1,2,3)

    How many output arguments? 1

    And they are:

    1

y =

 

     1

strcmp


Compare strings (case sensitive)
Syntax


TF = strcmp(string,string)
TF = strcmp(string,cellstr)
TF = strcmp(cellstr,cellstr)

Description


TF = strcmp(string,string) compares two strings for equality. The strings areconsidered to be equal if the size and content of each are the same. Thefunction returns a scalar logical 1 for equality, or scalar logical 0 forinequality.

TF = strcmp(string,cellstr) compares a string with each element of a cell arrayof strings. The function returns a logical array the same size as the cellstrinput in which logical 1 represents equality. The order of the input argumentsis not important.

TF =strcmp(cellstr,cellstr) compares each element of one cell array of strings withthe same element of the other. The function returns a logical array the samesize as either cell array input.

names = fieldnames(s) 返回结构体s的字段名,将其存储在字符串元胞数组中。

names = fieldnames(obj) 返回对象obj的公共字段名到字符串元胞数组names中。MATLAB会重载fieldnames,并定义它们的行为。

names = fieldnames(obj,'-full')  返回一个字符串元胞数组,该数组包含对象obj的各字段的名称(name)、类型(type)、属性(attributes)以及继承关系(inheritance)。该函数仅支持COM对象和Java对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值