matlab中呼叫別的函式時沒出現錯誤,但是換就有錯怎麼

2021-03-31 22:34:01 字數 2538 閱讀 1863

1樓:差生一族

因為來你自

就是bai

沒有du定zhi

義啊dao

function y=chen()

syms p q r

x=[p q r];

a=35;

b=3;

c=28;

y=zeros(3,1);

syms y z

y(1)=a*(x(2)-x(1));

y(2)=(c-a)*x(1)-x(1)*x(3)+c*x(2);

y(3)=z(1)*x(2)-b*x(3);

2樓:匿名使用者

因為你就是沒有定義啊

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

3樓:匿名使用者

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

4樓:匿名使用者

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

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

matlab中function函式執行出錯,函式返回什麼值啊?

5樓:疾風動竹

給你個例子

trycatch

執行可能出錯的**

strfind判斷lasterr(上次錯誤資訊)型別

然後對錯誤進行處理

function matrix_multiply(a, b)

trya * b

catch

errmsg = lasterr;

if(strfind(errmsg, 'inner matrix dimensions'))

disp('** wrong dimensions for matrix multiply')

else

if(strfind(errmsg, 'not defined for variables of class'))

disp('** both arguments must be double matrices')

endendend

6樓:走進數理化

字串處理函式查詢出錯資訊裡是否含有關鍵字串返回值注意別和正常輸出衝突了

function matrix_multiply(a, b)trya * b %不出錯則執行

catch

errmsg = lasterr;

if(strfind(errmsg, 'inner matrix dimensions'))

-1 %例如:矩陣相乘維數不匹配,則函式值返回-1else

if(strfind(errmsg, 'undefined function or variable'))

-2 %例如:函式輸入變數未定義,則函式值返回-2endendend

7樓:匿名使用者

你看看能不能帶入一個數值檢驗一下

在matlab中執行程式時,顯示 錯誤: 此上下文中不允許函式定義。 怎麼修改?求助,謝謝!

8樓:匿名使用者

題主是把**直接貼到命令視窗裡執行的吧?

用function定義的函式必須儲存成m檔案才能執行。

如果已經儲存到m檔案,那就是在function之前還有其它**。function必須出現在有效**的最前面(所謂有效,是指不包括註釋之類的內容)。

9樓:匿名使用者

第一種可能 在命令視窗定義了函式

新建一個fungry1.m檔案 把fungry1函式放到這裡定義第二種可能 呼叫fungry1函式格式不對改為gm1=fungry1(146964 155547 169577 197083 230281 261369 286467 311442 320611 336126 360648 387043 402138 416913)

10樓:萬事勝意

matlab程式執行錯誤後,切換到matlab命令列中,觀察命令列中的錯誤資訊,確定錯誤原因。

1、你可能寫了個指令碼程式檔案,其中定義了子函式,在執行時就彈出了這個提示。一般情況下,在函式檔案中才能定義子函式,在指令碼檔案中不允許定義子函式。這是個基本的要求。

2、一個函式,包括定義和呼叫兩個過程。定義函式時的參數列稱為形式引數,呼叫函式時的引數稱為實際引數。形式引數只能是變數,不能是表示式或具體的數。

3、第一種可能 在命令視窗定義了函式,新建一個fungry1.m檔案 把fungry1函式放到這裡定義。第二種可能 呼叫fungry1函式格式不對,改為gm1=fungry1。

函式的檔案裡面可以巢狀定義函式。你把ahpinit1那個函式**拿出來單獨寫一個ahpinit1.m檔案,並和untitled2.m儲存在同一目錄下。

c 中呼叫函式地址時用函式名函式名函式名時輸出的地址一樣,他們之間什麼區別

函式名就是指函式的入口地址,函式名,函式名還是函式名,都一個意思。c語言函式名作為入口地址但是呼叫函式時只需要函式名 形參但定義指向函式的指標時需 指標變數 c語言中,所有的變數都儲存在記憶體中,可以通過 運算子獲得變數的記憶體地址,函式呼叫回時,只需要把普 答通變數前加上 符號,就可以達到傳遞變數...

matlab的呼叫的函式能不能跟函式放在m檔案中

可以的,但是呼叫函式的程式本身必須定義成一個函式。比如 被呼叫的函式是fun1,呼叫它的函式是callfun1。那麼你要新建一個callfun1.m,裡面輸入 function callfun1 不需要輸入和輸出引數,直接點執行即可執行 a 0.1 b fun a 點執行後,會直接在command ...

MATLAB程式多次呼叫函式希望把每次呼叫後得到的資料分別儲存可以實現嗎

times n n為呼叫次數 for i 1 times output i lk param end當然要根據lk的輸出情況,定義output的組織形式 可以 y用for迴圈 然後儲存到新的變數 沒有把問題說明白吧,lk.m是檔名 可以使用元胞陣列!講不通的結果賦值!在matlab裡呼叫一個函式,怎...