Matlab里中括号[]的作用

举个例子:y=exp(x^2);eval(['@(x)',vectorize(y)]);eval函数里面中括号[]起的作用是什么?为什么必须加中括号?另外能总体说一下MA... 举个例子:
y = exp(x^2);
eval( [ '@(x)' , vectorize(y) ]);
eval函数里面中括号[]起的作用是什么? 为什么必须加中括号?

另外能总体说一下MATLAB中()、[]、{}的作用就更完美了!

在此先多谢大神指点!
另外那个eval函数里的[]可否换成()或者{} ?

为什么会有()、[]、{}都出现在matlab中? 感觉matlab将不同括号作为不同用法有些复杂化了 尤其在cell中 为什么不将其都用()或者{}表示?
展开
 我来答
南霸天mxw
推荐于2017-10-10 · 知道合伙人教育行家
南霸天mxw
知道合伙人教育行家
采纳数:6329 获赞数:169958
本人毕业于河西学院计算机系,本科学位,自2008年毕业以来任九年级数学教师至今。

向TA提问 私信TA
展开全部
Matlab 方括号“[ ]”的作用:
1、定义矩阵(向量,数组):
例如: a=[1 2 3;4 5 6]
2、定义函数的返回参数列表(输出变量常量):
例如: [m,n]=size(a)
如果函数的返回参数只有一个,中括号一般省略。即
[n]=rand(1,2);可写作:n=rand(1,2)。
匿名用户
2014-09-25
展开全部
你觉得它复杂是因为你不懂matlab。你想用汉语理解它是很困难的。
matlab喜欢vector。vector用[ ]来表示。
括号( )一般是用于input argument,以及数学运算中的括号运算。

Nate
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一名有树枝的ikun
推荐于2017-09-29 · 超过21用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:32.6万
展开全部
怎么说呢,首先eval函数可以用[],但是MATLAB并不推荐:
“Whenever possible, do not include output arguments within the input to the eval function, such as eval(['output = ',expression]).”

其次,这个例子大概是运算x.^2运算,并赋予句柄,太无聊了。。。

小括号用来调用cell,比如a(2,3),2行3列的元素;中括号用来赋值元素比如 a=[1,2,3;4,5,6]; 大括号不太常用,具体可以看下面链接。这么处理简单明了不会有歧义,这点就复杂,呵呵。

http://blog.sina.com.cn/s/blog_618af1950100lbc3.html
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式