文章目录
- 一、语法
- 二、说明
- 三、示例
- 示例1:变量一赋多
- 示例2:变量多赋多
- 示例3:矩阵多赋多
在matlab中,变量赋值可以使用等号直接赋值,如:
复制代码
1
2
3
4
5
6
7% 直接赋值 a=2; a=1.236; a="abc"; a='a'; a= [1,2,3,4,5,6];
但是,程序涉及多变量的时候,直接赋值的方式显得非常麻烦。matlab中deal函数可用于:处理一赋多或者多赋多变量赋值的场景。
一、语法
复制代码
1
2
3
4
5
6
7[Y1, Y2, Y3, ...] = deal(X) [Y1, Y2, Y3, ...] = deal(X1, X2, X3, ...) [S.field] = deal(X) [X{:}] = deal(A.field) [Y1, Y2, Y3, ...] = deal(X{:}) [Y1, Y2, Y3, ...] = deal(S.field)
二、说明
[Y1, Y2, Y3, …] = deal(X) 将单一输入复制到请求的所有输出。它与 Y1 = X、Y2 = X、Y3 = X、… 相同
[Y1, Y2, Y3, …] = deal(X1, X2, X3, …) 与 Y1 = X1、Y2 = X2、Y3 = X3、 … 相同
三、示例
示例1:变量一赋多
复制代码
1
2
3[Y1, Y2, Y3, ...] = deal(1) %Y1=Y2=....Yn=1
示例2:变量多赋多
复制代码
1
2
3[Y1, Y2, Y3, ...] = deal(1,3,2, ...) %等价于:Y1=1;Y2=3;Y3=2....
示例3:矩阵多赋多
复制代码
1
2
3C = {rand(3) ones(3,1) eye(3) zeros(3,1)}; [a,b,c,d] = deal(C{:})
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20a = 0.9501 0.4860 0.4565 0.2311 0.8913 0.0185 0.6068 0.7621 0.8214 b = 1 1 1 c = 1 0 0 0 1 0 0 0 1 d = 0 0 0
最后
以上就是唠叨自行车最近收集整理的关于【matlab】matlab中变量赋值函数deal一、语法二、说明三、示例的全部内容,更多相关【matlab】matlab中变量赋值函数deal一、语法二、说明三、示例内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复