fprintf函数的用法_MATLAB的21种特殊符号,总有一种你不知道的用法
本文所指的特殊符號是指除了字母、數(shù)字、運算符以外的符號,包括:=;(), []:.{}''""%@~.../*!?..+。我盡量先從常見的符號說起,非新手可以跳過前面的常見符號。
1.等號=
賦值符號,不講了,pass。對于新手,注意等號=與關系運算符==的區(qū)別。
2.分號;
分號用于語句末尾,表示禁止輸出。如果一條命令的末尾無分號,MATLAB會默認將語句的第一個返回值輸出到命令行窗口。注意,某些命令沒有返回值,可以不加分號。
同時,創(chuàng)建數(shù)組時,分號用于分隔各個行向量。
A = [1;2]; A = [1,2:3,4];另一方面,可以將多條語句寫到同一行中,用分號將他們分隔開。(下面會講到,逗號也可以,但逗號會有輸出)
A = 1; B = [1;2;3;4]; C = [0,1];3.括號()
括號用法很多,包括三種:運算優(yōu)先級、函數(shù)參數(shù)、數(shù)組索引。
改變運算優(yōu)先級,括號擁有最高的運算優(yōu)先級。
((將函數(shù)輸入?yún)?shù)括起來。
plot對一維/二維/多維數(shù)組進行索引。
A4.逗號,
逗號用作分隔符,可以用來分隔數(shù)組下標、創(chuàng)建數(shù)組時分隔行元素(等同于空格)、分隔函數(shù)的多個輸入/輸出參數(shù)、同一行語句中分隔多個命令(顯示輸出)。
分隔數(shù)組下標,代碼示例見第3節(jié)中對數(shù)組進行索引的部分。
創(chuàng)建數(shù)組時分隔行元素,此時等同于空格。
A當函數(shù)有多個輸入/輸出參數(shù)時,使用逗號將各個參數(shù)之間分隔開來。
[如果想在同一行中輸入多個命令,可以用逗號分隔開來。注意,逗號會顯示輸出。
A上述語句,在同一行中,A,C的賦值以逗號結尾,所以會有輸出;B以分號結尾,所以沒有輸出。
5.空格N/A
空格作為分隔符,可以出現(xiàn)在變量與運算符之間,用于控制縮進,排版更美觀。
A空格在某些情況下,等價于逗號,具體場景包括:創(chuàng)建數(shù)組時分隔行元素;將函數(shù)的多個輸出參數(shù)分隔開(不能用于分隔輸入?yún)?shù))。
A6.方括號[]
方括號可以用來構造數(shù)組、創(chuàng)建空數(shù)組、刪除數(shù)組元素、數(shù)組的串聯(lián)以及將函數(shù)的多個輸出參數(shù)括起來。
當方括號出現(xiàn)在賦值符號"="右側(cè)時,表示為一個數(shù)組,括號內(nèi)是數(shù)組的所有元素。如果方括號內(nèi)沒有數(shù)就表示為空數(shù)組。將數(shù)組的部分元素賦值為空數(shù)組,即表示刪除了這些元素。同時,方括號內(nèi)除了數(shù)字,也可以是其它已有數(shù)組變量,這時,表示將已有的數(shù)組變量串聯(lián)起來。(注意,數(shù)組的維度要能串聯(lián)起來,否則會報錯。)
A當方括號出現(xiàn)在賦值符號"="左側(cè)時,這是一個調(diào)用函數(shù)的語句,等號右側(cè)為函數(shù)名以及函數(shù)輸入?yún)?shù),左側(cè)為函數(shù)的輸出參數(shù)。對于多個輸出參數(shù),需要用方括號括起來。
[7.冒號:
冒號是MATLAB矩陣操作最常見的符號之一。主要用途包括:生成固定間隔的行向量、對數(shù)組某個維度的部分/所有元素進行索引、將數(shù)組重構為列向量。
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冒號用于數(shù)組索引。在索引表達式中使用冒號":"作為下標,表示特定維度的所有元素。例如,
A(:,2) % 表示二維數(shù)組A的第2列 A(2,:) % 表示二維數(shù)組A的第2行同時,可以將a:b:c形式的表達式用于數(shù)組索引,表示特定維度的部分元素。
A冒號也可以用于for循環(huán)迭代,原理與a:b:c類似。
冒號還可以將數(shù)組重構為列向量。
A8.句點號.
句點號"."的主要作用包括:小數(shù)點、訪問結構體的字段、訪問對象的屬性、與某些運算符結合在一起表示按元素運算。
小數(shù)點,不講了,pass。當整數(shù)為0時,整數(shù)部分可以省略。例如".23"表示0.23。
訪問結構體的某個字段,可以對該字段賦值,也可以將該字段的值賦給其它參數(shù)。簡單而言,出現(xiàn)在等式左邊,表示對該字段賦值,如果結構體不存在該字段,自動創(chuàng)建一個;出現(xiàn)在等式右邊,表示將該字段的值賦給等式左側(cè)的式子,如果結構體不存在該字段,會報錯。
myStruct訪問對象屬性,從R2014b開始使用,之前的版本只能使用set與get函數(shù)。
myObj與某些運算符結合,表示對數(shù)組按元素運算。例如,"*"表示矩陣乘法,".*"表示數(shù)組元素對應相乘;一個單引號"'"表示矩陣的共軛轉(zhuǎn)置,".'"表示非共軛轉(zhuǎn)置。具體例子比較多,這里不細講了。
9.花括號{}
元胞數(shù)組cell是一種比較特殊的數(shù)組,它的各個元素可以是完全不同類型值。花括號{}用于元胞數(shù)組的創(chuàng)建與索引。創(chuàng)建元胞數(shù)組時,類似于用方括號[]創(chuàng)建數(shù)組;索引元胞數(shù)組時,類似于用括號()索引數(shù)組。
C10.單引號''
使用成對出現(xiàn)的單引號''構造char類的字符數(shù)組,字符數(shù)組默認為1×N形式的行向量。
c11.雙引號""
從R2017a開始,可以使用成對出現(xiàn)的雙引號""構造字符串,字符串默認為1×1形式的標量,注意字符數(shù)組與字符串的區(qū)別,具體還有很多,這里不講了。
str12.百分號%
百分號%用于注釋,其中%表示單行注釋,%%表示單行注釋并分節(jié),%{和%}成對出現(xiàn)用于多行注釋。注意%{與%}必須另起一行,單獨顯示。
%{百分號%也可以用于格式化字符,具體用法跟C/C++類似,不細講了。
fprintf13.at符號@
@符號可以用于創(chuàng)建函數(shù)句柄,包括一般函數(shù)與匿名函數(shù)都可以。
f1@符號也用于類文件夾的開頭,表明該文件夾里面是一個類。比如說,默認情況下,有向圖類digraph位于C:Program FilesMATLABR2019atoolboxmatlabgraphfun@digraph文件夾。
cd14.波浪號~
波浪號~除了可以作為邏輯運算符,表示邏輯非以外,還可以作為函數(shù)輸入輸出參數(shù)的占位符,表示忽略該參數(shù)。
忽略函數(shù)輸入。當函數(shù)必須接受預定義的一組輸入,而又不使用所有輸入時,可以使用該運算符。常見于定義回調(diào)函數(shù),此處不展開。
忽略函數(shù)輸出。當函數(shù)有多個輸出,但某個輸出值不需要時,可以將其用~代替。
[上式中,max函數(shù)有兩個輸出值,第一個輸出為最大值,忽略了該值,第二個輸出I為最大值對應的索引號。
15.三連點(省略號)...
表示續(xù)行。當一行內(nèi)語句太長,可以使用三個點...表示續(xù)行,另起一行。
y使用...的一個好處就是可以方便的注釋掉部分內(nèi)容,MATLAB會忽略掉同一行中...后的內(nèi)容。某些函數(shù)可能會有很多輸入的參數(shù)對,調(diào)試時使用...可以方便的注釋掉某些參數(shù)。以下面這個trainingOptions函數(shù)為例,
options此時使用續(xù)行號..可以輕松忽略掉某行,(注意,不能使用%來注釋,會報錯)
options16.斜杠/與反斜杠
斜杠/與反斜杠可以用于分隔路徑名,在Windows系統(tǒng)上,二者等價,在Unix系統(tǒng)上,只能使用斜杠/。
cd17.星號*
星號*作為通配符,用于對多個文件執(zhí)行操作,通配符可以與任何一個或多個字符匹配。
dir18.感嘆號!
shell轉(zhuǎn)義符,用于執(zhí)行操作系統(tǒng)命令,具體見之前的文章。
https://zhuanlan.zhihu.com/p/68061545?zhuanlan.zhihu.com19.問號?
用于檢索特定類名的meta.class對象,適用于類名而不是類對象。可以看到一個類都有哪些Property、Method、Event等等。
handlehandle類20.二連點..
二連點..表示當前文件夾的父文件夾。
cd21.加號+
加號除了做加法外,還可以指示包文件夾。以"+"開頭的文件夾被認為是一個包。
cd總結:
最后是專欄目錄:
https://zhuanlan.zhihu.com/p/64526669?zhuanlan.zhihu.com總結
以上是生活随笔為你收集整理的fprintf函数的用法_MATLAB的21种特殊符号,总有一种你不知道的用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python ctypes 回调函数_P
- 下一篇: python调用第三方软件发信代码_【I