fprintf函数的用法_MATLAB的21种特殊符号,总有一种你不知道的用法
本文所指的特殊符号是指除了字母、数字、运算符以外的符号,包括:=;(), []:.{}''""%@~.../*!?..+。我尽量先从常见的符号说起,非新手可以跳过前面的常见符号。
1.等号=
赋值符号,不讲了,pass。对于新手,注意等号=与关系运算符==的区别。
2.分号;
分号用于语句末尾,表示禁止输出。如果一条命令的末尾无分号,MATLAB会默认将语句的第一个返回值输出到命令行窗口。注意,某些命令没有返回值,可以不加分号。
同时,创建数组时,分号用于分隔各个行向量。
A = [1;2];
A = [1,2:3,4];
另一方面,可以将多条语句写到同一行中,用分号将他们分隔开。(下面会讲到,逗号也可以,但逗号会有输出)
A = 1; B = [1;2;3;4]; C = [0,1];
3.括号()
括号用法很多,包括三种:运算优先级、函数参数、数组索引。
改变运算优先级,括号拥有最高的运算优先级。
((
将函数输入参数括起来。
plot
对一维/二维/多维数组进行索引。
A
4.逗号,
逗号用作分隔符,可以用来分隔数组下标、创建数组时分隔行元素(等同于空格)、分隔函数的多个输入/输出参数、同一行语句中分隔多个命令(显示输出)。
分隔数组下标,代码示例见第3节中对数组进行索引的部分。
创建数组时分隔行元素,此时等同于空格。
A
当函数有多个输入/输出参数时,使用逗号将各个参数之间分隔开来。
[
如果想在同一行中输入多个命令,可以用逗号分隔开来。注意,逗号会显示输出。
A
上述语句,在同一行中,A,C的赋值以逗号结尾,所以会有输出;B以分号结尾,所以没有输出。
5.空格N/A
空格作为分隔符,可以出现在变量与运算符之间,用于控制缩进,排版更美观。
A
空格在某些情况下,等价于逗号,具体场景包括:创建数组时分隔行元素;将函数的多个输出参数分隔开(不能用于分隔输入参数)。
A
6.方括号[]
方括号可以用来构造数组、创建空数组、删除数组元素、数组的串联以及将函数的多个输出参数括起来。
当方括号出现在赋值符号"="右侧时,表示为一个数组,括号内是数组的所有元素。如果方括号内没有数就表示为空数组。将数组的部分元素赋值为空数组,即表示删除了这些元素。同时,方括号内除了数字,也可以是其它已有数组变量,这时,表示将已有的数组变量串联起来。(注意,数组的维度要能串联起来,否则会报错。)
A
当方括号出现在赋值符号"="左侧时,这是一个调用函数的语句,等号右侧为函数名以及函数输入参数,左侧为函数的输出参数。对于多个输出参数,需要用方括号括起来。
[
7.冒号:
冒号是MATLAB矩阵操作最常见的符号之一。主要用途包括:生成固定间隔的行向量、对数组某个维度的部分/所有元素进行索引、将数组重构为列向量。
a:b:c表示一个N个元素的行向量,等价于[a,a+b,a+2*b,...a+N*b],其中N = fix((c-a)/b),fix表示朝0四舍五入。当b=1时,可以简写为a:c。
A
冒号用于数组索引。在索引表达式中使用冒号":"作为下标,表示特定维度的所有元素。例如,
A(:,2)
% 表示二维数组A的第2列
A(2,:)
% 表示二维数组A的第2行
同时,可以将a:b:c形式的表达式用于数组索引,表示特定维度的部分元素。
A
冒号也可以用于for循环迭代,原理与a:b:c类似。
冒号还可以将数组重构为列向量。
A
8.句点号.
句点号"."的主要作用包括:小数点、访问结构体的字段、访问对象的属性、与某些运算符结合在一起表示按元素运算。
小数点,不讲了,pass。当整数为0时,整数部分可以省略。例如".23"表示0.23。
访问结构体的某个字段,可以对该字段赋值,也可以将该字段的值赋给其它参数。简单而言,出现在等式左边,表示对该字段赋值,如果结构体不存在该字段,自动创建一个;出现在等式右边,表示将该字段的值赋给等式左侧的式子,如果结构体不存在该字段,会报错。
myStruct
访问对象属性,从R2014b开始使用,之前的版本只能使用set与get函数。
myObj
与某些运算符结合,表示对数组按元素运算。例如,"*"表示矩阵乘法,".*"表示数组元素对应相乘;一个单引号"'"表示矩阵的共轭转置,".'"表示非共轭转置。具体例子比较多,这里不细讲了。
9.花括号{}
元胞数组cell是一种比较特殊的数组,它的各个元素可以是完全不同类型值。花括号{}用于元胞数组的创建与索引。创建元胞数组时,类似于用方括号[]创建数组;索引元胞数组时,类似于用括号()索引数组。
C
10.单引号''
使用成对出现的单引号''构造char类的字符数组,字符数组默认为1×N形式的行向量。
c
11.双引号""
从R2017a开始,可以使用成对出现的双引号""构造字符串,字符串默认为1×1形式的标量,注意字符数组与字符串的区别,具体还有很多,这里不讲了。
str
12.百分号%
百分号%用于注释,其中%表示单行注释,%%表示单行注释并分节,%{和%}成对出现用于多行注释。注意%{与%}必须另起一行,单独显示。
%{
百分号%也可以用于格式化字符,具体用法跟C/C++类似,不细讲了。
fprintf
13.at符号@
@符号可以用于创建函数句柄,包括一般函数与匿名函数都可以。
f1
@符号也用于类文件夹的开头,表明该文件夹里面是一个类。比如说,默认情况下,有向图类digraph位于C:Program FilesMATLABR2019atoolboxmatlabgraphfun@digraph文件夹。
cd
14.波浪号~
波浪号~除了可以作为逻辑运算符,表示逻辑非以外,还可以作为函数输入输出参数的占位符,表示忽略该参数。
忽略函数输入。当函数必须接受预定义的一组输入,而又不使用所有输入时,可以使用该运算符。常见于定义回调函数,此处不展开。
忽略函数输出。当函数有多个输出,但某个输出值不需要时,可以将其用~代替。
[
上式中,max函数有两个输出值,第一个输出为最大值,忽略了该值,第二个输出I为最大值对应的索引号。
15.三连点(省略号)...
表示续行。当一行内语句太长,可以使用三个点...表示续行,另起一行。
y
使用...的一个好处就是可以方便的注释掉部分内容,MATLAB会忽略掉同一行中...后的内容。某些函数可能会有很多输入的参数对,调试时使用...可以方便的注释掉某些参数。以下面这个trainingOptions函数为例,
options
此时使用续行号..可以轻松忽略掉某行,(注意,不能使用%来注释,会报错)
options
16.斜杠/与反斜杠
斜杠/与反斜杠可以用于分隔路径名,在Windows系统上,二者等价,在Unix系统上,只能使用斜杠/。
cd
17.星号*
星号*作为通配符,用于对多个文件执行操作,通配符可以与任何一个或多个字符匹配。
dir
18.感叹号!
shell转义符,用于执行操作系统命令,具体见之前的文章。
https://zhuanlan.zhihu.com/p/68061545zhuanlan.zhihu.com
19.问号?
用于检索特定类名的meta.class对象,适用于类名而不是类对象。可以看到一个类都有哪些Property、Method、Event等等。
handle
20.二连点..
二连点..表示当前文件夹的父文件夹。
cd
21.加号+
加号除了做加法外,还可以指示包文件夹。以"+"开头的文件夹被认为是一个包。
cd
总结:
- 所有符号都是英文符号,中文符号会报错,注意区分。
- 很多符号都有多种用法,注意使用环境。
- 注意单引号'' 与双引号""的区别。
- 空格与逗号有相似之处,但其实差别也不小。
- ...也可以用作注释,而且应用场合更广。
最后是专栏目录:
https://zhuanlan.zhihu.com/p/64526669zhuanlan.zhihu.com
fprintf函数的用法_MATLAB的21种特殊符号,总有一种你不知道的用法相关推荐
- CmD空格转义的三种方法,总有一种会解决问题
CmD空格转义的三种方法,总有一种会解决问题 参考文章: (1)CmD空格转义的三种方法,总有一种会解决问题 (2)https://www.cnblogs.com/hoojjack/p/7010814 ...
- Java 创建对象的 6 种方式,总有一种适合你
创建对象的 6 种方式 假设有个女朋友类: @Data @NoArgsConstructor @AllArgsConstructor class GirlFriend {private String ...
- 微信怎么建群?三种方法,总有一种适合你!
微信怎么建群?说起我们常用的社交软件,微信可以说是使用人群最广泛的.很多人都拥有自己的微信账号,微信支持语音.视频聊天,除了和好友的私聊以外,我们还可以在微信中进行多人群聊. 今天小编就给大家分享一下 ...
- PLC单个自复位按钮控制指示灯的6种方法,总有一种适合你,学到就是赚到。
有时候我们需要使用一个自复位按钮来控制指示灯或其他元件的状态切换,例如,按下自复位按钮,指示灯点亮,再按下自复位按钮,指示灯熄灭,如此反复.面试时有些面试官会问及该问题. 程序分别以以台达与西门子为例 ...
- **matlab中fprintf函数简单用法**
1.fprintf函数:将数据按指定格式写入到文本文件中. 2.用法说明: fprintf(fid, format, variables): 按指定的格式将变量的值输出到屏幕或指定文件: fid为文件 ...
- C语言fscanf/fprintf函数(格式化读写文件)的用法(%[]和%n说明符)
文章目录 []基本用法 []特殊用法 %n用法 fscanf() 和 fprintf() 函数 简单示例 []基本用法 scanf() fscanf()函数,均从第一个非空格的可显示字符开始读起! 众 ...
- php fprintf,PHP fprintf()函数用法讲解
PHP fprintf() 函数 实例 把一些文本写入到名为 "test.txt" 的文本文件: $number = 9; $str = "Beijing"; ...
- fprintf函数的用法matlab_极力推荐这个Matlab教程
点击蓝字 关注我们 儿童节快乐 前些日子, 由于一些原因的需要, 又把曾经的毕业论文拿来, 改吧改吧, 发现有些地方真的惨目忍睹, 只怪当时太年轻, 没想到给自己挖了一个大坑, 不,, 应该称之为巨坑 ...
- fprintf函数的的用法
fprintf 简介 c/c++语言函数: fprintf 功 能 传送格式化输出到一个文件中 用 法 #include <stdio.h> int fprintf( FILE *stre ...
最新文章
- 委员建议开辟多种科研资助模式,呼唤“科研悬赏制”
- python二次开发攻略-ABAQUS Python二次开发攻略
- php有哪些屏蔽错误的方法,php常见的错误类型及屏蔽方法
- Akka并发编程——第二节:Actor模型(一)
- VMware竟然出了一款防火墙
- spring 多数据源-实现
- XLNET:换一个思路做预训练,效果杠杠滴
- kotlin-2(IdeaIU-2018.2汉化破解)
- 一个基于Tp3.2(thinkphp3.2)的工会管理系统
- 图灵社区python kindle_推送mobi至Kindle流程说明(简要操作)
- 嵌入式-stm32学习:使用固件库点亮LED
- xtu 1403 菱形 思路清晰
- 软件版本中的Alpha,Beta,RC,Trial是什么意思?
- DZ管理员密码找回 tools.php,DISCUZ 论坛管理员密码忘记的解决办法 Discuz! X3.2 版本Tools急诊箱工具...
- 自媒体娱乐热点素材怎么找?-即时热榜
- 苏州公安第一次用计算机,苏州破获首起非法控制计算机信息系统程序案
- 全志XR806芯片 getsockopt、setsockopt失败如何解决?
- python之pygal学习
- 一元二次方程求根公式小结
- MyBatis框架学习笔记(3)——B站动力节点
热门文章
- Python十大常用文件操作
- 用 python print() 函数实现的三个特效
- Python面向对象:反射(hasattr和getattr和setattr和delattr)
- mysql 至少有2个年龄大于40岁,在MySQL中计算年龄时出错?
- android 设置窗口透明效果,android - 如何将对话框窗口背景设置为透明,而不影响其边距...
- Html中框架的使用
- Java中的System.out.println到底是什么,而且Java源码中System.java的out是null,为什么可以调用println方法?
- Unity 3D 2019.3.12版本创建一个按钮,并为该按钮添加点击Click的消息响应函数以及点击按钮切换场景
- 问题排查:vue项目刷新页面加载了500多个请求?
- 为什么不能在SQL拼接模糊匹配符号