
作者:馮老師,華清遠見教育科技集團講師。
C語言的符號:
關鍵字:
組成了C語言的命令骨干,用來表示特定的功能或運算,是C語言中內置的標志符,不可被用戶重新定義或重名。
int char short long float double signed unsigned void
register extern static auto
if else switch case default while do for continue break return goto
sizeof volatile const
typedefstruct union enum
標識符:
由用戶自定義的符號,用來標志一個函數、變量、別名等特殊含義。
定義規則如下:
1.只能由英文大小寫、數字、下劃線組成。
2.不能以數字開頭。
3.不能與關鍵字重名。
4.長度不能超過256個字符(gcc中的要求,非標準)。
間隔符:
在詞與詞之間添加,方便做詞法分析。
由空格、換行、制表、注釋等組成。
運算符:
用作數據運算。
+ - * / % <<>> ++ --
~ | & ^
! && ||
>>= == <<= !=
. -> [] ()
,
* &
標點:
{} ;,"" ''
C語言的數據:
變量:數值可以變化的值,通常用來臨時保存數據參與運算。
存儲類型數據類型標識符; (其中存儲類型可以不寫,讓編譯器自動識別)
存儲類型數據類型標識符1,標志符2,標識符3 ... ;
常量:固定不變的值,在整個程序運行過程中值不會改變。
數字型常量: 10 20 3.14
字符型常量: 'a' 'b' 'c' '0'
字符串常量: "hello world" "12678"
C語言的語句:
整數型:
char:
大。 一般1B
取值范圍: 有符號:-128 ~ 127
無符號: 0 ~ 255
short:
大。 一般2B;>= 2B <= int
取值范圍:
有符號: -32768 ~ 32767
無符號: 0 ~ 65535
int:
大小: 一般4B,跟機器字長相關,int>= short <= long
取值范圍:
有符號: -2G ~ 2G
無符號:0 ~ 4G
long:
大。 一般4B,跟機器字長相關, long >= int
取值范圍:
有符號: -2G ~ 2G
無符號:0 ~ 4G
浮點型:浮點數按照科學計數法來表示,gcc中遵循IEEE標準。
float:單精度浮點數
大小: 4B
精度: 6 ~ 7 位
范圍: +-38次方
double:雙精度浮點數
大。8B
精度: 15 ~ 16 位
范圍: +-308次方
C語言的運算符:
任何運算都不會更改原操作數的值,自增/自減和賦值除外。
算術運算:
+ - * / % ++ --
關系運算:
>>= <<= == !=
邏輯運算:
&& || !
位運算:
& | ~ ^ >><<
賦值運算:
= += -= *= /= %= &= |= ^=
特殊運算:
() [] . ->,?:
算術運算:
整數 / 整數: 取整
整數 / 浮點數: 除法
浮點 / 浮點: 除法
浮點數不能參與取模運算!
邏輯運算:
真值表:
&&:真 真真
真假假
假真假
假假假
||: 真真真
真假真
假真真
假假假
邏輯運算的短路特性:在邏輯運算中,當左表達式已經可以決定整個表達式的結果時,則右表達式不進行運算。
關系運算:
>>= <<= == !=
位運算:
& | ~ >><< ^