5.3 按位運算符
Turbo C和其它高級語言不同的是它完全支持按位運算符。這與匯編語言的位操作有些相似。
Turbo C中按位運算符有:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
操作符 作用
────────────────────────────
& 位邏輯與
| 位邏輯或
^ 位邏輯異或
- 位邏輯反
>> 右移
<< 左移
━━━━━━━━━━━━━━━━━━━━━━━━━━━━
按位運算是對字節或字中的實際位進行檢測、設置或移位, 它只適用於字符型和整數型變量以及它們的變體, 對其它數據類型不適用。
關系運算和邏輯運算表達式的結果只能是1或0。 而按位運算的結果可以取0或1以外的值。
要注意區別按位運算符和邏輯運算符的不同,例如, 若x=7, 則x&&8 的值為真(兩個非零值相與仍為非零),而x&8的值為0。
移位運算符">>"和"<<"是指將變量中的每一位向右或向左移動, 其通常形式為:
右移: 變量名>>移位的位數
左移: 變量名<<移位的位數
經過移位後,一端的位被"擠掉",而另一端空出的位以0 填補,所以,Turbo C中的移位不是循環移動的。