第五章知識缺陷
1.c語言中,用非0值表示"真",用0值表示"假"。
2.條件運算子
條件運算子是c語言中唯一的三元運算子
條件表示式: 表示式1 ? 表示式2 : 表示式3
分情況求值時等可以用條件表示式
含義 : 若表示式1的值非0,則該條件表示式的值是表示式2的值,否則是表示式3的值。
4.用於多路選擇的switch語句
一般形式:
switch(表示式) //只能是int型或char型
{
case常量1 : // 常量與case之間至少有1個空格,常量後面是冒號
可執行語句序列1; //常量型別與switch後括號內的表示式型別
……
case常量n :
可執行語句序列n; //case後常量的值必須不同
default :
可執行語句序列n+1;
}
switch語句的執行過程是這樣的 : 首先計算switch後表示式的值,然後將該值依次與case後的常量值進行比較,當他們相等時,執行相應case後面的程式碼段,程式碼執行完畢後,可使用break語句跳出switch語句,如果沒有break語句,程式將依次執行下面的case後的語句,直到遇到switch的右花括號" } "為止。
5.位運算子
位運算子的操作物件只能是char型或int型。
1 ) 按位取反 (1變0,0變1)
2 ) 按位與 (用於對位元組中的某位清零,即兩個運算元中的任意一位為0時,運算結果的對應位就會被置0)
3 ) 按位異或 (用於位元組中的某位置1,即兩個運算元中的任意一位為1時,運算結果的對應位就會被置1)
4 ) 左移位 (x << n表示把x的每一位向左平移n位,右邊的空位補0)
5 ) 右移位 (x >> n表示把x的每一位向右平移n位
當x為有符號數時,左邊的空位補符號位上的值,稱為"算數移位"
當x為無符號數時,左邊空位補0,稱"邏輯移位")