1
算數(shù)運算符
算數(shù)運算符和數(shù)學(xué)中的運算符基本類似,但是需要注意的是:
**a.**參加算數(shù)運算的是兩個相同類型的算數(shù),不同類型的算數(shù)不能參加運算,且運算后的結(jié)果也是同一類型;
b. 在Go語言里自增(自減)表達(dá)式只能是后自增(自減)表達(dá)式,且自增表達(dá)式獨立成行,不能參與其他運算(包括賦值)。
現(xiàn)以A=10,B=20為例,其運算結(jié)果如表1所示。
示例如下:
2
關(guān)系運算符
不同于c語言的關(guān)系運算結(jié)果為0或1,Go語言的關(guān)系運算結(jié)果為true或false。Go語言有6種關(guān)系運算,如表2所示,現(xiàn)以A=4,B=3為例,其運算結(jié)果如表2所示。
示例如下:
3
邏輯運算符
邏輯運算符有三種:與、或、非。參加邏輯運算的對象都是布爾型,其運算符和術(shù)語如表3所示。
示例如下:
4
位運算符
4.1 位運算符
與邏輯運算符的運算對象的類型都是布爾型不同,位運算符(按位與、按位或、異或、按位置零)的運算對象是兩個數(shù)的二進(jìn)制數(shù)相對應(yīng)的二進(jìn)位,位運算符(左移、右移)針對一個數(shù)的二進(jìn)制數(shù)的左移或右移。其運算方式如表4所示。
4.2 位運算對整數(shù)二進(jìn)制位進(jìn)行操作
二進(jìn)制數(shù)據(jù)是用0和1兩個數(shù)碼表示的數(shù),對兩個整數(shù)的二進(jìn)制位進(jìn)行位運算,有按位與、按位或、異或和按位置零四種,其運算規(guī)則為:
a. 按位與(p&q):當(dāng)對應(yīng)的二進(jìn)制位均為1,按位與的結(jié)果為1,否則均為0;
b. 按位或(p|q):當(dāng)對應(yīng)的二進(jìn)制位均為0,按位或的結(jié)果為0,否則均為1;
c. 異或(p^q):當(dāng)對應(yīng)的二進(jìn)制位相同(均為0或均為1),異或結(jié)果為0;不同,異或結(jié)果為1;
d. 按位置零(p&^q):如表5所示,當(dāng)q取0,則按位置零得結(jié)果和p的數(shù)據(jù)一致;當(dāng)q取1,則按位置零得結(jié)果為0。
示例如下:
5
賦值運算符
賦值運算符包含普通的賦值運算符(=),也包含先進(jìn)行算數(shù)運算(+、-、*、/、%)或位運算(&、|、^)、再進(jìn)行賦值的賦值運算符,如表6所示。
注:左移或右移的位數(shù)必須是整數(shù)型常量或整數(shù)型字面常量。
6
其他運算符
其他運算符包含取地址運算符和取值運算符,如表7所示。這些運算符在指針這一章節(jié)再詳細(xì)講解。
示例如下:
7
運算符優(yōu)先級
Go語言運算符有一元運算符和二元運算符,其中一元運算符的優(yōu)先級別比二元運算符高,如表8所示。
-
C語言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136685 -
運算符
+關(guān)注
關(guān)注
0文章
172瀏覽量
11079 -
go語言
+關(guān)注
關(guān)注
1文章
158瀏覽量
9047
發(fā)布評論請先 登錄
相關(guān)推薦
評論