matlabnargin用法,matlab中出現這個報錯是什麼意思 錯誤使用 nargin 您只能從 MATLAB 函式中呼叫 nargin nargout。

2021-05-02 11:24:25 字數 4038 閱讀 2099

1樓:匿名使用者

示例:1. 當前函式的輸入

在名為 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;

endend

在命令提示符下使用兩個輸入呼叫 addme 函式。

c = addme(13,42)

c = 55

使用一個輸入呼叫該函式。

c = addme(13)

c = 26

2. 為函式定義的輸入

確定一個函式可接受多少個輸入。

上一個示例中建立的 addme 函式在宣告語句中包含兩個輸入(a 和 b)。以字元向量的形式定義函式名稱,並使用它作為 nargin 的輸入。

fun = 'addme';

nargin(fun)

ans = 2

3. 使用 varargin 的函式的輸入

確定使用 varargin 的函式可接受多少個輸入。

在名為 mynewplot.m 的檔案中建立一個函式,該函式接受數值輸入 x 和 y,並使用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

負號表示第三個輸入是 varargin。mynewplot 函式可接受不定數目的附加輸入引數。

擴充套件資料:

nargin——函式輸入引數數目。

2. 語法:nargin或nargin(fun)

3. 說明:

nargin 針對當前正在執行的函式,返回函式呼叫中給定函式輸入引數的數目。該語法僅可在函式體內使用。

nargin(fun) 返回 fun 函式定義中出現的輸入引數的數目。

如果該函式定義中包含 varargin,那麼 nargin 返回輸入數目的負數。

例如,如果 myfun 函式宣告輸入 a、b 和 varargin,那麼 nargin('myfun') 返回 -3。

4. 輸入引數

fun - 函式

nargin 從該函式的定義中返回其輸入引數數目;指定為函式控制代碼、字元向量或字串標量。

2樓:核武小超人

用法nargin或者nargin(fx), 其中fx指的是一個函式名或著函式控制代碼。

當一個函式的引數中含有varargin變數時,這時候返回值為負。

例如function c = addme(a, b)switch nargincase 2

c= a + b;case 1

c = a + a

otherwise

c = 0

返回的結果為 a + b。

用到nargin(fx)

fx =addme

nargin(fx)

ans =2

當含有 varargin引數時

function mynewplot(x, y, varargin)

fx =mynewplot

nargin(fx)

ans = -3

擴充套件資料:

nargin是用來判斷輸入變數個數的函式,這樣就可以針對不同的情況執行不同的功能。通常可以用他來設定一些預設值。

nargin意為number of function input arguments,指的是一個函式的輸入變數的個數。

在matlab命令視窗中輸入help nargin或者doc nargin即可獲得該函式的幫助資訊。

nargin通過呼叫當前正在執行的函式返回輸入引數的數量,只在函式體內使用nargin語法功能。

nargin(fx)在函式fx的定義宣告中返回輸入引數的個數。如果函式包括varargin其定義,那麼nargin返回的輸入個數為負。

例如函式foo輸入有 a,b,和varargin三個引數,那麼nargin('foo」)返回值為-3。

matlab提供了兩個獲取函式引數數目的函式:nargout與nargin。在函式內部使用時,nargin 和 nargout分別表明有輸入和輸出引數數量。

若在函式外部使用, nargin 和nargout對給定的函式,表明輸入和輸出引數數量。如果一個函式有可變數量的引數,引數數量為負值。

nargin:返回函式輸入引數的數量。

nargin(fun):返回函式 fun輸入引數數量。如果函式引數數量可變,nargin 返回一個負值。fun 可以是函式名或對映函式的函式控制代碼。

nargout:返回函式輸出引數的數量。

nargout(fun):返回函式fun的輸出引數數量,fun可以使函式名或對映函式的函式控制代碼。

3樓:匿名使用者

nargin是用來判斷輸入變數個數的函式,這樣就可以針對不同的情況執行不同的功能。通常可以用他來設定一些預設值,如下面的函式。

例子,函式test1的功能是輸出a和b的和。如果只輸入一個變數,則認為另一個變數為0,如果兩個變數都沒有輸入,則預設兩者均為0。

function y=test1(a,b)if nargin==0

a=0;b=0;

elseif nargin==1

b=0;

endy=a+b;

4樓:匿名使用者

nargin是函式輸入的變數數

通常用來判斷使用者是否輸入了足夠的變數,否則報錯或者使用預設值

matlab中出現這個報錯是什麼意思?(錯誤使用 nargin 您只能從 matlab 函式中呼叫 nargin/nargout。) 10

5樓:匿名使用者

程式中的自定義函式與matlab 自帶函式 nargin/nargout重名或有衝突。建議更改自定義函式名。

6樓:匿名使用者

使用:length(varargin)來替代nargin。

varargin用來存入輸入變數,以元胞陣列形式儲存,length(varargin)獲得輸出變數長度

matlab中nargin什麼意思

7樓:鈄暄

函式輸入引數的個數。n表示numberarg表示argumentsin表示inputnargin表示number of function input arguments下面的**輸出nargin,結果為3function demoa = 1;b = 1;c = 1;fun(a,b,c);endfunction fun(a,b,c)narginend

matlab 中typecast函式的用法是什麼,一點也不懂

8樓:匿名使用者

typecast()函式的作用是在不更改基礎資料的情況下轉換資料型別。

命令格式:

y = typecast(x, datatype)將x的資料型別,如 'uint8', 'int8', 'uint16', 'int16', 'uint32', 'int32', 'uint64',

'int64', 'single', or 'double使用例項

>>x = uint32([1 255 256]);

>>y = typecast(x, 'uint8')y =    1    0    0    0  255    0    0    0    0    1    0    0

M16機槍用法,m16適合用在哪個模式機關槍

m16是垃圾,還不如用ak47 1.ak74建議不要常蹲射,要練習邊移動邊射擊,建議先打牆壁記住滑鼠施壓多少就能控制射擊時的不穩定。2.近距離與敵人交鋒ak有絕對的攻擊力,如跟敵人正面交火,建議邊移動邊射擊,避免兩人同時陣亡。ak爆頭率算高!3.中距離建議以2?5發射擊對方後,停0.x秒再射擊,ak...

keep單詞用法,keep的用法

keep doing sth 一直在做某事。keep walking 一直走 keep adj 形容詞 是保持xx,比如說,keep fit 保持苗條 像你說的keep healthing,health本身是名詞,應該不存在加 ing 變動名詞的情況吧?但keep healthy 是可以的。比如去探...

拜。。託的用法,拜。。託 的用法

拜 託 的說法是不正確的。為什麼是不正確的呢?需要分析一下 拜託 這個詞的結構。這是一個偏正式的詞。拜託的具體含義是 恭敬的託付 這樣的結構中間是不能插入其他成分的。而在你舉的例子 即 拜技術的發達之託 裡面,拜和託的詞性都有了改變,拜成了動詞,託成了名詞 不正確的用法 成了述賓式的詞。如小春水瓶座...