Calling same function shows index in position 1 exceed array bounds even having same input matrix size?

6 次查看(过去 30 天)
Hi,
I am getting error in calling the same function with different matrix (of same size).
The function is: All input matrix is of same length.
[rate1] = rate(device,BandWidth,Tx,Power1,fading1,No_power);
[rate2] = rate(device,BandWidth,Tx,Power2,fading2,No_power);
  • Note - If i change function name to rate1 and rate2. It not showing error. Donot Why??????????

采纳的回答

Voss
Voss 2021-12-31
If you do this:
[rate] = rate(device,BandWidth,Tx,Power1,fading1,No_power);
Then rate is now a variable (the output from the function rate()). And the rate() function can no longer be called by saying rate(whatever). 'whatever' is treated like indexes into the variable rate rather than like inputs to the function rate(). So you may get an error the next time you use rate.
Changing the output variable to rate1 fixes it because the function rate() is not replaced in the workspace by the variable rate.
  6 个评论
Walter Roberson
Walter Roberson 2021-12-31
编辑:Walter Roberson 2021-12-31
restoredefaultpath
rehash toolboxcache
Do the above commands once .
If the problem with getExtendedErrorCallback goes away, then there is something on your MATLAB path that is interfering with normal processing.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by