3.1 保留字
僅25個keyword
3.2 運(yùn)算符
優(yōu)先級:一元>二元
二元運(yùn)算符:除位移操作怜瞒,操作數(shù)類型必須相同,若其一無顯式聲明,會自動轉(zhuǎn)型
位運(yùn)算符
XOR:按位異或,只有一個1
AND NOT:按位清楚(bit clear)
自增
不再是運(yùn)算符腔丧,只能作為獨(dú)立語句放椰,不能用于表達(dá)式
指針
內(nèi)存地址是內(nèi)存中每個字節(jié)單元的唯一標(biāo)號,指針則是一個實(shí)體愉粤,是一個專門用來保存地址的整型變量砾医。
- 取址:&,獲取對象地址
- 指針:*衣厘,間接引用目標(biāo)對象
- 二級指針:**
3.3 初始化
對復(fù)合類型變量初始化時如蚜,語法限制:
- 初始化表達(dá)式必須含類型標(biāo)簽
var a data = data{1, "abc"}
- 左花括號必須在類型尾部,不能另起
- 多個成員初始值以逗號分隔
- 允許多行影暴,但每行須以逗號或右花括號結(jié)束
3.4流控制
if...else...
- 支持初始化語句错邦,可定義塊局部變量或執(zhí)行初始化函數(shù)
- 保持代碼塊功能的單一性
switch
- 多個匹配條件命中一,即可OR
- 支持初始化語句
- default建議放到末尾
- 無需顯式執(zhí)行break
- fallthrough型宙,可以貫通后續(xù)撬呢,但是不再匹配后續(xù)條件表達(dá)式
- 可用來替換if語句(沒必要,難以閱讀)
for
僅有for一種循環(huán)
- 初始化語句僅被執(zhí)行一次
- 條件表達(dá)式中妆兑,如有函數(shù)調(diào)用魂拦,可能重復(fù)執(zhí)行,最好定義局部變量保存
- for...range...完成數(shù)據(jù)迭代搁嗓,其定義的局部變量會重復(fù)使用
- range會復(fù)制目標(biāo)數(shù)據(jù)芯勘,比如數(shù)組,如果想修改數(shù)組谱姓,可改用數(shù)據(jù)指針或切片類型
- range目標(biāo)表達(dá)式是函數(shù)調(diào)用借尿,也僅被執(zhí)行一次
goto, continue, break
- 使用goto刨晴,先定義標(biāo)簽屉来,區(qū)分大小寫
- break,用于switch, for, select語句狈癞,終止整個語句塊執(zhí)行
- for茄靠, 僅用于for循環(huán),立即進(jìn)入下一輪循環(huán)