-
2019-03-21 14:47:58
matlab学习-结构体数组定义
当需要定义的参数变量较多时,往往需要用到结构体,Matlab中结构体数组与python中字典概念差不多,使用方法也类似,下面详细介绍其定义方法。方法一:直接定义
直接定义,如定义
// An highlighted block students.name = 'John'; students.sex = 'Boy'; students
输出结果为 包含以下字段的 struct:
name: 'John' sex: 'Boy'
name对应字典中的key,'John’对应于字典中的value,如若增加结构体维数,可直接定义来增加结构体中变量
students(2).name = 'Amy';
students(2).sex = 'Girl';
students
此时输出结果为包含以下字段的 1×2 struct 数组:name sex
若想增加结构体中内容,可直接定义
students(1).province='Beijing';
此时结构体为包含以下字段的 1×2 struct 数组:
name sex province
打开结构体变量可看到其具体的值为
‘John’ ‘Boy’ ‘Beijing’
‘Amy’ ‘Girl’ []
对未定义的字段用[]表示,当然结构体中可包含字符串,向量,矩阵,元组,结构体等。
结构体也可像矩阵一样可自定义维数,如定义一个结构体students(2,1).name = 'LiMing';
结构体变为2×2 struct 数组.
方法二:使用struct命令
使用struct来定义,struct的定义为一个key,一个value,如struct(‘key1’,val1,‘key2’,val2,…),实例如下:
students = struct('name','John','sex','Boy','province','Beijing');
结果与方法一中一致包含以下字段的 struct:
name: 'John' sex: 'Boy' province: 'Beijing'
当需要定义多维结构体时,value用元组来表示即可,如
students = struct('name',{'John','Amy'},'sex',{'Boy','Girl'},'province',{[],'Beijing'});
注意当有未定义的val时,需用[]表示,否则会输出同一变量,此时输出为包含以下字段的 1×2 struct 数组:
name sex province
如需改变结构体的维数,只需改变元组的维数即可,如
students = struct('name',{'John';'Amy'},'sex',{'Boy';'Girl'},'province',{[];'Beijing'});
输出则为包含以下字段的 2×1 struct 数组:
name sex province
更多相关内容 -
【matlab定义结构体数组】
2021-04-18 05:12:48原Matlab新建structstruct在matlab中是用来建立结构体数组的。通常有两种用法:s=struct('field1',{},'field2',{},...)这是建立一个空的结构体,field1,field2是域名称;s=struct('field1',values1,'field2',values...原Matlab新建struct
struct在matlab中是用来建立结构体数组的。通常有两种用法:s=struct('field1',{},'field2',{},...)这是建立一个空的结构体,field1,field2是域名称;s=struct('field1',values1,'field2',values2,...)这是
原Matlab为结构体数组预分配内存
3 内存块大小的可移植性问题 分配一个整型变量数组应使用: 数组元素个数 * sizeof int 确定内存块的大小 问题:sizeof和strlen函数的区别 free函数 free函数原型: void free void * p 。一个指向一段内存的指针,除非确定这段内存原先就分配为某种结构或类型,或者这种结构或类型的数组,否则不要将它转换为这种结构或类型的指针,而应该将这段内存拷贝到一个这种结构或类型中结构体数组,再访问这个结构或类型。减值操作符663.5重复结构的程序测试673.5.1基于路径覆盖的重复结构测试673.5.2边值分析法与重复结构测试673.5.3基于因果分析的程序测试683.6在重复体内控制重复过程713.6.1跳出当前层控制结构语句break723.6.2提前结束当前重复体语句continue723.6.3实例: 求素数72习题374第2篇组 织 数 据第4单元同类型数据的聚合类型: 数组864.1一维数组864.1.1数组的特点864.1.2数组的定义874.1.3数组初始化874.1.4访问下标变量894.2二维数组904.2.1二维数组的概念904.2.2二维数组的初始化914.2.3访问二维数组元素924.3字符串934.3.1字符串字面量934.3.2字符串变量944.3.3字符串的输入/输出954.3.4字符串操作库函数98习题4102第5单元描述一类对象属性的聚合类型: 结构体和共用体1075.1结构体类型与结构体变量1075.1.1结构体类型及其定制1075.1.2结构体变量的声明与初始化1085.1.3结构体变量及其分量的应用1095.2用结构体数组存储一组1115.2.1结构体数组的定义与初始化1115.2.2结构体数组元素的访问1125.3共用体类型1145.3.1共用体类型的定制与共用体变量的定义1145.3.2共用体类型与结构体类型的比较1155.3.3共用体变量的应用117习题5118第6单元指针1246.1指针类型与指针变量1246.1.1指针=基类型+地址1246.1.2同类型指针间的赋值与判等操作1266.1.3指针的递引用1276.1.4悬空指针。
转关于MATLAB中结构数组的使用
转载出处:结构(struct)数组要在MALTAB中实现比较复杂的编程,就不能不用struct类型。而且在MATLAB中实现struct比C中更为方便。4.3.1结构数组的创建MA
原matlab ---结构数组
结构数组的创建使用点号(.)运算符创建>>patient.name='JohnDoe'patient=name:'JohnDoe'>>patient.billing=127patient=name:'JohnDoe'billing:127&am
原MATLAB结构体
结构体1.isstruct函数:判断某变量是否是结构类型2.fieldnames:获取结构的字段名3.isfield:判断输入是否为结构体的域(成员)4.getfield:获取结构中指定字段的值5.rmfield:删除结构的字段(不是字段内容)...
原Matlab中结构体Struct使用
1、结构体数组创建创建结构体数组有两种方式,分别为直接创建和使用struct函数1.1直接创建直接定义字段结构体数组,像使用一般matlab变量一样,不需要事先声明,支持动态扩充。下面创建一个Student结构体数组:Student.name='wangx';Student.sex='Male';
原Matlab-结构体数组的索引
%%结构体数组的索引(StructureArray)%注意:结构体的创建与矩阵/元胞数组不同,元胞数组以元胞的方式进行储存,而结构体是以fields储存的(而不是以对象个数储存的)%所以元胞数组创建时,提供元胞的大小,而结构体的创建%%1.n*1的结构体数组imname=dir(['C:\Users
原Matlab基础之单元数组和结构数组
前言:单元数组和结构数组是一种新的数据类型,能将不同类型、不同维数的数组组合在一起,从而方便对不同的数据类型方便管理和维护。一、单元数组(细胞数组)
转matble中建立结构体数组、sort的排序
我们可以设置一结构数组huffcode 用来存放各字符的哈夫曼编码信息,数组元素的结构如下:。简单的来说,结构体就是一个可以包含不同数据类型的一个结构,它是一种可以自己定义的数据类型,它的特点和数组主要有两点不同,首先结构体可以在一个结构中声明不同的数据类型,第二相同结构的结构体变量是可以相互赋值的,而数组是做不到的,因为数组是单一数据类型的数据集合,它本身不是数据类型(而结构体是),数组名称是常量指针,所以不可以做为左值进行运算,所以数组之间就不能通过数组名称相互复制了,即使数据类型和数组大小完全相同。bean 的write标记是用来将属性输出的,name用来匹配iterate的id,property用来匹配相应类的属 性用法详解22007-04-04 20:34标记用于在页面中创建一个循环,以此来遍历如数组、collection、map这样的对象。
原MATLAB 定义结构体数组 并存到mat 文件 读取mat
MATLAB定义结构体数组:foruu=1:50sssss=svmtrain(Training,Group,Name,Value);%一个结构体变量,可以是动态的,也可以是定值这里是SVMStruct型的结构体变量ddd(uu).str=sssss;%创立并存到结构体数组中end这样就定义了
原Matlab 结构体数组
两种定义结构体的方式:直接引用和使用struct函数直接引用1.建立struct对象不需要事先声明,直接使用就行x.real=0;%创建字段(field)名为real,并为该字段赋值为0x.imag=0%为x创建一个新的字段imag,并为该字段赋值为0x=real:0imag:02.struct数组
原matlab结构体数组定义方法
matlab学习-结构体数组方法一:方法二当需要定义的参数变量较多时,往往需要用到结构体,Matlab中结构体数组与python中字典概念差不多,使用方法也类似,下面详细介绍其定义方法。方法一:直接定义,如定义//Anhighlightedblockstudents.name='John';stud
原matlab结构体数组获取变量名
sheetnames_nf=fieldnames(data.data);name1=sheetnames_nf{1};name2=sheetnames_nf{2};normal_data=getfield(data.data,name1);
转Matlab定义子函数
上篇博客介绍了在Matlab中自己定义简单函数的方法,本篇博客将介绍定义子函数的方法。本文承接上篇博客的样例,即随机生成一个3行4列的矩阵,矩阵中的元素设定上下限为(low,high)。并返回矩阵全部元素的和。.m文件代码例如以下所看到的:function[a,s]=myRand(low,high)
原matlab类与对象的定义
文件夹名一样
转matlab的小定义
%%常见通用命令P28%clc清除命令窗口的显示内容%clear清除Matlab工作空间中保存的变量%clear+变量名清理内存指定变量%clf清除图形窗口clearfigure%who显示当前...
Matlab 结构体数组
两种定义结构体的方式:直接引用和使用struct函数直接引用1.建立struct对象不需要事先声明,直接使用就行x.real=0;%创建字段(field)名为real,并为该字段赋值为0x.imag=0%为x创建一个新的字段imag,并为该字段赋值为0x=real:0imag:02.struct数组
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-106811-1.html
-
在MATLAB中定义结构体数组 -- 支持代码生成
2020-04-27 20:02:37MATLAB中定义结构体数组 最近使用MATLAB代码生成,结构体数组的问题困扰许久,先将支持代码生成的结构体数组创建方法总结如下,主要参考MATLAB帮助文档。 0. MATLAB中的结构体 结构体是使用被称为字段的数据容器将...MATLAB中定义结构体数组
最近使用MATLAB代码生成,结构体数组的问题困扰许久,先将支持代码生成的结构体数组创建方法总结如下,主要参考MATLAB帮助文档。
0. MATLAB中的结构体
结构体是使用被称为字段的数据容器将相关数据组合在一起的一种数据类型。每个字段都可以包含任意类型或任意大小的数据。
例:
将患者记录存储在含有字段 name、billing 和 test 的标量结构体中。
patient.name = 'John Doe'; patient.billing = 127.00; patient.test = [79, 75, 73; 180, 178, 177.5; 220, 210, 205]; patient
patient = struct with fields: name: 'John Doe' billing: 127 test: [3x3 double]
1.添加下标创建数组
通过在数组名称后添加下标,可在此数组中添加其他患者的记录。
patient(2).name = 'Ann Lane'; patient(2).billing = 28.50; patient(2).test = [68, 70, 68; 118, 118, 119; 172, 170, 169]; patient
patient=2×3 struct name billing test
数组中的每条患者记录都是 struct 类的结构体。由结构体构成的数组通常称为结构体数组。与其他 MATLAB 数组类似,结构体数组可以具有任意维度。
结构体数组具有下列属性:- 数组中的所有结构体都具有相同数目的字段。
- 所有结构体都具有相同的字段名称。
- 不同结构体中的同名字段可包含不同类型或大小的数据。
数组中新结构体的任何未指定字段均包含空数组。
patient(3).name = 'New Name'; patient(3)
ans = struct with fields: name: 'New Name' billing: [] test: []
这种创建结构体数组的方式,很MATLAB,也是最方便的方式;然鹅,这种方式定义的结构体数组并不支持代码生成。
下面介绍支持代码生成的结构体数组创建方式。2.支持代码生成的结构体数组创建
2.0 字段的一致性要求
对于代码生成,创建 MATLAB® 结构体数组时,数组元素中的对应字段必须具有相同的大小、类型和复/实性。这句话看不懂没关系,继续往下看,就能懂了。
2.1使用 repmat 定义结构体数组
使用 MATLAB repmat 函数从标量结构体创建结构体数组,该函数将复制并平铺现有标量结构体:
三步:- 创建一个标量结构体;
- 调用 repmat,传递标量结构体和数组的维度;
- 使用标准数组索引和结构体圆点表示法为每个结构体赋值。
例如,创建一个 1×3 标量结构体数组 X。数组中的每个元素都由结构体 s 定义,该结构体有两个字段,a 和 b。
%%%%1.创建一个标量结构体; s.a = 0;%%double类型 s.b = 'a';%%char类型 %%%% 2.调用 repmat,传递标量结构体和数组的维度; X = repmat(s,1,3);%% 1×3的数组 %%%% 3.使用标准数组索引和结构体圆点表示法为每个结构体赋值。 X(1).a = 1;%%给数组索引(1)的字段a赋值,double类型 X(1).b = 'a';%%给数组索引(1)的字段b赋值,char类型 X(2).a = 2; X(2).b = 'b'; X(3).a = 3; X(3).b = 'c';
完成定义,输出验证。
>> X.a ans = 1 ans = 2 ans = 3 >> X.b ans = 'a' ans = 'b' ans = 'c'
2.2使用 struct 定义结构体数组
要使用 struct 函数创建结构体数组,需要将字段值参数指定为元胞数组。每个元胞数组元素都是对应结构体数组元素中字段的值(如上文中的X,X.a的“a”即为字段,1 or 2 or 3 为“a”字段的值;同理“b”也为字段,a or b or c为“b”字段的值)。对于代码生成,结构体中的对应字段必须具有相同的类型。因此,字段值的元胞数组内的元素必须具有相同的类型。
例如,以下代码同样会创建一个 1×3 结构体数组。对于结构体数组中的每个结构体,a 的类型为 double,b 的类型为 char。
X = struct('a', {1 2 3}, 'b', {'a' 'b' 'c'}); %%%%{1 2 3}、{'a' 'b' 'c'}为元胞数组, %%%%{1 2 3}内具有相同的double类型, %%%%{'a' 'b' 'c'}内具有相同的char类型
完成定义,输出验证。
clear; ans = 1 ans = 2 ans = 3 >> X.b ans = 'a' ans = 'b' ans = 'c'
2.3使用串联定义结构体数组
要创建小型结构体数组,可以使用方括号 ( [ ] ) 作为串联运算符将一个或多个结构体联接到一个数组中。请参阅创建、串联和扩展矩阵 (MATLAB)。对于代码生成,您串联的结构体必须具有相同的大小、类和复/实性。
例如,以下代码使用串联和局部函数来创建 1×3 结构体数组的元素:
新建一个m函数:
function s = sab(a,b) s.a = a; s.b = b;
使用命令:
X = [ sab(1,'a') sab(2,'b') sab(4,'c') ];
结果与上述两种方式一致。
表述若有错误欢迎指正。本文主要参考MATLAB帮助文档1 MATLAB帮助文档2。
-
结构体数组及其定义和使用,C语言结构体数组详解
2021-04-25 14:09:50一个结构体变量可以存放一个学生的一组信息,可是如果有 10 个学生呢?难道要定义 10 个结构体变量吗?难道上面的程序要复制和粘贴 10 次吗?...定义结构体数组的方法很简单,同定义结构体变量是一样的,...一个结构体变量可以存放一个学生的一组信息,可是如果有 10 个学生呢?难道要定义 10 个结构体变量吗?难道上面的程序要复制和粘贴 10 次吗?
很明显不可能,这时就要使用数组。结构体中也有数组,称为结构体数组。它与前面讲的数值型数组几乎是一模一样的,只不过需要注意的是,结构体数组的每一个元素都是一个结构体类型的变量,都包含结构体中所有的成员项。
定义结构体数组的方法很简单,同定义结构体变量是一样的,只不过将变量改成数组。或者说同前面介绍的普通数组的定义是一模一样的,如:
struct STUDENT stu[10];
这就定义了一个结构体数组,共有 10 个元素,每个元素都是一个结构体变量,都包含所有的结构体成员。
结构体数组的引用与引用一个结构体变量在原理上是一样的。只不过结构体数组中有多个结构体变量,我们只需利用 for 循 环一个一个地使用结构体数组中的元素。
下面编写一个程序,编程要求:从键盘输入 5 个学生的基本信息,如姓名、年龄、性别、学号,然后将学号最大的学生的基本信息输出到屏幕。
# include
# include
struct STU
{
char name[20];
int age;
char sex;
char num[20];
};
void OutputSTU(struct STU stu[5]); //函数声明, 该函数的功能是输出学号最大的学生信息
int main(void)
{
int i;
struct STU stu[5];
for (i=0; i<5; ++i)
{
printf("请输入第%d个学生的信息:", i+1);
scanf ("%s%d %c%s", stu[i].name, &stu[i].age, &stu[i].sex, stu[i].num);/*%c前面要加空格, 不然输入时会将空格赋给%c*/
}
OutputSTU(stu);
return 0;
}
void OutputSTU(struct STU stu[5])
{
struct STU stumax = stu[0];
int j;
for (j=1; j<5; ++j)
{
if (strcmp(stumax.num, stu[j].num) < 0) //strcmp函数的使用
{
stumax = stu[j];
}
}
printf("学生姓名:%s 学生年龄:%d 学生性别:%c 学生学号:%s\n", stumax.name, stumax.age, stumax.sex, stumax.num);
}
输出结果是:
请输入第1个学生的信息:小红 22 F Z1207031
请输入第2个学生的信息:小明 21 M Z1207035
请输入第3个学生的信息:小七 23 F Z1207022
请输入第4个学生的信息:小欣 20 F Z1207015
请输入第5个学生的信息:小天 19 M Z1207024
学生姓名:小明 学生年龄:21 学生性别:M 学生学号:Z1207035
结构体数组定义时初始化
结构体数组的初始化与前面讲的数值型数组的初始化是一模一样的,数值型数组初始化的方法和需要注意的问题在结构体数组的初始化中同样适用,因为不管是数值型数组还是结构体数组都是数组。下面就将前面的一个程序修改一下。
# include
# include
struct STU
{
char name[20];
int age;
char sex;
char num[20];
};
void OutputSTU(struct STU stu[5]); //函数声明
int main(void)
{
struct STU stu[5] = {{"小红", 22, 'F', "Z1207031"}, {"小明", 21, 'M', "Z1207035"}, {"小七", 23, 'F', "Z1207022"}, {"小欣", 20, 'F', "Z1207015"}, {"小天", 19, 'M', "Z1207024"}};
OutputSTU(stu);
return 0;
}
void OutputSTU(struct STU stu[5])
{
struct STU stumax = stu[0];
int j;
for (j=1; j<5; ++j)
{
if (strcmp(stumax.num, stu[j].num) < 0)
{
stumax = stu[j];
}
}
printf("学生姓名:%s 学生年龄:%d 学生性别:%c 学生学号:%s\n", stumax.name, stumax.age, stumax.sex, stumax.num);
}
输出结果是:
学生姓名:小明 学生年龄:21 学生性别:M 学生学号:Z1207035
注意,字符要用单引号括起来,字符串要用双引号括起来。
-
matlab之结构体数组struct
2021-04-18 13:42:57以下内容来自于:...4. 3.1 结构数组的创建MATLAB提供了两种定义结构的方式:直接法和使用struct函数法。1. 使用直接引用方式定义结构与建立数值型数组一样,... -
matlab结构体数组引用
2021-04-20 08:44:51函数来构造 table 对象 o 通过转换函数构造 table 对象 访问 table 中的数据 MATLAB 常用基本数据类型有:整型,浮点型,字符型,函数句柄,元胞数组和 结构体数组。...结构体类型是一种由若干属性(field)组成的MATLAB... -
matlab结构体数组排序
2021-04-24 14:31:11(完整版)Matlab实验5选择结构程序结构...结构体在matlab中的应用_数学_自然科学_专业资料。结构 (struct) 数组 要在 MALTAB 中实现比较复杂的编程,就不能不用 struct 类型。而且在 MAτLAB 中实现阳......三) 项目名... -
MATLAB批量处理结构体数组方法
2021-01-05 18:59:07当遇到结构体数组,而且需要对该结构体下相同字段的做一些批量操作时,一般的方法是进行for循环,但是这样看起来不太优雅。 批量操作结构体数组中特定的字段 下面介绍一种快捷实用的方法: 例如,现在有结构体 ... -
matlab 怎么建立结构体数组?
2021-04-24 14:57:14初识 Html51.1认识... HTML5定义了一系列 ...【DP】斜率优化斜率优化 入门题:PKU3709 很多人貌似都是做这道题来K斜率优化的,所以看了资料以后还是开始入手吧. 然而还是得跪求大神的程序啊 ORZ ORZ…… 其实理... -
MATLAB中的结构体数组(struct)学习笔记
2021-03-13 10:19:24MATLAB,结构体数组 -
Matlab为结构体数组预分配内存
2018-10-17 14:06:38在编写一个循环来给结构体数组中的某个结构体单元赋值时,matlab会提示“变量‘xxx’似乎会随着迭代次数而改变,请预分配内存以提高算法效率”。下面介绍一种预分配内存的方式: 首先,应该先定义好结构体数组中的... -
MATLAB 定义结构体数组 并存到mat 文件 读取mat
2013-12-15 12:51:28MATLAB 定义结构体数组: for uu=1:50 sssss=svmtrain(Training,Group,Name,Value);%一个结构体变量,可以是动态的,也可以是定值这里是SVMStruct型的结构体变量 ddd(uu).str= sssss ; % 创立并存到... -
matlab多维数组、结构体数组
2020-03-22 21:43:461、多维数组 第三维称为页,需要注意的是每一页存放的二维数组维度要一致,也就是行列数要一致。。。 1 2 3 4 5 6 7 a=[1,2; 3,4]; b=[2,2; 5,6]; A(:,:,... -
matlab结构体、数组和单元数组类型的创建
2021-01-18 15:38:23文章目录matlab结构体、数组和单元数组类型的创建matlab结构体类型数组类型单元数组类型 matlab结构体类型 通过字段赋值创建结构体 创建格式: 结构体名称.字段名称 样例: >> student.name='Alan'; >&... -
元胞数组与结构体数组
2021-04-22 10:19:10结构体数组结构体数组中数据包含在可按名称访问的字段中。例如,将患者记录存储在一个结构体数组中。patient(1).name = 'John Doe';patient(1).billing = 127.00;patient(1).test = [79, 75, 73; 180, 178, 177.5; ... -
如何初始化结构体数组(内嵌结构体)
2021-05-23 00:45:15Keil 结构体变量初始化tujidi1csd25142016-09-30一维数组结构体数组结构体数组,通过改变指针类型改变访问数组的方式toto129748850424332014-08-01mfc结构体指针、结构体数组指针u01399024812292014-12-14memset... -
Matlab调用Dll,对于自定义结构体数组如何传参? - 程序语言 - 小木虫 - 学术 科研 互动社区
2021-05-24 04:07:22%[例子1]% Matlab调用DLL,整形数组传参v = [1,22,33;44,-56,67];...m(4) % 访问数组中第4个值%[例子2]% Matlab调用DLL,自定义结构体数组传参% 自定义结构体如下:% typedef struct% {% double x;% ... -
按照元素指定条件筛选结构体数组
2020-04-15 23:34:47按照元素指定条件筛选结构体数组 觉得有用的话,欢迎一起讨论相互学习~ 定义一个类 classdef Chromosome properties skill_factor; end Chromosome类有一个属性 根据Chromosome类生成N个对象 这里假设N==6,... -
Matlab 结构体数组
2015-01-06 12:13:36两种定义结构体的方式:直接引用和使用struct函数 直接引用 1. 建立struct对象不需要事先声明,直接使用就行 x.real = 0; % 创建字段(field)名为real,并为该字段赋值为0 x.imag = 0 % 为x创建一个新的字段imag... -
matble中建立结构体数组、sort的排序
2017-05-23 14:40:25struct在matlab中是用来建立结构体数组的。通常有两种用法: s = struct('field1',{},'field2',{},...) 这是建立一个空的结构体,field1,field2是域名称 s = struct('field1',values1,'field2',values2,...... -
结构体内容引用自非结构体数组对象axes(handles.axes1)
2020-05-20 22:35:05Matlab结构体内容引用自非结构体数组对象matlab的gui报错axes(handles.axes1)如何解决起因代码 matlab的gui报错axes(handles.axes1) 废话不多说,直接上bug 如何解决 特别简单,我们运行GUI的.m文件,而不是双击... -
怎么删除结构体数组中的一组数据_数据结构-栈
2020-12-17 13:39:57数据结构-栈1)栈的定义. 栈是只能通过访问它的一端来实数据存储和检索的一种线性数据结构,逻辑结构和线性表相同。特点在于运算有所限制:即主要特征是“后进先出”(先进后出)。在栈中进行插入和删除操作的一端... -
用结构体数组存储学生信息,输入学生学号,查询相应的成绩
2021-02-05 22:08:40用结构体数组存储学生信息,输入学生学号,查询相应的成绩 主要是熟练一下结构体的运用,思路:先存储学生信息,然后做相应的查询,在存储过程中,设置以#为结束标志,在查找过程中,同样以#为结束标志,这里用到了...